public interface CategoryLookupSession extends OsidSession
This session defines methods for retrieving categories.
This lookup session defines several views:
Categories
with the CategoryAdminSession.
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.
Modifier and Type | Method and Description |
---|---|
boolean |
canLookupCategories()
Tests if this user can perform
Category lookups. |
Business |
getBusiness()
Gets the
Business associated with this session. |
Id |
getBusinessId()
Gets the
Business Id associated with
this session. |
CategoryList |
getCategories()
Gets all
Categories. |
CategoryList |
getCategoriesByGenusType(Type categoryGenusType)
Gets a
CategoryList corresponding to the given category
genus Type which does not include categories of types
derived from the specified Type. |
CategoryList |
getCategoriesByIds(IdList categoryIds)
Gets a
CategoryList corresponding to the given
IdList. |
CategoryList |
getCategoriesByParentGenusType(Type categoryGenusType)
Gets a
CategoryList corresponding to the given category
genus Type and include any additional categories with
genus types derived from the specified Type. |
CategoryList |
getCategoriesByRecordType(Type categoryRecordType)
Gets a
CategoryList containing the given category
record Type. |
Category |
getCategory(Id categoryId)
Gets the
Category specified by its Id. |
void |
useComparativeCategoryView()
The returns from the lookup methods may omit or translate elements
based on this session, such as authorization, and not result in an
error.
|
void |
useFederatedBusinessView()
Federates the view for methods in this session.
|
void |
useIsolatedBusinessView()
Isolates the view for methods in this session.
|
void |
usePlenaryCategoryView()
A complete view of the
Category returns is desired. |
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
Id getBusinessId()
Business
Id
associated with
this session. Business Id
associated with this sessionmandatory
- This method must be implemented. Business getBusiness() throws OperationFailedException, PermissionDeniedException
Business
associated with this session.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. boolean canLookupCategories()
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. false
if lookup methods are not authorized,
true
otherwisemandatory
- This method must be implemented. void useComparativeCategoryView()
mandatory
- This method is must be implemented. void usePlenaryCategoryView()
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.mandatory
- This method is must be implemented. void useFederatedBusinessView()
mandatory
- This method is must be implemented. void useIsolatedBusinessView()
mandatory
- This method is must be implemented. Category getCategory(Id categoryId) throws NotFoundException, OperationFailedException, PermissionDeniedException
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.categoryId
- the Id
of the Category
to retrieve Category
NotFoundException
- no Category
found
with the given Id
NullArgumentException
- categoryId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. CategoryList getCategoriesByIds(IdList categoryIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
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.categoryIds
- the list of Ids
to retrieve Category
listNotFoundException
- an Id was
not foundNullArgumentException
- categoryIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. CategoryList getCategoriesByGenusType(Type categoryGenusType) throws OperationFailedException, PermissionDeniedException
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.categoryGenusType
- a category genus type Category
listNullArgumentException
- categoryGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. CategoryList getCategoriesByParentGenusType(Type categoryGenusType) throws OperationFailedException, PermissionDeniedException
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.categoryGenusType
- a category genus type Category
listNullArgumentException
- categoryGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. CategoryList getCategoriesByRecordType(Type categoryRecordType) throws OperationFailedException, PermissionDeniedException
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.categoryRecordType
- a category record type Category
listNullArgumentException
- categoryRecordType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. CategoryList getCategories() throws OperationFailedException, PermissionDeniedException
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. Categories
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.