Interface PackageQuerySession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
- All Known Subinterfaces:
PackageSearchSession
This session provides methods for searching Packages . The
search query is constructed using the PackageQuery . The package
record Type also specifies the record for the package query.
This session defines views that offer differing behaviors for searching.
- federated depot view: searches include packages in depots of which this depot is a ancestor in the depot hierarchy
- isolated depot view: searches are restricted to packages in this depot
- normalized version view: multiple versions of the same package are suppressed
- denormalized version vew: all versions of an installation are returned
- normalized dependency view: supporting installations upon which other installations depend are suppressed
- denormalized dependency view: all dependencies are returned
Packages may have a query record indicated by their respective record
types. The query record is accessed via the PackageQuery .
-
Method Summary
Modifier and TypeMethodDescriptionbooleanTests if this user can performPackagesearches.getDepot()Gets theDepotassociated with this session.Gets theDepotIdassociated with this session.Gets a package query.getPackagesByQuery(PackageQuery packageQuery) Gets a list ofPackagesmatching the given package query.voidA denormalized view returns all dependencies.voidAll versions of the same package are returned.voidFederates the view for methods in this session.voidIsolates the view for methods in this session.voidA normalized view uses a singlePackageto represent a set of package dependencies.voidThe returns from the lookup methods may omit multiple versions of the same package.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
getDepotId
Id getDepotId()Gets theDepotIdassociated with this session.- Returns:
- the
Depot Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getDepot
Gets theDepotassociated with this session.- Returns:
- the
Depotassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canSearchPackages
boolean canSearchPackages()Tests if this user can performPackagesearches. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer search operations to unauthorized users.- Returns:
falseif search methods are not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
useFederatedDepotView
void useFederatedDepotView()Federates the view for methods in this session. A federated view will include packages in depots which are children of this depot in the depot hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedDepotView
void useIsolatedDepotView()Isolates the view for methods in this session. An isolated view restricts searches to this depot only.- Compliance:
mandatory- This method is must be implemented.
-
useNormalizedVersionView
void useNormalizedVersionView()The returns from the lookup methods may omit multiple versions of the same package.- Compliance:
mandatory- This method is must be implemented.
-
useDenormalizedVersionView
void useDenormalizedVersionView()All versions of the same package are returned.- Compliance:
mandatory- This method is must be implemented.
-
useNormalizedDependencyView
void useNormalizedDependencyView()A normalized view uses a singlePackageto represent a set of package dependencies.- Compliance:
mandatory- This method is must be implemented.
-
useDenormalizedDependencyView
void useDenormalizedDependencyView()A denormalized view returns all dependencies.- Compliance:
mandatory- This method is must be implemented.
-
getPackageQuery
PackageQuery getPackageQuery()Gets a package query.- Returns:
- the package query
- Compliance:
mandatory- This method must be implemented.
-
getPackagesByQuery
PackageList getPackagesByQuery(PackageQuery packageQuery) throws OperationFailedException, PermissionDeniedException Gets a list ofPackagesmatching the given package query.- Parameters:
packageQuery- the package query- Returns:
- the returned
PackageList - Throws:
NullArgumentException-packageQueryisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failureUnsupportedException-packageQueryis not of this service- Compliance:
mandatory- This method must be implemented.
-