OSID Logo
OSID Specifications
control package
Version 3.0.0
Release Candidate Preview
Interfaceosid.control.ActionGroupAdminSession
Implementsosid.OsidSession
Description

This session creates, updates, and deletes ActionGroups. The data for create and update is provided by the consumer via the form object. OsidForms are requested for each create or update and may not be reused.

Create and update operations differ in their usage. To create an ActionGroup, an ActionGroupForm is requested using getActionGroupFormForCreate() specifying the desired record Types or none if no record Types are needed. The returned ActionGroupForm will indicate that it is to be used with a create operation and can be used to examine metdata or validate data prior to creation. Once the ActionGroupForm is submiited to a create operation, it cannot be reused with another create operation unless the first operation was unsuccessful. Each ActionGroupForm corresponds to an attempted transaction.

For updates, ActionGroupForms are requested to the ActionGroup Id that is to be updated using getActionGroupFormForUpdate(). Similarly, the ActionGroupForm has metadata about the data that can be updated and it can perform validation before submitting the update. The ActionGroupForm can only be used once for a successful update and cannot be reused.

The delete operations delete ActionGroups. To unmap an ActionGroup from the current System, the ActionGroupSystemAssignmentSession should be used. These delete operations attempt to remove the ActionGroup itself thus removing it from all known System catalogs.

This session includes an Id aliasing mechanism to assign an external Id to an internally assigned Id.

MethodgetSystemId
Description

Gets the System Id associated with this session.

Returnosid.id.Idthe System Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetSystem
Description

Gets the System associated with this session.

Returnosid.control.Systemthe system
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanCreateActionGroups
Description

Tests if this user can create ActionGroups. A return of true does not guarantee successful authorization. A return of false indicates that it is known creating an ActionGroup 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.

Returnboolean false if ActionGroup creation is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanCreateActionGroupWithRecordTypes
Description

Tests if this user can create a single ActionGroup using the desired record types. While ControlManager.getActionGroupRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific ActionGroup. Providing an empty array tests if an ActionGroup can be created with no records.

Parametersosid.type.Type[]actionGroupRecordTypesarray of action group record types
Returnboolean true if ActionGroup creation using the specified record Types is supported, false otherwise
ErrorsNULL_ARGUMENT actionGroupRecordTypes is null
CompliancemandatoryThis method must be implemented.
MethodgetActionGroupFormForCreate
Description

Gets the action group form for creating new action groups. A new form should be requested for each create transaction.

Parametersosid.type.Type[]actionGroupRecordTypesarray of action group record types
Returnosid.control.ActionGroupFormthe action group form
ErrorsNULL_ARGUMENT actionGroupRecordTypes is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTEDunable to get form for requested record types
CompliancemandatoryThis method must be implemented.
MethodcreateActionGroup
Description

Creates a new ActionGroup.

Parametersosid.control.ActionGroupFormactionGroupFormthe form for this ActionGroup
Returnosid.control.ActionGroupthe new ActionGroup
ErrorsILLEGAL_STATE actionGroupForm already used in a create transaction
INVALID_ARGUMENTone or more of the form elements is invalid
NULL_ARGUMENT actionGroupForm is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTED actionGroupForm did not originate from getActionGroupFormForCreate()
CompliancemandatoryThis method must be implemented.
MethodcanUpdateActionGroups
Description

Tests if this user can update ActionGroups. A return of true does not guarantee successful authorization. A return of false indicates that it is known updating an ActionGroup 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.

Returnboolean false if ActionGroup modification is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodgetActionGroupFormForUpdate
Description

Gets the action group form for updating an existing action group. A new action group form should be requested for each update transaction.

Parametersosid.id.IdactionGroupIdthe Id of the ActionGroup
Returnosid.control.ActionGroupFormthe action group form
ErrorsNOT_FOUND actionGroupId is not found
NULL_ARGUMENT actionGroupId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodupdateActionGroup
Description

Updates an existing action group.

Parametersosid.control.ActionGroupFormactionGroupFormthe form containing the elements to be updated
ErrorsILLEGAL_STATE actionGroupForm already used in an update transaction
INVALID_ARGUMENTthe form contains an invalid value
NULL_ARGUMENT actionGroupForm is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTED actionGroupForm did not originate from getActionGroupFormForUpdate()
CompliancemandatoryThis method must be implemented.
MethodcanDeleteActionGroups
Description

Tests if this user can delete ActionGroups. A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting an ActionGroup 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.

Returnboolean false if ActionGroup deletion is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoddeleteActionGroup
Description

Deletes an ActionGroup.

Parametersosid.id.IdactionGroupIdthe Id of the ActionGroup to remove
ErrorsNOT_FOUND actionGroupId not found
NULL_ARGUMENT actionGroupId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanManageActionGroupAliases
Description

Tests if this user can manage Id aliases for ActionGroups. 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.

Returnboolean false if ActionGroup aliasing is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodaliasActionGroup
Description

Adds an Id to an ActionGroup for the purpose of creating compatibility. The primary Id of the ActionGroup is determined by the provider. The new Id performs as an alias to the primary Id. If the alias is a pointer to another action group, it is reassigned to the given action group Id.

Parametersosid.id.IdactionGroupIdthe Id of an ActionGroup
osid.id.IdaliasIdthe alias Id
ErrorsALREADY_EXISTS aliasId is already assigned
NOT_FOUND actionGroupId not found
NULL_ARGUMENT actionGroupId or aliasId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanCreateActionWithRecordTypes
Description

Tests if this user can create a single Action using the desired record types. While ControlManager.getActionRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific Action. Providing an empty array tests if an Action can be created with no records.

Parametersosid.type.Type[]actionRecordTypesarray of action record types
Returnboolean true if Action creation using the specified record Types is supported, false otherwise
ErrorsNULL_ARGUMENT actionRecordTypes is null
CompliancemandatoryThis method must be implemented.
MethodgetActionFormForCreate
Description

Gets the action form for creating new actions. A new form should be requested for each create transaction.

Parametersosid.id.IdactionGroupIdan action group Id
osid.type.Type[]actionRecordTypesarray of action record types
Returnosid.control.ActionFormthe action form
ErrorsNOT_FOUND actionGroupId is not found
NULL_ARGUMENT actionGroupId or actionRecordTypes is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTEDunable to get form for requested record types
CompliancemandatoryThis method must be implemented.
MethodcreateAction
Description

Creates a new Action.

Parametersosid.control.ActionFormactionFormthe form for this Action
Returnosid.control.Actionthe new Action
ErrorsILLEGAL_STATE actionForm already used in a create transaction
INVALID_ARGUMENTone or more of the form elements is invalid
NULL_ARGUMENT actionForm is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTED actionForm did not originate from getActionFormForCreate()
CompliancemandatoryThis method must be implemented.
MethodcanUpdateActions
Description

Tests if this user can update Actions. A return of true does not guarantee successful authorization. A return of false indicates that it is known updating an Action 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.

Returnboolean false if Action modification is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodgetActionFormForUpdate
Description

Gets the action form for updating an existing action. A new action form should be requested for each update transaction.

Parametersosid.id.IdactionIdthe Id of the Action
Returnosid.control.ActionFormthe action form
ErrorsNOT_FOUND actionId is not found
NULL_ARGUMENT actionId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodupdateAction
Description

Updates an existing action.

Parametersosid.control.ActionFormactionFormthe form containing the elements to be updated
ErrorsILLEGAL_STATE actionForm already used in an update transaction
INVALID_ARGUMENTthe form contains an invalid value
NULL_ARGUMENT actionForm is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTED actionForm did not originate from getActionFormForUpdate()
CompliancemandatoryThis method must be implemented.
MethodcanDeleteActions
Description

Tests if this user can delete Actions. A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting an Action 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.

Returnboolean false if Action deletion is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoddeleteAction
Description

Deletes an Action.

Parametersosid.id.IdactionIdthe Id of the Action to remove
ErrorsNOT_FOUND actionId not found
NULL_ARGUMENT actionId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanManageActionAliases
Description

Tests if this user can manage Id aliases for Actions. 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.

Returnboolean false if Action aliasing is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodaliasAction
Description

Adds an Id to an Action for the purpose of creating compatibility. The primary Id of the Action is determined by the provider. The new Id performs as an alias to the primary Id. If the alias is a pointer to another action, it is reassigned to the given action Id.

Parametersosid.id.IdactionIdthe Id of an Action
osid.id.IdaliasIdthe alias Id
ErrorsALREADY_EXISTS aliasId is already assigned
NOT_FOUND actionId not found
NULL_ARGUMENT actionId or aliasId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanSequenceActions
Description

Tests if this user can order Actions. 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.

Returnboolean false if Action ordering is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodmoveActionAhead
Description

Reorders actions in an action grpup by moving the specified action in front of a reference action.

Parametersosid.id.IdactionIdthe Id of an Action
osid.id.IdactionGroupIdthe Id of an ActionGroup
osid.id.IdreferenceIdthe reference action Id
ErrorsNOT_FOUND actionId, actionGroupId, or referenceId not found or, actionId or referenceId not related to actionGroupId
NULL_ARGUMENT actionId, actionGroupId, or referenceId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodmoveActionBehind
Description

Reorders actions in an action group by moving the specified action behind a reference action.

Parametersosid.id.IdactionIdthe Id of an Action
osid.id.IdactionGroupIdthe Id of an ActionGroup
osid.id.IdreferenceIdthe reference action Id
ErrorsNOT_FOUND actionId, actionGroupId, or referenceId not found or, actionId or referenceId not related to actionGroupId
NULL_ARGUMENT actionId, actionGroupId, or referenceId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodorderActions
Description

Reorders a set of actions in an action group.

Parametersosid.id.Id[]actionIdsthe Ids for a set of Actiond
osid.id.IdactionGroupIdthe Id of an ActionGroup
ErrorsNOT_FOUND actionGroupId not found or, an actionId not related to actionGroupId
NULL_ARGUMENT actionIds or actionGroupId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.