public interface AgencyLookupSession extends OsidSession
This session provides methods for retrieving  Agency  
  objects. The  Agency  represents a collection of  
  Agents.  
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  
  Agencies  it can access, without breaking execution. However, an 
  administrative application may require all  Agency  elements 
  to be available. 
 Agencies may have an additional records indicated by their respective 
  record types. The record may not be accessed through a cast of the  
  Agency.  
| Modifier and Type | Method and Description | 
|---|---|
| boolean | canLookupAgencies()Tests if this user can perform   Agency lookups. | 
| AgencyList | getAgencies()Gets all   Agencies. | 
| AgencyList | getAgenciesByGenusType(Type agencyGenusType)Gets an   AgencyList corresponding to the given agency 
  genus Type which does not include agencies of types 
  derived from the specified Type. | 
| AgencyList | getAgenciesByIds(IdList agencyIds)Gets an   AgencyList corresponding to the given 
  IdList. | 
| AgencyList | getAgenciesByParentGenusType(Type agencyGenusType)Gets an   AgencyList corresponding to the given agency 
  genus Type and include any additional agencies with 
  genus types derived from the specified Type. | 
| AgencyList | getAgenciesByProvider(Id resourceId)Gets an   AgencyList from the given provider. | 
| AgencyList | getAgenciesByRecordType(Type agencyRecordType)Gets an   AgencyList containing the given agency record Type. | 
| Agency | getAgency(Id agencyId)Gets the   Agency specified by its Id. | 
| void | useComparativeAgencyView()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 | usePlenaryAgencyView()A complete view of the   Agency returns is desired. | 
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionscloseboolean canLookupAgencies()
 Agency  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 useComparativeAgencyView()
mandatory - This method is must be implemented. void usePlenaryAgencyView()
 Agency  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. Agency getAgency(Id agencyId) throws NotFoundException, OperationFailedException, PermissionDeniedException
 Agency  specified by its  Id.  In 
  plenary mode, the exact  Id  is found or a  
  NOT_FOUND  results. Otherwise, the returned  Agency 
   may have a different  Id  than requested, such as 
  the case where a duplicate  Id  was assigned to an  
  Agency  and retained for compatibility.agencyId -  Id  of the  Agency NotFoundException -  agencyId  not foundNullArgumentException -  agencyId  is 
           null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method is must be implemented. AgencyList getAgenciesByIds(IdList agencyIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
 AgencyList  corresponding to the given  
  IdList.  In plenary mode, the returned list contains all of the 
  agencies 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  Agency  objects may be omitted from the 
  list and may present the elements in any order including returning a 
  unique set.agencyIds - a list of agency  Ids  Agency  listNotFoundException - an  Id was  not foundNullArgumentException -  agencyIds  is 
           null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. AgencyList getAgenciesByGenusType(Type agencyGenusType) throws OperationFailedException, PermissionDeniedException
 AgencyList  corresponding to the given agency 
  genus  Type  which does not include agencies of types 
  derived from the specified  Type.  In plenary mode, the 
  returned list contains all known agencies or an error results. 
  Otherwise, the returned list may contain only those agencies that are 
  accessible through this session.agencyGenusType - an agency genus type Agency  listNullArgumentException -  agencyGenusType  
          is  null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. AgencyList getAgenciesByParentGenusType(Type agencyGenusType) throws OperationFailedException, PermissionDeniedException
 AgencyList  corresponding to the given agency 
  genus  Type  and include any additional agencies with 
  genus types derived from the specified  Type.  In plenary 
  mode, the returned list contains all known agencies or an error 
  results. Otherwise, the returned list may contain only those agencies 
  that are accessible through this session.agencyGenusType - an agency genus type Agency  listNullArgumentException -  agencyGenusType  
          is  null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. AgencyList getAgenciesByRecordType(Type agencyRecordType) throws OperationFailedException, PermissionDeniedException
 AgencyList  containing the given agency record 
   Type.  In plenary mode, the returned list contains all 
  known agencies or an error results. Otherwise, the returned list may 
  contain only those agencies that are accessible through this session.agencyRecordType - an agency record type Agency  listNullArgumentException -  agencyRecordType  
          is  null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. AgencyList getAgenciesByProvider(Id resourceId) throws OperationFailedException, PermissionDeniedException
 AgencyList  from the given provider.  
   In plenary mode, the returned list contains all known agencies 
  or an error results. Otherwise, the returned list may contain only 
  those agencies that are accessible through this session.resourceId - a resource  Id  Agency  listNullArgumentException -  resourceId  is 
           null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. AgencyList getAgencies() throws OperationFailedException, PermissionDeniedException
 Agencies.  In plenary mode, the returned list 
  contains all known agencies or an error results. Otherwise, the 
  returned list may contain only those agencies that are accessible 
  through this session. AgencyList OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented.