OSID Logo
OSID Specifications
billing package
Version 3.0.0
Release Candidate Preview
Interfaceosid.billing.CategoryLookupSession
Implementsosid.OsidSession
Description

This session defines methods for retrieving categories.

This lookup session defines several views:

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete result set or is an error condition
  • isolated business view: All category methods in this session operate, retrieve and pertain to categories defined explicitly in the current business. Using an isolated view is useful for managing Categories with the CategoryAdminSession.
  • federated business view: All category lookup methods in this session operate, retrieve and pertain to all categories defined in this business and any other categories implicitly available in this business through business inheritence.

The methods useFederatedBusinessView() and useIsolatedBusinessView() behave as a radio group and one should be selected before invoking any lookup methods.

Categories may have an additional records indicated by their respective record types. The record may not be accessed through a cast of the Category.

MethodgetBusinessId
Description

Gets the Business Id associated with this session.

Returnosid.id.Idthe Business Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetBusiness
Description

Gets the Business associated with this session.

Returnosid.billing.Businessthe business
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanLookupCategories
Description

Tests if this user can perform Category lookups. 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 a PERMISSION_DENIED. This is intended as a hint to an application that may not offer lookup operations to unauthorized users.

Returnboolean false if lookup methods are not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoduseComparativeCategoryView
Description

The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.

CompliancemandatoryThis method is must be implemented.
MethodusePlenaryCategoryView
Description

A complete view of the Category returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.

CompliancemandatoryThis method is must be implemented.
MethoduseFederatedBusinessView
Description

Federates the view for methods in this session. A federated view will include categories in catalogs which are children of this catalog in the business hierarchy.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedBusinessView
Description

Isolates the view for methods in this session. An isolated view restricts retrievals to this business only.

CompliancemandatoryThis method is must be implemented.
MethodgetCategory
Description

Gets the Category specified by its Id. In plenary mode, the exact Id is found or a NOT_FOUND results. Otherwise, the returned Category may have a different Id than requested, such as the case where a duplicate Id was assigned to a Category and retained for compatibility.

Parametersosid.id.IdcategoryIdthe Id of the Category to retrieve
Returnosid.billing.Categorythe returned Category
ErrorsNOT_FOUNDno Category found with the given Id
NULL_ARGUMENT categoryId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCategoriesByIds
Description

Gets a CategoryList corresponding to the given IdList. In plenary mode, the returned list contains all of the categories specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Categories may be omitted from the list and may present the elements in any order including returning a unique set.

Parametersosid.id.IdListcategoryIdsthe list of Ids to retrieve
Returnosid.billing.CategoryListthe returned Category list
ErrorsNOT_FOUNDan Id was not found
NULL_ARGUMENT categoryIds is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCategoriesByGenusType
Description

Gets a CategoryList corresponding to the given category genus Type which does not include categories of types derived from the specified Type. In plenary mode, the returned list contains all known categories or an error results. Otherwise, the returned list may contain only those categories that are accessible through this session.

Parametersosid.type.TypecategoryGenusTypea category genus type
Returnosid.billing.CategoryListthe returned Category list
ErrorsNULL_ARGUMENT categoryGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCategoriesByParentGenusType
Description

Gets a CategoryList corresponding to the given category genus Type and include any additional categories with genus types derived from the specified Type. In plenary mode, the returned list contains all known categories or an error results. Otherwise, the returned list may contain only those categories that are accessible through this session.

Parametersosid.type.TypecategoryGenusTypea category genus type
Returnosid.billing.CategoryListthe returned Category list
ErrorsNULL_ARGUMENT categoryGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCategoriesByRecordType
Description

Gets a CategoryList containing the given category record Type. In plenary mode, the returned list contains all known categories or an error results. Otherwise, the returned list may contain only those categories that are accessible through this session.

Parametersosid.type.TypecategoryRecordTypea category record type
Returnosid.billing.CategoryListthe returned Category list
ErrorsNULL_ARGUMENT categoryRecordType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetCategories
Description

Gets all Categories. In plenary mode, the returned list contains all known categories or an error results. Otherwise, the returned list may contain only those categories that are accessible through this session.

Returnosid.billing.CategoryLista list of Categories
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.