Message Queuing Interface for Step Control

Registered by Matthias Ronge

The Goobi Interface to create processes could be realised as an ActiveMQ consumer.

It could be implemented as a ServletContextListener, which, on startup, connects to a given "activeMQ.hostURL" and registers as consumer to a queue configured by "activeMQ.createNewProcess.queue".

It expects MapMessages on that queue containing:

String id: ID to be used as digital PPN *and* process title
String template: name of the process template to use
String opac: Cataloge to use for lookup
String field: Field to look into, usually "PPN"
String value: Value to look for, id of physical medium
Set<String> collections: Collections to be selected

It will then create a new process and report the result (success/fatal, see below) to "activeMQ.results.topic", if configured. This could be the result reporting format:

Date timestamp: Date & time the report was generated
String queue: The name of the queue the origin message was sent in
String id: The "id" of the message
String level: Should be one of fatal / error / warn / info / success / debug / verbose / ludicrous. "success" indicates the request was processed correctly, "fatal" indicates that Goobi gave up trying to process the message du to an error which cannot be handled. The others are informative.
String message: Optional, may be used for error messages

Blueprint information

Status:
Complete
Approver:
Ralf Claussnitzer
Priority:
High
Drafter:
Matthias Ronge
Direction:
Approved
Assignee:
Matthias Ronge
Definition:
Approved
Series goal:
Accepted for 1.8
Implementation:
Implemented
Milestone target:
milestone icon 1.8.0
Started by
Ralf Claussnitzer
Completed by
Ralf Claussnitzer

Whiteboard

A reference implementation has been provided:
https://code.launchpad.net/~zeutschel/goobi-production/web-service-interface-to-create-processes

-- Matthias Ronge, Zeutschel, 11.05.2012

This feature is complete now. A merge request was added 28. June 2012.

-- Matthias Ronge, Zeutschel, 2012-07-03

Unrelated extra JSPs got removed in branch lp:~slub.team/goobi-production/mq-interface-to-create-and-finalise-processes before merge.

-- Ralf Claussnitzer, SLUB, 2012-07-27

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.