Interface CompetencyLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface CompetencyLookupSession extends OsidSession

This session provides methods for retrieving premade Competencies . The Competency represents a set of efforts.

This session defines views that offer differing behaviors when retrieving multiple objects.

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

Generally, the comparative view should be used for most applications as it permits operation even if there is data that cannot be accessed. The methods useFederatedFoundryView() and useIsolatedFoundryView() behave as a radio group and one should be selected before invoking the methods in this session.

  • Method Details

    • getFoundryId

      Id getFoundryId()
      Gets the Foundry Id associated with this session.
      Returns:
      the Foundry Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getFoundry

      Gets the Foundry associated with this session.
      Returns:
      the foundry
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canLookupCompetencies

      boolean canLookupCompetencies()
      Tests if this user can perform Competency 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.
      Returns:
      false if lookup methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeCompetencyView

      void useComparativeCompetencyView()
      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.
      Compliance:
      mandatory - This method is must be implemented.
    • usePlenaryCompetencyView

      void usePlenaryCompetencyView()
      A complete view of the Competency 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.
      Compliance:
      mandatory - This method is must be implemented.
    • useFederatedFoundryView

      void useFederatedFoundryView()
      Federates the view for methods in this session. A federated view will include competencies in foundries which are children of this foundry in the foundry hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedFoundryView

      void useIsolatedFoundryView()
      Isolates the view for methods in this session. An isolated view restricts lookups to this foundry only.
      Compliance:
      mandatory - This method is must be implemented.
    • getCompetency

      Gets the Competency specified by its Id . In plenary mode, the exact Id is found or a NOT_FOUND results. Otherwise, the returned Competency may have a different Id than requested, such as the case where a duplicate Id was assigned to a Competency and retained for compatibility.
      Parameters:
      competencyId - Id of the Competency
      Returns:
      the competency
      Throws:
      NotFoundException - competencyId not found
      NullArgumentException - competencyId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method is must be implemented.
    • getCompetenciesByIds

      Gets a CompetencyList corresponding to the given IdList .In plenary mode, the returned list contains all of the competencies 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 Competencies may be omitted from the list and may present the elements in any order including returning a unique set.
      Parameters:
      competencyIds - the list of Ids to retrieve
      Returns:
      the returned Competency list
      Throws:
      NotFoundException - an Id was not found
      NullArgumentException - competencyIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCompetenciesByGenusType

      CompetencyList getCompetenciesByGenusType(Type competencyGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a CompetencyList corresponding to the given competency genus Type which does not include competencies of genus types derived from the specified Type .In plenary mode, the returned list contains all known competencies or an error results. Otherwise, the returned list may contain only those competencies that are accessible through this session.
      Parameters:
      competencyGenusType - a competency genus type
      Returns:
      the returned Competency list
      Throws:
      NullArgumentException - competencyGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCompetenciesByParentGenusType

      CompetencyList getCompetenciesByParentGenusType(Type competencyGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a CompetencyList corresponding to the given competency genus Type and include any additional competencies with genus types derived from the specified Type .In plenary mode, the returned list contains all known competencies or an error results. Otherwise, the returned list may contain only those competencies that are accessible through this session.
      Parameters:
      competencyGenusType - a competency genus type
      Returns:
      the returned Competency list
      Throws:
      NullArgumentException - competencyGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCompetenciesByRecordType

      CompetencyList getCompetenciesByRecordType(Type competencyRecordType) throws OperationFailedException, PermissionDeniedException
      Gets a CompetencyList containing the given competency record Type .In plenary mode, the returned list contains all known competencies or an error results. Otherwise, the returned list may contain only those competencies that are accessible through this session.
      Parameters:
      competencyRecordType - a competency record type
      Returns:
      the returned Competency list
      Throws:
      NullArgumentException - competencyRecordType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCompetencies

      Gets all Competencies . In plenary mode, the returned list contains all known competencies or an error results. Otherwise, the returned list may contain only those competencies that are accessible through this session.
      Returns:
      a list of Competencies
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.