Interface ProfileEntryEnablerAdminSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface ProfileEntryEnablerAdminSession extends OsidSession

This session creates and removes profile entry enablers. The data for create and update is provided via the ProfileEntryEnablerForm.

  • 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
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canCreateProfileEntryEnabler

      boolean canCreateProfileEntryEnabler()
      Tests if this user can create profile entry enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known creating a ProfileEntryEnabler will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer create operations to an unauthorized user.
      Returns:
      false if ProfileEntryEnabler creation is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • canCreateProfileEntryEnablerWithRecordTypes

      boolean canCreateProfileEntryEnablerWithRecordTypes(Type[] profileEntryEnablerRecordTypes)
      Tests if this user can create a single ProfileEntryEnabler using the desired record types. While ProfileRulesManager.getProfileEntryEnablerRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific ProfileEntryEnabler. Providing an empty array tests if a ProfileEntryEnabler can be created with no records.
      Parameters:
      profileEntryEnablerRecordTypes - array of profile entry enabler types
      Returns:
      true if ProfileEntryEnabler creation using the specified record Types is supported, false otherwise
      Throws:
      NullArgumentException - profileEntryEnablerRecordTypes is null
      Compliance:
      mandatory - This method must be implemented.
    • getProfileEntryEnablerFormForCreate

      ProfileEntryEnablerForm getProfileEntryEnablerFormForCreate(Type[] profileEntryEnablerRecordTypes) throws OperationFailedException, PermissionDeniedException
      Gets the profile entry enabler form for creating new profile entry enablers. A new form should be requested for each create transaction.
      Parameters:
      profileEntryEnablerRecordTypes - array of profile entry enabler types
      Returns:
      the profile entry enabler form
      Throws:
      NullArgumentException - profileEntryEnablerRecordTypes is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - unabel to get form for requested record types
      Compliance:
      mandatory - This method must be implemented.
    • createProfileEntryEnabler

      ProfileEntryEnabler createProfileEntryEnabler(ProfileEntryEnablerForm profileEntryEnablerForm) throws OperationFailedException, PermissionDeniedException
      Creates a new ProfileEntryEnabler.
      Parameters:
      profileEntryEnablerForm - the form for this ProfileEntryEnabler
      Returns:
      the new ProfileEntryEnabler
      Throws:
      IllegalStateException - profileEntryEnablerForm already used in a create transaction
      InvalidArgumentException - one or more of the form elements is invalid
      NullArgumentException - profileEntryEnablerForm is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - profileEntryEnablerForm did not originate from getProfileEntryEnablerFormForCreate()
      Compliance:
      mandatory - This method must be implemented.
    • canUpdateProfileEntryEnablers

      boolean canUpdateProfileEntryEnablers()
      Tests if this user can update profile entry enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known updating a ProfileEntryEnabler will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer update operations to an unauthorized user.
      Returns:
      false if ProfileEntryEnabler modification is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getProfileEntryEnablerFormForUpdate

      ProfileEntryEnablerForm getProfileEntryEnablerFormForUpdate(Id profileEntryEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the profile entry enabler form for updating an existing profile entry enabler. A new profile entry enabler form should be requested for each update transaction.
      Parameters:
      profileEntryEnablerId - the Id of the ProfileEntryEnabler
      Returns:
      the profile entry enabler form
      Throws:
      NotFoundException - profileEntryEnablerId is not found
      NullArgumentException - profileEntryEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • updateProfileEntryEnabler

      void updateProfileEntryEnabler(ProfileEntryEnablerForm profileEntryEnablerForm) throws OperationFailedException, PermissionDeniedException
      Updates an existing profile entry enabler.
      Parameters:
      profileEntryEnablerForm - the form containing the elements to be updated
      Throws:
      IllegalStateException - profileEntryEnablerForm already used in an upate transaction
      InvalidArgumentException - the form contains an invalid value
      NullArgumentException - profileEntryEnablerForm is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - profileEntryEnablerForm did not originate from getProfileEntryEnablerFormForUpdate()
      Compliance:
      mandatory - This method must be implemented.
    • canDeleteProfileEntryEnablers

      boolean canDeleteProfileEntryEnablers()
      Tests if this user can delete profile entry enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting a ProfileEntryEnabler will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer delete operations to an unauthorized user.
      Returns:
      false if ProfileEntryEnabler deletion is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • deleteProfileEntryEnabler

      void deleteProfileEntryEnabler(Id profileEntryEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Deletes a ProfileEntryEnabler.
      Parameters:
      profileEntryEnablerId - the Id of the ProfileEntryEnabler to remove
      Throws:
      NotFoundException - profileEntryEnablerId not found
      NullArgumentException - profileEntryEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canManageProfileEntryEnablerAliases

      boolean canManageProfileEntryEnablerAliases()
      Tests if this user can manage Id aliases for profile entry enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.
      Returns:
      false if ProfileEntryEnabler aliasing is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • aliasProfileEntryEnabler

      void aliasProfileEntryEnabler(Id profileEntryEnablerId, Id aliasId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an Id to a ProfileEntryEnabler for the purpose of creating compatibility. The primary Id of the ProfileEntryEnabler is determined by the provider. The new Id performs as an alias to the primary Id. If the alias is a pointer to another profile entry enabler. it is reassigned to the given profile entry enabler Id.
      Parameters:
      profileEntryEnablerId - the Id of a ProfileEntryEnabler
      aliasId - the alias Id
      Throws:
      AlreadyExistsException - aliasId is already assigned
      NotFoundException - profileEntryEnablerId not found
      NullArgumentException - profileEntryEnablerId or aliasId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.