adorsys/datasafe

View on GitHub
docs/modular/sequences/shrinked/shrink_write_inbox.puml

Summary

Maintainability
Test Coverage
@startuml

skinparam SequenceMessageAlign center

activate INBOX
' de.adorsys.datasafe.business.api.inbox.actions.WriteToInboxImpl
INBOX -> INBOX : resolveFileLocation

activate INBOX
' de.adorsys.datasafe.business.api.inbox.actions.WriteToInboxImpl
INBOX -> Profile : publicProfile

activate Profile
' de.adorsys.datasafe.business.api.deployment.profile.ProfileRetrievalService
Profile -> Profile : publicProfile

activate Profile
' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> Profile : systemDfs

activate Profile
' de.adorsys.datasafe.business.impl.profile.operations.DFSSystem
Profile <-- Profile : DFSAccess
deactivate Profile

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> DFS : obtain

activate DFS
' de.adorsys.datasafe.business.api.deployment.dfs.DFSConnectionService
DFS -> DFS : obtain

activate DFS
' de.adorsys.datasafe.business.impl.dfs.DFSConnectionServiceImpl
DFS <-- DFS : DFSConnection
deactivate DFS

' de.adorsys.datasafe.business.api.deployment.dfs.DFSConnectionService
Profile <-- DFS : DFSConnection
deactivate DFS

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> Profile : locatePublicProfile

activate Profile
' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile <-- Profile : BucketPath
deactivate Profile

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> DFS : getBlob

activate DFS
' de.adorsys.dfs.connection.api.service.api.DFSConnection
Profile <-- DFS : Payload
deactivate DFS

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> SERDE : fromJson

activate SERDE
' de.adorsys.datasafe.business.impl.profile.serde.GsonSerde
Profile <-- SERDE : T
deactivate SERDE

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile <-- Profile : UserPublicProfile
deactivate Profile

' de.adorsys.datasafe.business.api.deployment.profile.ProfileRetrievalService
INBOX <-- Profile : UserPublicProfile
deactivate Profile

deactivate INBOX

' de.adorsys.datasafe.business.api.inbox.actions.WriteToInboxImpl
INBOX -> Credentials : publicAccessFor

activate Credentials
' de.adorsys.datasafe.business.api.deployment.credentials.BucketAccessService
Credentials -> Credentials : publicAccessFor

activate Credentials
' de.adorsys.datasafe.business.impl.profile.dfs.BucketAccessServiceImpl
Credentials -> Credentials : publicUserCredentials

activate Credentials
' de.adorsys.datasafe.business.api.deployment.credentials.DFSCredentialsService
Credentials -> Credentials : publicUserCredentials

activate Credentials
' de.adorsys.datasafe.business.impl.credentials.DFSCredentialsServiceImpl
Credentials -> Profile : systemDfs

activate Profile
' de.adorsys.datasafe.business.impl.profile.operations.DFSSystem
Credentials <-- Profile : DFSAccess
deactivate Profile

' de.adorsys.datasafe.business.impl.credentials.DFSCredentialsServiceImpl
Credentials <-- Credentials : DFSCredentials
deactivate Credentials

' de.adorsys.datasafe.business.api.deployment.credentials.DFSCredentialsService
Credentials <-- Credentials : DFSCredentials
deactivate Credentials

' de.adorsys.datasafe.business.impl.profile.dfs.BucketAccessServiceImpl
Credentials <-- Credentials : DFSAccess
deactivate Credentials

' de.adorsys.datasafe.business.api.deployment.credentials.BucketAccessService
INBOX <-- Credentials : DFSAccess
deactivate Credentials

' de.adorsys.datasafe.business.api.inbox.actions.WriteToInboxImpl
INBOX -> KeyStore : publicKey

activate KeyStore
' de.adorsys.datasafe.business.api.deployment.keystore.PublicKeyService
KeyStore -> Credentials : publicKey

activate Credentials
' de.adorsys.datasafe.business.impl.profile.keys.DFSPublicKeyServiceImpl
Credentials -> Credentials : publicAccessFor

activate Credentials
' de.adorsys.datasafe.business.api.deployment.credentials.BucketAccessService
Credentials -> Credentials : publicAccessFor

activate Credentials
' de.adorsys.datasafe.business.impl.profile.dfs.BucketAccessServiceImpl
Credentials -> Credentials : publicUserCredentials

activate Credentials
' de.adorsys.datasafe.business.api.deployment.credentials.DFSCredentialsService
Credentials -> Credentials : publicUserCredentials

activate Credentials
' de.adorsys.datasafe.business.impl.credentials.DFSCredentialsServiceImpl
Credentials -> Profile : systemDfs

activate Profile
' de.adorsys.datasafe.business.impl.profile.operations.DFSSystem
Credentials <-- Profile : DFSAccess
deactivate Profile

' de.adorsys.datasafe.business.impl.credentials.DFSCredentialsServiceImpl
Credentials <-- Credentials : DFSCredentials
deactivate Credentials

' de.adorsys.datasafe.business.api.deployment.credentials.DFSCredentialsService
Credentials <-- Credentials : DFSCredentials
deactivate Credentials

' de.adorsys.datasafe.business.impl.profile.dfs.BucketAccessServiceImpl
Credentials <-- Credentials : DFSAccess
deactivate Credentials

' de.adorsys.datasafe.business.api.deployment.credentials.BucketAccessService
Credentials <-- Credentials : DFSAccess
deactivate Credentials

' de.adorsys.datasafe.business.impl.profile.keys.DFSPublicKeyServiceImpl
Credentials -> Profile : publicProfile

activate Profile
' de.adorsys.datasafe.business.api.deployment.profile.ProfileRetrievalService
Profile -> Profile : publicProfile

activate Profile
' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> Profile : systemDfs

activate Profile
' de.adorsys.datasafe.business.impl.profile.operations.DFSSystem
Profile <-- Profile : DFSAccess
deactivate Profile

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> DFS : obtain

activate DFS
' de.adorsys.datasafe.business.api.deployment.dfs.DFSConnectionService
DFS -> DFS : obtain

activate DFS
' de.adorsys.datasafe.business.impl.dfs.DFSConnectionServiceImpl
DFS <-- DFS : DFSConnection
deactivate DFS

' de.adorsys.datasafe.business.api.deployment.dfs.DFSConnectionService
Profile <-- DFS : DFSConnection
deactivate DFS

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> Profile : locatePublicProfile

activate Profile
' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile <-- Profile : BucketPath
deactivate Profile

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> DFS : getBlob

activate DFS
' de.adorsys.dfs.connection.api.service.api.DFSConnection
Profile <-- DFS : Payload
deactivate DFS

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile -> SERDE : fromJson

activate SERDE
' de.adorsys.datasafe.business.impl.profile.serde.GsonSerde
Profile <-- SERDE : T
deactivate SERDE

' de.adorsys.datasafe.business.impl.profile.operations.DFSBasedProfileStorageImpl
Profile <-- Profile : UserPublicProfile
deactivate Profile

' de.adorsys.datasafe.business.api.deployment.profile.ProfileRetrievalService
Credentials <-- Profile : UserPublicProfile
deactivate Profile

' de.adorsys.datasafe.business.impl.profile.keys.DFSPublicKeyServiceImpl
Credentials -> DFS : obtain

activate DFS
' de.adorsys.datasafe.business.api.deployment.dfs.DFSConnectionService
DFS -> DFS : obtain

activate DFS
' de.adorsys.datasafe.business.impl.dfs.DFSConnectionServiceImpl
DFS <-- DFS : DFSConnection
deactivate DFS

' de.adorsys.datasafe.business.api.deployment.dfs.DFSConnectionService
Credentials <-- DFS : DFSConnection
deactivate DFS

' de.adorsys.datasafe.business.impl.profile.keys.DFSPublicKeyServiceImpl
Credentials -> Profile : publicKeyStoreAuth

activate Profile
' de.adorsys.datasafe.business.impl.profile.operations.DFSSystem
Credentials <-- Profile : KeyStoreAuth
deactivate Profile

' de.adorsys.datasafe.business.impl.profile.keys.DFSPublicKeyServiceImpl
Credentials -> DFS : getBlob

activate DFS
' de.adorsys.dfs.connection.api.service.api.DFSConnection
Credentials <-- DFS : Payload
deactivate DFS

' de.adorsys.datasafe.business.impl.profile.keys.DFSPublicKeyServiceImpl
Credentials -> KeyStore : getPublicKeys

activate KeyStore
' de.adorsys.datasafe.business.api.deployment.keystore.KeyStoreService
KeyStore -> KeyStore : getPublicKeys

activate KeyStore
' de.adorsys.datasafe.encrypiton.impl.keystore.KeyStoreServiceImpl
KeyStore <-- KeyStore : List
deactivate KeyStore

' de.adorsys.datasafe.business.api.deployment.keystore.KeyStoreService
Credentials <-- KeyStore : List
deactivate KeyStore

' de.adorsys.datasafe.business.impl.profile.keys.DFSPublicKeyServiceImpl
KeyStore <-- Credentials : PublicKeyIDWithPublicKey
deactivate Credentials

' de.adorsys.datasafe.business.api.deployment.keystore.PublicKeyService
INBOX <-- KeyStore : PublicKeyIDWithPublicKey
deactivate KeyStore

' de.adorsys.datasafe.business.api.inbox.actions.WriteToInboxImpl
INBOX -> Document : write

activate Document
' de.adorsys.datasafe.business.api.deployment.document.DocumentWriteService
Document -> Document : write

activate Document
' de.adorsys.datasafe.encrypiton.impl.document.CMSDocumentWriteServiceriteService
Document -> DFS : obtain

activate DFS
' de.adorsys.datasafe.business.api.deployment.dfs.DFSConnectionService
DFS -> DFS : obtain

activate DFS
' de.adorsys.datasafe.business.impl.dfs.DFSConnectionServiceImpl
DFS <-- DFS : DFSConnection
deactivate DFS

' de.adorsys.datasafe.business.api.deployment.dfs.DFSConnectionService
Document <-- DFS : DFSConnection
deactivate DFS

' de.adorsys.datasafe.encrypiton.impl.document.CMSDocumentWriteServiceriteService
Document -> CMS : encrypt

activate CMS
' de.adorsys.datasafe.business.api.encryption.cmsencryption.CMSEncryptionService
CMS -> CMS : encrypt

activate CMS
' de.adorsys.datasafe.encrypiton.impl.cmsencryption.CMSEncryptionServiceImpl
CMS <-- CMS : CMSEnvelopedData
deactivate CMS

' de.adorsys.datasafe.business.api.encryption.cmsencryption.CMSEncryptionService
Document <-- CMS : CMSEnvelopedData
deactivate CMS

' de.adorsys.datasafe.encrypiton.impl.document.cmsocument.CMSDocumentWriteService
Document -> DFS : putBlob

activate DFS
' de.adorsys.dfs.connection.api.service.api.DFSConnection
Document <-- DFS :
deactivate DFS

' de.adorsys.datasafe.encrypiton.impl.document.CMSDocumentWriteServiceriteService
Document <-- Document :
deactivate Document

' de.adorsys.datasafe.business.api.deployment.document.DocumentWriteService
INBOX <-- Document :
deactivate Document

deactivate INBOX

@enduml