Interface ProfileEntryQuerySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
All Known Subinterfaces:
ProfileEntrySearchSession

public interface ProfileEntryQuerySession extends OsidSession

This session provides methods for searching ProfileEntries . The search query is constructed using the ProfileEntryQuery .

This session defines views that offer differing behaviors for searching.

  • federated profile view: searches include profile entries in Profiles of which this profile is an ancestor in the profile hierarchy
  • isolated profile view: searches are restricted to entries in this Profile
  • Method Details

    • getProfileId

      Id getProfileId()
      Gets the Profile Id associated with this session.
      Returns:
      the Profile Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getProfile

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

      boolean canSearchProfileEntries()
      Tests if this user can perform profile entry searches. 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 search operations to unauthorized users.
      Returns:
      false if search methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useFederatedProfileView

      void useFederatedProfileView()
      Federates the view for methods in this session. A federated view will include profile entries in profiles which are children of this profile in the profile hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedProfileView

      void useIsolatedProfileView()
      Isolates the view for methods in this session. An isolated view restricts searches to this profile only.
      Compliance:
      mandatory - This method is must be implemented.
    • useImplicitProfileEntryView

      void useImplicitProfileEntryView()
      Sets the view for methods in this session to implicit profile entry. An implicit view will include entries derived from other profile entries as a result of the ProfileItem or Resource hierarchies. This method is the opposite of explicitProfileEntryView() .
      Compliance:
      mandatory - This method is must be implemented.
    • useExplicitProfileEntryView

      void useExplicitProfileEntryView()
      Sets the view for methods in this session to explicit proffile entries. An explicit view includes only those entries that were explicitly defined and not implied. This method is the opposite of implicitProfileEntryView() .
      Compliance:
      mandatory - This method is must be implemented.
    • getProfileEntryQuery

      ProfileEntryQuery getProfileEntryQuery()
      Gets a profile entry query.
      Returns:
      the profile entry query
      Compliance:
      mandatory - This method must be implemented.
    • getProfileEntriesByQuery

      ProfileEntryList getProfileEntriesByQuery(ProfileEntryQuery profileEntryQuery) throws OperationFailedException, PermissionDeniedException
      Gets a list of ProfileEntries matching the given query
      Parameters:
      profileEntryQuery - the profile entry query
      Returns:
      the returned ProfileEntryList
      Throws:
      NullArgumentException - profileEntryQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - profileEntryQuery is not of this service
      Compliance:
      mandatory - This method must be implemented.