How bloomreach-forge/review-workflow works
Review/Assignment Workflow lets CMS users submit a document for review by an assigned group; authorized reviewers accept or reject, while request owners or admins can cancel, and rejected requests can be dropped. The primary path runs from the CMS workflow UI through the repository workflow into persisted review-request state. The README also documents an optional online-review path that creates preview links and sends notification email. The tree and excerpts support the main UI, workflow, and notification components; unsampled subsystem links are shown only where the README explicitly describes their role.
Main entry points: DocumentReviewWorkflowImpl.java Document workflow · NotificationsHandler.java Notification handler · ReviewRequest.java Review request · ReviewRequestsWorkflowPlugin.java Review actions
Components 17
CMS review UI
- Review actions
frontend/src/main/java/org/bloomreach/forge/reviewworkflow/cms/reviewedactions/ReviewRequestsWorkflowPlugin.java - Request list
frontend/src/main/java/org/bloomreach/forge/reviewworkflow/cms/reviewedactions/request/ReviewRequestView.java
Review workflow
- Workflow API
shared/src/main/java/org/bloomreach/forge/reviewworkflow/cms/workflow/ReviewWorkflow.java - Document workflow
repository/src/main/java/org/bloomreach/forge/reviewworkflow/repository/documentworkflow/DocumentReviewWorkflowImpl.java - Workflow actions
repository/src/main/java/org/bloomreach/forge/reviewworkflow/repository/scxml/RejectReviewAction.java - Review request
repository/src/main/java/org/bloomreach/forge/reviewworkflow/repository/documentworkflow/ReviewRequest.java - Request properties
shared/src/main/java/org/bloomreach/forge/reviewworkflow/ReviewWorkflowNodeType.java
Online preview
- Preview URL service
hst/src/main/java/org/bloomreach/forge/reviewworkflow/hst/ExampleDocumentPreviewUrlService.java
Notifications
- Preview client
demo/workflow-notifications/event-handler/src/main/java/demo/hippo/notifications/util/PreviewClient.java - Notification handler
demo/workflow-notifications/event-handler/src/main/java/demo/hippo/notifications/NotificationsHandler.java - Event listener
demo/workflow-notifications/event-handler/src/main/java/demo/hippo/notifications/NotificationsEventsListener.java - Email templates
demo/workflow-notifications/email-addon/src/main/java/demo/hippo/email/FreemarkerTemplateService.java - Mail service
demo/workflow-notifications/email-addon/src/main/java/demo/hippo/email/MailService.java
Other components
- CMS user
- Assigned reviewer
- CMS repository
- SMTP server
Connections 17
- CMS user → Review actions: selects action
- Assigned reviewer → Review actions: reviews request
- Review actions → Workflow API: invokes workflow
- Request list → Workflow API: reads hints
- Workflow API → Document workflow: implemented by
- Document workflow → Workflow actions: dispatches actions
- Document workflow → Review request: creates or updates
- Review request → CMS repository: persists request
- Review request → Request properties: uses properties
- Document workflow → Event listener: emits review event
- Event listener → Notification handler: handles event
- Notification handler → Email templates: loads templates
- Notification handler → Preview client: requests preview URL
- Preview client → Preview URL service: fetches URL
- Preview URL service → CMS repository: resolves document
- Notification handler → Mail service: sends email
- Mail service → SMTP server: delivers mail