Interface PackageSearchSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession, PackageQuerySession
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.
getPackagesByQuery() is the basic search method and returns a list
of Packages . A more advanced search may be performed with
getPackagesBySearch() .It accepts a PackageSearch in addition to
the query for the purpose of specifying additional options affecting the
entire search, such as ordering. getPackagesBySearch() returns a
PackageSearchResults that can be used to access the resulting
PackageList or be used to perform a search within the result set
through PackageSearch .
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 TypeMethodDescriptiongetPackageQueryFromInspector(PackageQueryInspector packageQueryInspector) Gets a package query from an inspector.getPackagesBySearch(PackageQuery packageQuery, PackageSearch packageSearch) Gets the search results matching the given search query using the given search.Gets a package search.Gets a package search order.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.Methods inherited from interface PackageQuerySession
canSearchPackages, getDepot, getDepotId, getPackageQuery, getPackagesByQuery, useDenormalizedDependencyView, useDenormalizedVersionView, useFederatedDepotView, useIsolatedDepotView, useNormalizedDependencyView, useNormalizedVersionViewModifier 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.
-
Method Details
-
getPackageSearch
PackageSearch getPackageSearch()Gets a package search.- Returns:
- the package search
- Compliance:
mandatory- This method must be implemented.
-
getPackageSearchOrder
PackageSearchOrder getPackageSearchOrder()Gets a package search order. ThePackageSearchOrderis supplied to aPackageSearchto specify the ordering of results.- Returns:
- the package search order
- Compliance:
mandatory- This method must be implemented.
-
getPackagesBySearch
PackageSearchResults getPackagesBySearch(PackageQuery packageQuery, PackageSearch packageSearch) throws OperationFailedException, PermissionDeniedException Gets the search results matching the given search query using the given search.- Parameters:
packageQuery- the package querypackageSearch- the package search- Returns:
- the returned search results
- Throws:
NullArgumentException-packageQueryorpackageSearchisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failureUnsupportedException-packageSearchorpackageQueryis not of this service- Compliance:
mandatory- This method must be implemented.
-
getPackageQueryFromInspector
Gets a package query from an inspector. The inspector is available from aPackageeSearchResults.- Parameters:
packageQueryInspector- a package query inspector- Returns:
- the package query
- Throws:
NullArgumentException-packageQueryInspectorisnullUnsupportedException-packageQueryInspectoris not of this service- Compliance:
mandatory- This method must be implemented.
-