public interface FamilyLookupSession extends OsidSession
This session provides methods for retrieving Family
objects. The Family
represents a collection of
relationships.
This session defines views that offer differing behaviors when retrieving multiple objects.
Generally, the comparative view should be used for most applications
as it permits operation even if there is data that cannot be accessed. For
example, a browsing application may only need to examine the
Families
it can access, without breaking execution. However, an
assessment may only be useful if all Families
referenced by
it are available, and a test-taking applicationmay sacrifice some
interoperability for the sake of precision.
Modifier and Type | Method and Description |
---|---|
boolean |
canLookupFamilies()
Tests if this user can perform
Family lookups. |
FamilyList |
getFamilies()
Gets all families.
|
FamilyList |
getFamiliesByGenusType(Type familyGenusType)
Gets a
FamilyList corresponding to the given family
genus Type which does not include families of genus
types derived from the specified Type. |
FamilyList |
getFamiliesByIds(IdList familyIds)
Gets a
FamilyList corresponding to the given
IdList. |
FamilyList |
getFamiliesByParentGenusType(Type familyGenusType)
Gets a
FamilyList corresponding to the given family
genus Type and include any additional families with
genus types derived from the specified Type. |
FamilyList |
getFamiliesByProvider(Id resourceId)
Gets a
FamilyList from the given provider. |
FamilyList |
getFamiliesByRecordType(Type familyRecordType)
Gets a
FamilyList containing the given family record
Type. |
Family |
getFamily(Id familyId)
Gets the
Family specified by its Id. |
void |
useComparativeFamilyView()
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 |
usePlenaryFamilyView()
A complete view of the
Family returns is desired. |
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
boolean canLookupFamilies()
Family
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 useComparativeFamilyView()
mandatory
- This method is must be implemented. void usePlenaryFamilyView()
Family
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. Family getFamily(Id familyId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Family
specified by its Id.
In
plenary mode, the exact Id
is found or a
NOT_FOUND
results. Otherwise, the returned Family
may have a different Id
than requested, such as
the case where a duplicate Id
was assigned to a
Family
and retained for compatibilfamilyId
- Id
of the Family
NotFoundException
- familyId
not foundNullArgumentException
- familyId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method is must be implemented. FamilyList getFamiliesByIds(IdList familyIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
FamilyList
corresponding to the given
IdList.
In plenary mode, the returned list contains all of the
families 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 families may be omitted from the list and may present the
elements in any order including returning a unique set.familyIds
- the list of Ids
to retrieve Family list
NotFoundException
- an Id was
not foundNullArgumentException
- familyIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. FamilyList getFamiliesByGenusType(Type familyGenusType) throws OperationFailedException, PermissionDeniedException
FamilyList
corresponding to the given family
genus Type
which does not include families of genus
types derived from the specified Type.
In plenary mode,
the returned list contains all known families or an error results.
Otherwise, the returned list may contain only those families that are
accessible through this session.familyGenusType
- a family genus type Family list
NullArgumentException
- familyGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. FamilyList getFamiliesByParentGenusType(Type familyGenusType) throws OperationFailedException, PermissionDeniedException
FamilyList
corresponding to the given family
genus Type
and include any additional families with
genus types derived from the specified Type.
In plenary
mode, the returned list contains all known families or an error
results. Otherwise, the returned list may contain only those families
that are accessible through this session.familyGenusType
- a family genus type Family list
NullArgumentException
- familyGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. FamilyList getFamiliesByRecordType(Type familyRecordType) throws OperationFailedException, PermissionDeniedException
FamilyList
containing the given family record
Type.
In plenary mode, the returned list contains all
known families or an error results. Otherwise, the returned list may
contain only those families that are accessible through this session.familyRecordType
- a family record type Family list
NullArgumentException
- familyRecordType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. FamilyList getFamiliesByProvider(Id resourceId) throws OperationFailedException, PermissionDeniedException
FamilyList
from the given provider.
In plenary mode, the returned list contains all known families
or an error results. Otherwise, the returned list may contain only
those families that are accessible through this session.resourceId
- a resource Id
Family list
NullArgumentException
- resourceId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. FamilyList getFamilies() throws OperationFailedException, PermissionDeniedException
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.