mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
Move governance-services code to amps/ags
This commit is contained in:
Binary file not shown.
After Width: | Height: | Size: 35 KiB |
@@ -0,0 +1,43 @@
|
||||
@startuml
|
||||
|
||||
DestroyAction --> ContentDestructionComponent
|
||||
ContentDestructionComponent <|-- ExtendedContentDestructionComponent
|
||||
ContentDestructionComponent --> EagerContentStoreCleaner
|
||||
EagerContentStoreCleaner --> ContentCleanser
|
||||
ContentCleanser <|-- ContentCleanser522022M
|
||||
ContentCleanser +-- OverwriteOperation
|
||||
|
||||
class DestroyAction {
|
||||
+ boolean ghostingEnabled
|
||||
}
|
||||
|
||||
class ContentDestructionComponent {
|
||||
+ boolean cleansingEnabled
|
||||
+ void destroyContent(NodeRef nodeRef)
|
||||
+ void destroyContent(NodeRef nodeRef, boolean includeRenditions)
|
||||
+ void registerAllContentForDestruction(NodeRef nodeRef, boolean clearContentProperty)
|
||||
}
|
||||
|
||||
class ExtendedContentDestructionComponent {
|
||||
+ void onBeforeNodeDelete(NodeRef nodeRef)
|
||||
}
|
||||
|
||||
class EagerContentStoreCleaner {
|
||||
+ void registerOrphanedContentUrlForCleansing(String contentUrl)
|
||||
# boolean deleteFromStore(String contentUrl, ContentStore store)
|
||||
}
|
||||
|
||||
abstract class ContentCleanser {
|
||||
# OverwriteOperation overwriteZeros
|
||||
# OverwriteOperation overwriteOnes
|
||||
# OverwriteOperation overwriteRandom
|
||||
+ {abstract} void cleanse(File file)
|
||||
# void overwrite(File file, OverwriteOperation overwriteOperation)
|
||||
}
|
||||
|
||||
abstract class OverwriteOperation {
|
||||
+ {abstract} void operation(OutputStream os) throws IOException
|
||||
}
|
||||
|
||||
@enduml
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 26 KiB |
@@ -0,0 +1,40 @@
|
||||
@startuml
|
||||
|
||||
Title: Content Destruction and Cleansing Flow
|
||||
|
||||
participant "Repository" as R
|
||||
participant "Behaviour" as B
|
||||
participant "ContentDestructionComponent" as CDC
|
||||
participant "EagerContentStoreCleaner" as ECSC
|
||||
participant ConentCleanser as CC
|
||||
participant ContentStore as CS
|
||||
|
||||
R->B:beforeNodeDelete
|
||||
activate B
|
||||
|
||||
note right of B: sensitive content
|
||||
B->CDC:registerAllContentForDestruction
|
||||
deactivate B
|
||||
activate CDC
|
||||
note right of CDC: cleansing enabled
|
||||
|
||||
CDC->ECSC:registerOrphanedContentUrlForCleansing
|
||||
deactivate CDC
|
||||
activate ECSC
|
||||
|
||||
ECSC->ECSC: registerOrphanedContentUrl
|
||||
|
||||
R->ECSC:afterCommit
|
||||
|
||||
ECSC->CC:cleanse
|
||||
activate CC
|
||||
CC->ECSC
|
||||
deactivate CC
|
||||
|
||||
ECSC->CS:delete
|
||||
activate CS
|
||||
CS->ECSC
|
||||
deactivate CS
|
||||
deactivate ECSC
|
||||
|
||||
@enduml
|
Reference in New Issue
Block a user