Files
alfresco-community-repo/amps/ags/rm-community/documentation/destruction/resource/class/destruction-class.puml
2021-05-05 19:41:33 +01:00

44 lines
1.3 KiB
Plaintext

@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