| Interface | osid.installation.PackageQuerySession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session provides methods for searching  This session defines views that offer differing behaviors for searching. 
  Packages may have a query record indicated by their 
                respective record types. The query record is accessed via the 
                  | ||
| Method | getDepotId | ||
| Description | 
                     Gets the   | ||
| Return | osid.id.Id | the  Depot Id  associated with this session  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getDepot | ||
| Description | 
                     Gets the   | ||
| Return | osid.installation.Depot | the  Depot  associated with this session  | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canSearchPackages | ||
| Description | 
                     Tests if this user can perform   | ||
| Return | boolean |  false  if search methods are not authorized,  true 
 otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | useFederatedDepotView | ||
| Description | 
                     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. | |
| Method | useIsolatedDepotView | ||
| Description | 
                     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. | |
| Method | useNormalizedVersionView | ||
| Description | 
                     The returns from the lookup methods may omit multiple versions of the same package.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useDenormalizedVersionView | ||
| Description | 
                     All versions of the same package are returned.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useNormalizedDependencyView | ||
| Description | 
                     A normalized view uses a single   | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useDenormalizedDependencyView | ||
| Description | 
                     A denormalized view returns all dependencies.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | getPackageQuery | ||
| Description | 
                     Gets a package query.  | ||
| Return | osid.installation.PackageQuery | the package query | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getPackagesByQuery | ||
| Description | 
                     Gets a list of   | ||
| Parameters | osid.installation.PackageQuery | packageQuery | the package query | 
| Return | osid.installation.PackageList | the returned  PackageList   | |
| Errors | NULL_ARGUMENT |  packageQuery  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| UNSUPPORTED |  packageQuery  is not of this service  |                 ||
| Compliance | mandatory | This method must be implemented. | |