The Disaggregation Reusable Component removes aggregation
of tags to a parent in the back-end system. This marks the records,
which have been created using the Aggregation Reusable Component,
as deleted.
The Disaggregation Reusable Component can collect multiple events
into a single disaggregate action. The API methods for this capability
are: start, addToDisaggregation or addToDisaggregationEvent, and stop.
When called in this order, multiple events can be collected by multiple
calls to addToDisaggregation or addToDisaggregationEvent. The disaggregate
action is triggered when the stop method is called.
Optional agent properties can be used to control how the collection
of events takes place:
- allowCrossLocationDisaggregation
- The possible values for this property are true or false.
The default value is false. When the value for this
property is set to false, all locations (sourceId)
of the events must match. Any call to addToDisaggregation or addToDisaggregationEvent
from a different location results in a CrossLocationAggregationNotEnabledException message,
and excludes that event from the single generated disaggregation event.
When
set to true, this property allows events with different
locations to be included in the same disaggregation. Also when the
value of this property is set to true, you must set
the primeLocation property to tell the Reusable Component
which location to use for the single generated disaggregation event.
- primeLocation
- The value for this property is a location string.
All IBM® Sensor Event data
and payload metadata are maintained in a call to the EPCIS Connector.
For more information, see Working with the EPCIS Connector sample application.
WebSphere Premises Server configuration
Table 1. Disaggregation agent propertiesName |
Description |
PID |
Agent properties |
DisaggregationAgent |
RUC Disaggregation Agent |
com.ibm.premises.reusable.disaggregation.DisaggregationAgent |
- ruc.targetBackend=ruc.epcis
- disaggregate.output.success=rucresponse/disaggregation/disaggregate/success
- disaggregate.output.failure=rucresponse/disaggregation/disaggregate/failure
- start.output.success=rucresponse/disaggregation/start/success
- start.output.failure=rucresponse/disaggregation/start/failure
- add.output.success=rucresponse/disaggregation/add/success
- add.output.failure=rucresponse/disaggregation/add/failure
- stop.output.success=rucresponse/disaggregation/stop/success
- stop.output.failure=rucresponse/disaggregation/stop/failure
|
WebSphere Application Server configuration
Table 2. Activation specification valuesName |
JNDI name |
Destination type |
Destination JNDI name |
Message selector |
Bus name |
DisaggregationRUCAS |
eis/DisaggregationRUCAS |
Topic |
jms/ibmse |
ibmse LIKE ‘rucaction/disaggregation/%’ OR ibmse
LIKE ‘%/rucaction/disaggregation/%’ |
ibmsensorevent |
Methods
- disaggregateEvent(ISensorEvent IBMSE)
- disaggregate(String IBMSE_XML) (Exposed as Web
service)
- disaggregateMap(Map IBMSE_Payload_Attrs)
- start(String profileID, String parentTag, String parentTagType,
String parentTagFilter (Exposed as Web service)
- addToDisaggregationEvent(IBMSE)
- addToDisaggregation(IBMSE) (Exposed as Web service)
- stop(String profileID)
Using the Disaggregation Reusable Component
To
invoke the Disaggregation Reusable Component using IBM Sensor Events or XML, the payload must include:
- PassiveRFIDTagRead
- PassiveRFIDAggregatedTagRead
Generic payload created from a map can also be used. It must
include either of the following:
- DisaggregationRUCConstants.TAG_KEY_INOUT
- DisaggregationRUCConstants.TAGLIST_KEY_INOUT
Note: TAG_KEY_INOUT takes
a String value. TAGLIST_KEY_INOUT takes
a value of java.util.List populated with Strings.
To
publish to Reusable Components MDBs, set the following values for
the JMS topic and eventType. For multi-action Reusable Components,
the topic is checked in the message selector and in the MDB code.
- disaggregate: profileid/rucaction/disaggregation/disaggregate
- start: profileid/rucaction/disaggregation/start
- addToDisaggregation: profileid/rucaction/disaggregation/add
- stop: profileid/rucaction/disaggregation/stop
The JMS topic and eventType for the MDB output from the Reusable
Component comes from the agent properties. Default output topics for
success and failure for each action are shown in Table 1. There is
no payload