Interface ContactEnablerRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface ContactEnablerRuleApplicationSession extends OsidSession

This session provides methods to apply ContactEnablers to Contacts . A Contact with multiple ContactEnablers means any positive rule evaluation across the enablers result in an effective Contact .

  • Method Details

    • getAddressBookId

      Id getAddressBookId()
      Gets the AddressBook Id associated with this session.
      Returns:
      the AddressBook Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getAddressBook

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

      boolean canAssignContactEnablers()
      Tests if this user can alter contact enabler/contact mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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 mapping is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • assignContactEnablerToContact

      void assignContactEnablerToContact(Id contactEnablerId, Id contactId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing ContactEnabler to a Contact .
      Parameters:
      contactEnablerId - the Id of the ContactEnabler
      contactId - the Id of the Contact
      Throws:
      AlreadyExistsException - contactEnablerId is already applied to contactId
      NotFoundException - contactEnablerId or contactId not found
      NullArgumentException - contactEnablerId or contactId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignContactEnablerFromContact

      void unassignContactEnablerFromContact(Id contactEnablerId, Id contactId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes a ContactEnabler from a Contact .
      Parameters:
      contactEnablerId - the Id of the ContactEnabler
      contactId - the Id of the Contact
      Throws:
      NotFoundException - contactEnablerId or contactId not found or contactEnablerId is not applied to contactId
      NullArgumentException - contactEnablerId or contactId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSequenceContactEnablers

      boolean canSequenceContactEnablers()
      Tests if this user can order ContactEnablers . A return of true does not guarantee successful authorization. A return of false indicates that it is known sequencing operations will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer sequencing operations to an unauthorized user.
      Returns:
      false if ContactEnabler ordering is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • moveContactEnablerAhead

      void moveContactEnablerAhead(Id contactEnablerId, Id contactId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders contact enablers for a contact by moving the specified contact enabler in front of a reference contact enabler.
      Parameters:
      contactEnablerId - the Id of a ContactEnabler
      contactId - the Id of a Contact
      referenceId - the reference contact enabler Id
      Throws:
      NotFoundException - contactEnabelrId, contactId , or referenceId not found or, contactEnablerId or referenceId not related to contactId
      NullArgumentException - contactEnablerId, contactId , or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • moveContactEnablerBehind

      void moveContactEnablerBehind(Id contactEnablerId, Id contactId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders contact enablers for a contact by moving the specified contact enabler behind a reference contact enabler.
      Parameters:
      contactEnablerId - the Id of a ContactEnabler
      contactId - the Id of a Contact
      referenceId - the reference contact enabler Id
      Throws:
      NotFoundException - contactEnabelrId, contactId , or referenceId not found or, contactEnablerId or referenceId not related to contactId
      NullArgumentException - contactEnablerId, contactId , or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • orderContactEnablers

      void orderContactEnablers(Id[] contactEnablerId, Id contactId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders a set of contact enablers for a contact.
      Parameters:
      contactEnablerId - the Ids for a set of ContactEnablers
      contactId - the Id of a Contact
      Throws:
      NotFoundException - contactId not found or, a contactEnablerId not related to contactId
      NullArgumentException - contactEnablerIds or contactId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.