| Configuration |
yes |
This Element is implmemented by the AppConfig java object. This is the same configuration
Element used by all other messaging components that use an AppConfig. This will contain the
resources required to route to end points. Those resources include:
- ProducerConfigs - PubSubProducers that are connected to the end-point's destination (Topic).
This producer will be used to route the message. Additional producers could be specified here
if needed. Additional producers could be needed by the RoutingCriteria class that gets executed
to perform "content based" routing. If needed, they would be specified and configured here.
- MessageObjectConfigs - This would be a list of all Message Objects that the end point is interested in.
The router will retrieve the messageObject (e.g. - BasicPerson, BasicEmployee etc.)
and messageRelease (e.g. - 1.0, 1.1 etc.) from the message consumed by the gateway
and use that information to build a message object name that looks like this "BasicPerson.v1_0".
If the end point's configuration contains a message object by that name,
the router may route the message to that end point depending on whether or not the end-point
has an Routing Criteria (content based routing rules) associated to it.
- PropertyConfigs - These are a set of properties associated to the end point. There
must be one PropertyConfig object named 'RoutingProperties' that this command
uses to make decisions about how/if it should route to the end point. The Properties that
may exist in this PropertyConfig element are:
| Property Name |
Required |
Description |
| routeToTarget (true|false) |
no (default=true) |
This property is used to determine if the command should route to the end-point
at all. |
| provideTargetAppName (true|false) |
no (default=true) |
If true, the TargetInfo Element of the message routed by this command
will include the name of the application that published the message. |
| provideSourceControlArea (true|false) |
no (default=false) |
If true, the message that the command routes to the end-point will include
the ControlAreaSync Element from the original message published by the authoritative
source. This can be useful if the end-point wants to know the originating information
such as the time stamp when the message was originally published. |
| dumpOutput (true|false) |
no (default=false) |
If true, the router will dump the contents of the message it's routing prior to
routing it. All commands have the ability dump the message consumed by the gateway.
However, this is a little different in that it's actually going to dump the message
that results from the routing process prior to routing it. This is generally something
that should only be turned on during development/testing or when additional information
is needed regarding the activities of the router. |
| routingCriteriaClass.1-n |
no |
These properties are used to specify RoutingCriteriaCommand implementations that should
be used to determine, based on content and other factors, if the message should be routed to the end point.
Multiple classes may be specified, using "dot" notation, or some other distinguishing technique,
in the name of the class. They will be executed in the order they're specified.
Note, they are NOT currently executed based on the number to the right of the "dot".
That is simply a technique used to specify multiple RoutingCriteria classes.
If a routing criteria class(es) exist, this command will call the 'shouldRoute' method on the
RoutingCriteriaCommand implementations passing the AppConfig object associated to the end-point
and the XML Document built from the JMS Message consumed. Then, that RoutingCriteriaCommand can
do whatever it likes to determine if the end point is interested in this message. This may include
things a simple as verifying certain data items in the message or it may be something as complex
as querying other authoritative sources for additional information that may not be supplied in the
message consumed. These RoutingCriteriaCommands are intended to be very specific to the end point
in question. |
|