
上QQ阅读APP看书,第一时间看更新
The property mediator
A property is a variable that stores some information during a time that depends on the scope it has configured.
Here's the syntax:
<property name="string" [action=set|remove] [type="string"] (value="literal" | expression="xpath") [scope=default|transport|axis2|axis2-client] [pattern="regex" [group="integer"]]> <xml-element/>? </property>
We have three different types of properties:
- Static: Get a static value in the creation:
<property name="color" value="red" />
- Dynamic: Get a dynamic value:
- From an xpath expression:
<property name="dynamic1" expression="//xpath"/>
-
- From any other property:
<property name="dynamic2"
expression="get-property('dynamic1')"/>
- Action: Do an action with an existing property:
<property name="To" action="remove"/>
The properties can have seven different types of scope:
- Axis2: It's the shortest scope and is only used to send parameters to Axis2 engine
- Axis2-client: The same duration as synapse, but the property can be read through custom mediators
- Synapse: The property will live in the same sequence; it's the default scope
- Operation: It's the largest scope; the property will live until the end of the service through the different sequences
- Registry: It is used to get properties from the registry
- System: To get Java system properties
- Transport: The property will be sent as a transport header
Depending on the content, the properties can be of eight different types:
- BOOLEAN
- DOUBLE
- FLOAT
- INTEGER
- LONG
- OM
- SHORT
- STRING