Introduction
The up-down axis at the left of this table is the set of possible workflow states of an item on the SAS server.
The left-right axis at the top of the table is the possible states of an item on the local server.
The interior cells are the transition verbs and final state needed during synchronization to move a local item into a state that matches/maps-to the state of the SAS item.
Here are some example,
- If the SAS item is in the state "project" and the local item is in the state "deleted", we'll need to use the transitions "undelete" and "replicate" on the local item during a synchronization with the SAS.
- If the SAS item is in the state "deleted" and the local item is in the state "project", we'll need to use the transitions "delete" and "replicate" on the local item during synchronization with the SAS.
project | deleted | replicated | replicated_deleted | deprecated | deprecated_deleted | ||||
---|---|---|---|---|---|---|---|---|---|
project | replicate->replicated | undelete, replicate->replicated | NA | undelete->replicated | undeprecate, replicate->replicated | undeprecate->replicated | |||
deleted | replicate, delete->replicated_deleted | replicate->replicated_deleted | delete->replicated_deleted | NA | undeprecate, delete->replicated_deleted | undeprecate->replicated_deleted | |||
replicated | replicate->replicated | undelete, replicate->replicated | NA | undelete->replicated | undeprecate, replicate->replicated | undeprecate, undelete->replicated | |||
replicated_deleted | replicate, delete->replicated_deleted | replicate->replicated_deleted | delete->replicated_deleted | NA | undeprecate, replicate, delete->replicated_deleted | undeprecate, delete->replicated_deleted | |||
deprecated | deprecate->deprecated | deprecate->deprecated | deprecate->deprecated | deprecate->deprecated | NA | undelete->deprecated | |||
deprecated_deleted | deprecate, delete->deprecated_deleted | deprecate->deprecated_deleted | deprecate, delete->deprecated_deleted | deprecate->deprecated_deleted | delete->deprecated_deleted | NA | |||
<Object has been removed.> | Do nothing. | Do Nothing. |
|
|
|
| |||
Misc Notes and Unanswered Questions:
What should happen during a sync if a SAS item is in the soft-deleted state "deleted" but the local item is not AND has active (non-deleted) records referencing it?
- the entire sync request fails?
- the local item remains in its current state (no change)
- the local item's workflow state remains unchanged but the item gets some non-workflow state change (failed sync state or delete-pending state)?
- the local item moves into a "deleted" state even though it has active references?
- the local item moves into the "deprecated" state? Or "deprecated_deleted" state?