Interface SupersedingEventEnablerAdminSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface SupersedingEventEnablerAdminSession extends OsidSession

This session creates and removes superseding event enablers. The data for create and update is provided via the SupersedingEventEnablerForm .

  • Method Details

    • getCalendarId

      Id getCalendarId()
      Gets the Calendar Id associated with this session.
      Returns:
      the Calendar Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getCalendar

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

      boolean canCreateSupersedingEventEnabler()
      Tests if this user can create superseding event enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known creating a SupersedingEventEnabler 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 SupersedingEventEnabler creation is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • canCreateSupersedingEventEnablerWithRecordTypes

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

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

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

      boolean canUpdateSupersedingEventEnablers()
      Tests if this user can update superseding event enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known updating a SupersedingEventEnabler 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 SupersedingEventEnabler modification is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getSupersedingEventEnablerFormForUpdate

      SupersedingEventEnablerForm getSupersedingEventEnablerFormForUpdate(Id supersedingEventEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the superseding event enabler form for updating an existing superseding event enabler. A new superseding event enabler form should be requested for each update transaction.
      Parameters:
      supersedingEventEnablerId - the Id of the SupersedingEventEnabler
      Returns:
      the superseding event enabler form
      Throws:
      NotFoundException - supersedingEventEnablerId is not found
      NullArgumentException - supersedingEventEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • updateSupersedingEventEnabler

      void updateSupersedingEventEnabler(SupersedingEventEnablerForm supersedingEventEnablerForm) throws OperationFailedException, PermissionDeniedException
      Updates an existing superseding event enabler.
      Parameters:
      supersedingEventEnablerForm - the form containing the elements to be updated
      Throws:
      IllegalStateException - supersedingEventEnablerForm already used in an update transaction
      InvalidArgumentException - the form contains an invalid value
      NullArgumentException - supersedingEventEnablerForm is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - supersedingEventEnablerForm did not originate from getSupersedingEventFormForUpdate()
      Compliance:
      mandatory - This method must be implemented.
    • canDeleteSupersedingEventEnablers

      boolean canDeleteSupersedingEventEnablers()
      Tests if this user can delete superseding event enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting a SupersedingEventEnabler 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 SupersedingEventEnabler deletion is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • deleteSupersedingEventEnabler

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

      boolean canManageSupersedingEventEnablerAliases()
      Tests if this user can manage Id aliases for superseding event 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 SupersedingEventEnabler aliasing is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • aliasSupersedingEventEnabler

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