public interface ProfileLookupSession extends OsidSession
This session provides methods for retrieving Profile
objects. The Profile
represents a collection of
ProfileItems
and ProfileEntries.
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
Profiles
it can access, without breaking execution. However, an
administrative application may require all Profile
elements
to be available.
Profiles may have an additional records indicated by their respective
record types. The record may not be accessed through a cast of the
Profile.
Modifier and Type | Method and Description |
---|---|
boolean |
canLookupProfiles()
Tests if this user can perform
Profile lookups. |
Profile |
getProfile(Id profileId)
Gets the
Profile specified by its Id. |
ProfileList |
getProfiles()
Gets all
Profiles. |
ProfileList |
getProfilesByGenusType(Type profileGenusType)
Gets a
ProfileList corresponding to the given profile
genus Type which does not include profiles of types
derived from the specified Type. |
ProfileList |
getProfilesByIds(IdList profileIds)
Gets a
ProfileList corresponding to the given
IdList. |
ProfileList |
getProfilesByParentGenusType(Type profileGenusType)
Gets a
ProfileList corresponding to the given profile
genus Type and include any additional profiles with
genus types derived from the specified Type. |
ProfileList |
getProfilesByProvider(Id resourceId)
Gets a
ProfileList for the given provider. |
ProfileList |
getProfilesByRecordType(Type profileRecordType)
Gets a
ProfileList containing the given profile record
Type. |
void |
useComparativeProfileView()
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 |
usePlenaryProfileView()
A complete view of the
Profile returns is desired. |
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
boolean canLookupProfiles()
Profile
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 opt not to offer lookup operations to
unauthorized users. false
if lookup methods are not authorized,
true
otherwisemandatory
- This method must be implemented. void useComparativeProfileView()
mandatory
- This method is must be implemented. void usePlenaryProfileView()
Profile
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. Profile getProfile(Id profileId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Profile
specified by its Id.
In
plenary mode, the exact Id
is found or a
NOT_FOUND
results. Otherwise, the returned Profile
may have a different Id
than requested, such as
the case where a duplicate Id
was assigned to a
Profile
and retained for compatibility.profileId
- Id
of the Profile
NotFoundException
- profileId
not foundNullArgumentException
- profileId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method is must be implemented. ProfileList getProfilesByIds(IdList profileIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
ProfileList
corresponding to the given
IdList.
In plenary mode, the returned list contains all of the
profiles 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 Profile
objects may be omitted from the
list and may present the elements in any order including returning a
unique set.profileIds
- the list of Ids
to retrieve Profile
listNotFoundException
- an Id was
not foundNullArgumentException
- profileIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. ProfileList getProfilesByGenusType(Type profileGenusType) throws OperationFailedException, PermissionDeniedException
ProfileList
corresponding to the given profile
genus Type
which does not include profiles of types
derived from the specified Type.
In plenary mode, the
returned list contains all known profiles or an error results.
Otherwise, the returned list may contain only those profiles that are
accessible through this session.profileGenusType
- a profile genus type Profile
listNullArgumentException
- profileGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. ProfileList getProfilesByParentGenusType(Type profileGenusType) throws OperationFailedException, PermissionDeniedException
ProfileList
corresponding to the given profile
genus Type
and include any additional profiles with
genus types derived from the specified Type.
In plenary
mode, the returned list contains all known profiles or an error
results. Otherwise, the returned list may contain only those profiles
that are accessible through this session.profileGenusType
- a profile genus type Profile
listNullArgumentException
- profileGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. ProfileList getProfilesByRecordType(Type profileRecordType) throws OperationFailedException, PermissionDeniedException
ProfileList
containing the given profile record
Type.
In plenary mode, the returned list contains all
known profiles or an error results. Otherwise, the returned list may
contain only those profiles that are accessible through this session.profileRecordType
- a profile record type Profile
listNullArgumentException
- profileRecordType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. ProfileList getProfilesByProvider(Id resourceId) throws OperationFailedException, PermissionDeniedException
ProfileList
for the given provider. In plenary
mode, the returned list contains all known profiles or an error
results. Otherwise, the returned list may contain only those profiles
that are accessible through this session.resourceId
- a resource Id
Profile
listNullArgumentException
- resourceId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. ProfileList getProfiles() throws OperationFailedException, PermissionDeniedException
Profiles.
In plenary mode, the returned list
contains all known profiles or an error results. Otherwise, the
returned list may contain only those profiles that are accessible
through this session. ProfileList
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.