Files
alfresco-community-repo/repository/docs/meta-data-services/versions/resource/sequence/noautoversionprops.puml
2020-07-21 10:43:33 +01:00

144 lines
2.9 KiB
Plaintext

@startuml
Title: Autoversion on Content Update - Versioning Flow
participant "CMIS Client" as C
participant "Repository" as R
participant "Version Service" as V
participant "workspace://SpacesStore" as SS
participant "workspace://version2Store" as VS
participant "File System" as FS
database "Database" as DB
C->R:HTTP POST
activate R
group "transaction"
R->V
activate V
V->SS: create node
activate SS
SS->DB: create node
activate DB
DB->SS: OK
deactivate DB
SS->V: OK
deactivate SS
note right of SS
workspace://SpacesStore/e8cc2b68-7482-4304-a93e-02c758a80954
cm:autoVersionOnUpdateProps=false
cm:name=foo.txt
cm:versionLabel=1.0
end note
V->VS: create version history node with one child node
activate VS
VS->DB: create nodes
activate DB
DB->VS: OK
deactivate DB
VS->V: OK
deactivate VS
note right of VS
One Version History Node with one child ...
workspace://version2Store/ce68aba3-73f6-44f9-ad9b-a9e8d77212de
cm:autoVersionOnUpdateProps=false
cm:name=foo.txt
cm:versionLabel=null
ver2:versionLabel=1.0
ver2:versionDescription=Initial Version
end note
end
V->R: OK
deactivate V
R->C: 200 OK
deactivate R
C->R:HTTP PUT (cm:name=bar.txt)
activate R
group "transaction"
R->V
V->SS: update node
activate V
activate SS
SS->DB: update node
activate DB
DB->SS: OK
deactivate DB
SS->V: OK
deactivate SS
note right of SS
workspace://SpacesStore/e8cc2b68-7482-4304-a93e-02c758a80954
cm:autoVersionOnUpdateProps=false
cm:name=bar.txt
cm:versionLabel=1.0
end note
note right of VS
One Version History Node with one child...
workspace://version2Store/ce68aba3-73f6-44f9-ad9b-a9e8d77212de
cm:autoVersionOnUpdateProps=false
cm:name=foo.txt
cm:versionLabel=null
ver2:versionLabel=1.0
ver2:versionDescription=Initial Version
end note
end
C->R:HTTP PUT (new file content)
activate R
group "transaction"
R->V
activate V
V->SS: update node
activate SS
SS->FS: write file content
activate FS
FS->SS: OK
deactivate FS
SS->DB: update node to point to new file content
activate DB
DB->SS: OK
deactivate DB
SS->V: OK
deactivate SS
note right of SS
workspace://SpacesStore/e8cc2b68-7482-4304-a93e-02c758a80954
cm:autoVersionOnUpdateProps=false
cm:name=bar.txt
cm:versionLabel=1.0
end note
V->VS: create a new child of the version history node
activate VS
VS->DB: create node
activate DB
DB->VS: OK
deactivate DB
VS->V: OK
deactivate VS
note right of VS
One Version History Node with two children...
workspace://version2Store/ce68aba3-73f6-44f9-ad9b-a9e8d77212de
cm:autoVersionOnUpdateProps=false
cm:name=foo.txt
cm:versionLabel=null
ver2:versionLabel=1.0
ver2:versionDescription=Initial Version
NEW CHILD:
workspace://version2Store/9fb3fb08-7cfb-4c0a-ac72-233aaf60fa1e
cm:autoVersionOnUpdateProps=false
cm:name=bar.txt
cm:versionLabel=1.0
ver2:versionLabel=1.1
ver2:versionDescription=Update New File Content
end note
end
@enduml