mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
Moved repository master into its own directory
This commit is contained in:
Binary file not shown.
After Width: | Height: | Size: 34 KiB |
@@ -0,0 +1,37 @@
|
||||
@startuml
|
||||
|
||||
title Actions: Asynchronous Actions Classes (V5.1 Current)
|
||||
|
||||
interface ActionService {
|
||||
+ void executeAction(Action action, NodeRef actionedUponNodeRef, boolean checkConditions, boolean executeAsychronously)
|
||||
}
|
||||
class ActionServiceImpl implements ActionService {
|
||||
- ActionTransactionListener transactionListener
|
||||
- Map<String, AsynchronousActionExecutionQueue> asynchronousActionExecutionQueues
|
||||
+ void registerAsynchronousActionExecutionQueue(String key, AsynchronousActionExecutionQueue asyncExecQueue)
|
||||
+ void executeAction(...)
|
||||
- void addPostTransactionPendingAction(action, actionedUponNodeRef, checkConditions, actionChain)
|
||||
- List<PendingAction> getPostTransactionPendingActions()
|
||||
+ postCommit()
|
||||
- queueAction(PendingAction action)
|
||||
+ etc(...)
|
||||
}
|
||||
|
||||
interface AsynchronousActionExecutionQueue {
|
||||
+ void executeAction(RuntimeActionService actionService, Action action, NodeRef actionedUponNodeRef, boolean checkConditions, Set<String> actionChain);
|
||||
}
|
||||
class AsynchronousActionExecutionQueueImpl implements AsynchronousActionExecutionQueue {
|
||||
- ThreadPoolExecutor threadPoolExecutor
|
||||
- TransactionService transactionService
|
||||
- PolicyComponent policyComponent
|
||||
- Map<String, AbstractAsynchronousActionFilter> actionFilters
|
||||
- String id
|
||||
+ void init()
|
||||
+ void executeAction(...)
|
||||
+ etc(...)
|
||||
}
|
||||
|
||||
AsynchronousActionExecutionQueueImpl o- "1" ActionServiceImpl
|
||||
AsynchronousActionExecutionQueueImpl "0..*" -o ActionServiceImpl
|
||||
|
||||
@enduml
|
Binary file not shown.
After Width: | Height: | Size: 57 KiB |
@@ -0,0 +1,61 @@
|
||||
@startuml
|
||||
|
||||
title Actions: Queued Actions Classes (V5.2 Proposal)
|
||||
|
||||
interface ActionService {
|
||||
+ void executeAction(Action action, NodeRef actionedUponNodeRef, boolean checkConditions, boolean executeAsychronously)
|
||||
}
|
||||
class ActionServiceImpl implements ActionService {
|
||||
- ActionTransactionListener transactionListener
|
||||
- Map<String, AsynchronousActionExecutionQueue> asynchronousActionExecutionQueues
|
||||
+ void registerAsynchronousActionExecutionQueue(String key, AsynchronousActionExecutionQueue asyncExecQueue)
|
||||
+ void executeAction(...)
|
||||
- <b>void bindPendingActionToTransaction(action, actionedUponNodeRef, checkConditions, actionChain)</b>
|
||||
- <s>void addPostTransactionPendingAction(action, actionedUponNodeRef, checkConditions, actionChain)</s>
|
||||
- List<PendingAction> getPostTransactionPendingActions()
|
||||
+ <b>beforeCommit()</b>
|
||||
+ <s>postCommit()</s>
|
||||
- queueAction(PendingAction action)
|
||||
+ etc(...)
|
||||
}
|
||||
|
||||
interface AsynchronousActionExecutionQueue {
|
||||
+ void executeAction(RuntimeActionService actionService, Action action, NodeRef actionedUponNodeRef, boolean checkConditions, Set<String> actionChain);
|
||||
}
|
||||
class AsynchronousActionExecutionQueueImpl implements AsynchronousActionExecutionQueue {
|
||||
- <b>ProducerTemplate producerTemplate</b>
|
||||
- <s>ThreadPoolExecutor threadPoolExecutor</s>
|
||||
- TransactionService transactionService
|
||||
- PolicyComponent policyComponent
|
||||
- Map<String, AbstractAsynchronousActionFilter> actionFilters
|
||||
- String id
|
||||
+ void init()
|
||||
+ void executeAction(...)
|
||||
+ etc(...)
|
||||
}
|
||||
|
||||
package org::apache::camel {
|
||||
class ProducerTemplate {
|
||||
+ void sendBodyAndHeaders(String endpointUri, Object body, Map<String, Object> headers)
|
||||
}
|
||||
class RouteBuilder {
|
||||
+ void configure()
|
||||
+ etc(...)
|
||||
}
|
||||
class JacksonDataFormat
|
||||
}
|
||||
|
||||
class QueuedActionProducer extends RouteBuilder {
|
||||
+ void configure()
|
||||
}
|
||||
class QueuedActionReceiver extends RouteBuilder {
|
||||
+ void configure()
|
||||
}
|
||||
|
||||
AsynchronousActionExecutionQueueImpl o- "1" ActionServiceImpl
|
||||
AsynchronousActionExecutionQueueImpl "0..*" -o ActionServiceImpl
|
||||
AsynchronousActionExecutionQueueImpl o- "1" ProducerTemplate
|
||||
QueuedActionProducer --> "uses" JacksonDataFormat
|
||||
QueuedActionReceiver --> "uses" JacksonDataFormat
|
||||
|
||||
@enduml
|
Reference in New Issue
Block a user