publisherVersion.validate.puml 3.23 KB
@startuml
actor Validator
participant listPublisherVersions.xhtml
participant ListPublisherVersionView
participant PublisherServiceDefault as PublisherServiceDefault << PublisherService >>
participant SharedServiceDefault as SharedServiceDefault << SharedService >>

participant publisherVersion
participant publisher
participant publisherAction

participant PublisherRepository
participant PublisherActionRepository

Validator -> listPublisherVersions.xhtml: Validate
activate listPublisherVersions.xhtml
listPublisherVersions.xhtml -> ListPublisherVersionView: validate(publisherVersion)
activate ListPublisherVersionView
ListPublisherVersionView -> PublisherServiceDefault: validatePublisherVersion(publisherVersion)
activate PublisherServiceDefault
PublisherServiceDefault -> publisherVersion: getPublisher()
activate publisherVersion
publisherVersion -> PublisherServiceDefault: publisher
deactivate publisherVersion
PublisherServiceDefault -> publisher: setValidatedVersion(publisherVersion)
activate publisher
publisher -> PublisherServiceDefault
deactivate publisher
create publisherAction
PublisherServiceDefault -> publisherAction: new

PublisherServiceDefault -> SharedServiceDefault: getCurrentUser()
activate SharedServiceDefault
SharedServiceDefault -> PublisherServiceDefault: currentUser
deactivate SharedServiceDefault
PublisherServiceDefault -> publisherAction: setPublisherActionActor(currentUser)
activate publisherAction
publisherAction -> PublisherServiceDefault
deactivate publisherAction
PublisherServiceDefault -> publisherAction: setPublisherActionDatetime(currentDatetime)
activate publisherAction
publisherAction -> PublisherServiceDefault
deactivate publisherAction
PublisherServiceDefault -> publisherAction: setActionType(ActionType.VALIDATE)
activate publisherAction
publisherAction -> PublisherServiceDefault
deactivate publisherAction
PublisherServiceDefault -> publisherAction: setPublisherVersion(publisherVersion)
activate publisherAction
publisherAction -> PublisherServiceDefault
deactivate publisherAction
PublisherServiceDefault -> publisherAction: setPublisher(publisher)
activate publisherAction
publisherAction -> PublisherServiceDefault
deactivate publisherAction

PublisherServiceDefault -> PublisherServiceDefault: savePublisher(publisher)
activate PublisherServiceDefault
PublisherServiceDefault -> PublisherRepository: save(publisher)
activate PublisherRepository
PublisherRepository -> PublisherServiceDefault
deactivate PublisherRepository
PublisherServiceDefault -> PublisherServiceDefault
deactivate PublisherServiceDefault

PublisherServiceDefault -> PublisherServiceDefault: index(publisher)
activate PublisherServiceDefault
PublisherServiceDefault -> PublisherServiceDefault
note right: Traité dans la partie indexation et recherche
deactivate PublisherServiceDefault

PublisherServiceDefault -> PublisherActionRepository: save(publisherAction)
activate PublisherActionRepository
PublisherActionRepository -> PublisherServiceDefault
deactivate PublisherActionRepository

PublisherServiceDefault -> ListPublisherVersionView: publisherAction
deactivate PublisherServiceDefault
ListPublisherVersionView -> listPublisherVersions.xhtml
deactivate ListPublisherVersionView
listPublisherVersions.xhtml -> Validator
deactivate listPublisherVersions.xhtml

@enduml