Skip to content

Commit 906ed9b

Browse files
committed
Added more MEL examples
1 parent 33d95eb commit 906ed9b

File tree

7 files changed

+476
-63
lines changed

7 files changed

+476
-63
lines changed

melexamples/README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
MEL Examples
2+
============
3+
4+
This project contains examples for using MEL to do logging, filter, content based routes and transformation in Mule ESB.
5+
6+
In this project I used Mule ESB CE 3.3.1
7+
(http://www.mulesoft.org/download-mule-esb-community-edition)
8+

melexamples/flows/global_functions.mflow

Lines changed: 31 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<property value="1" name="auxiliary;index"/>
99
</properties>
1010
</global-element>
11-
<flow SubFlow="false" name="FilterBytesAsHexWithoutGlobalFunction" entity-id="597906e9-9ac6-4a2c-8c31-fc5639e96169">
11+
<flow SubFlow="false" name="FilterBytesAsHexWithoutGlobalFunction" entity-id="10d0ecc6-17b6-4154-bdeb-abed0480d4b2">
1212
<properties>
1313
<property name="processingStrategy2"/>
1414
<property name="processingStrategy"/>
@@ -25,7 +25,7 @@
2525
<property value="one-way" name="exchange-pattern"/>
2626
<property value="request-response" name="exchange-pattern"/>
2727
<property value="6" name="auxiliary;index"/>
28-
<property value="start1" name="path"/>
28+
<property value="FilterBytesAsHexWithoutGlobalFunction" name="path"/>
2929
<property value="6" name="auxiliary;index"/>
3030
<property value="6" name="auxiliary;index"/>
3131
<property value="6" name="auxiliary;index"/>
@@ -48,104 +48,88 @@
4848
<property value="6" name="auxiliary;index"/>
4949
</properties>
5050
</endpoint>
51-
<pattern type="http://www.mulesoft.org/schema/mule/core/logger" name="Logger" entity-id="Logger#1">
51+
<pattern type="http://www.mulesoft.org/schema/mule/core/logger" name="Log byte array in a more readable form." entity-id="Logger#1">
5252
<properties>
53-
<property value="Payload is #[payload] which translates into #[transformBytesToString()]" name="message"/>
53+
<property value="Payload is #[payload] which translates into #[javax.xml.bind.DatatypeConverter.printHexBinary(payload)]" name="message"/>
5454
<property value="INFO" name="level"/>
5555
<property name="category"/>
5656
<property value="7" name="auxiliary;index"/>
5757
<property value="7" name="auxiliary;index"/>
5858
<property value="7" name="auxiliary;index"/>
5959
</properties>
6060
</pattern>
61-
<pattern type="org.mule.tooling.ui.modules.core.filter.Expression" name="Expression" entity-id="Expression#1">
61+
<pattern type="org.mule.tooling.ui.modules.core.filter.Expression" name="Filter using a String comparison" entity-id="Expression#1">
6262
<properties>
6363
<property name="evaluator"/>
64-
<property value="#[javax.xml.bind.DatatypeConverter.printHexBinary(payload).equals('7F000001')]" name="expression"/>
64+
<property value="#[javax.xml.bind.DatatypeConverter.printHexBinary(payload) == '7F000001']" name="expression"/>
6565
<property name="customEvaluator"/>
6666
<property name="nullReturnsTrue"/>
6767
<property value="8" name="auxiliary;index"/>
6868
<property value="8" name="auxiliary;index"/>
6969
<property value="8" name="auxiliary;index"/>
7070
</properties>
7171
</pattern>
72-
<pattern type="http://www.mulesoft.org/schema/mule/core/set-payload" name="Set payload to Success" entity-id="Set Payload#1">
73-
<properties>
74-
<property value="Success" name="value"/>
75-
<property value="9" name="auxiliary;index"/>
76-
<property value="9" name="auxiliary;index"/>
77-
<property value="9" name="auxiliary;index"/>
78-
</properties>
79-
</pattern>
8072
</lane>
8173
</flow>
82-
<flow SubFlow="false" name="FilterBytesAsHexWithGlobalFunction" entity-id="a1f596d7-d095-408d-ad65-7fc0b106b6cc">
74+
<flow SubFlow="false" name="FilterBytesAsHexWithGlobalFunction" entity-id="aa6c85ec-0f2a-47b5-a64c-3c40d67b75aa">
8375
<properties>
8476
<property name="processingStrategy2"/>
8577
<property name="processingStrategy"/>
86-
<property value="10" name="auxiliary;index"/>
78+
<property value="9" name="auxiliary;index"/>
8779
<property name="bussinessEventsLabel"/>
8880
<property name="tracking:enable-default-events"/>
89-
<property value="10" name="auxiliary;index"/>
90-
<property value="10" name="auxiliary;index"/>
91-
<property value="10" name="auxiliary;index"/>
81+
<property value="9" name="auxiliary;index"/>
82+
<property value="9" name="auxiliary;index"/>
83+
<property value="9" name="auxiliary;index"/>
9284
</properties>
9385
<lane isChoiceOtherwiseLane="false" index="0" hadOnlyOneElement="false" entity-id="compartment-lane#2">
9486
<endpoint message-exchange-pattern="OneWay" direction="Inbound" type="http://www.mulesoft.org/schema/mule/vm/endpoint" name="VM" entity-id="VM#2">
9587
<properties>
9688
<property value="one-way" name="exchange-pattern"/>
9789
<property value="request-response" name="exchange-pattern"/>
98-
<property value="11" name="auxiliary;index"/>
99-
<property value="start2" name="path"/>
100-
<property value="11" name="auxiliary;index"/>
101-
<property value="11" name="auxiliary;index"/>
102-
<property value="11" name="auxiliary;index"/>
90+
<property value="10" name="auxiliary;index"/>
91+
<property value="FilterBytesAsHexWithGlobalFunction" name="path"/>
92+
<property value="10" name="auxiliary;index"/>
93+
<property value="10" name="auxiliary;index"/>
94+
<property value="10" name="auxiliary;index"/>
10395
<property name="businessEventsLabel"/>
10496
<property name="tracking:enable-default-events"/>
105-
<property value="11" name="auxiliary;index"/>
97+
<property value="10" name="auxiliary;index"/>
10698
<property name="address"/>
10799
<property name="responseTimeout"/>
108100
<property name="encoding"/>
109101
<property name="disableTransportTransformer"/>
110102
<property name="mimeType"/>
111-
<property value="11" name="auxiliary;index"/>
112-
<property value="11" name="auxiliary;index"/>
103+
<property value="10" name="auxiliary;index"/>
104+
<property value="10" name="auxiliary;index"/>
113105
<property name="connector-ref"/>
114106
<property name="ref"/>
115107
<property name="transformer-refs"/>
116108
<property name="responseTransformer-refs"/>
117-
<property value="11" name="auxiliary;index"/>
118-
<property value="11" name="auxiliary;index"/>
119-
<property value="11" name="auxiliary;index"/>
109+
<property value="10" name="auxiliary;index"/>
110+
<property value="10" name="auxiliary;index"/>
111+
<property value="10" name="auxiliary;index"/>
120112
</properties>
121113
</endpoint>
122-
<pattern type="http://www.mulesoft.org/schema/mule/core/logger" name="Logger" entity-id="Logger#2">
114+
<pattern type="http://www.mulesoft.org/schema/mule/core/logger" name="Log byte array in a more readable form." entity-id="Logger#2">
123115
<properties>
124116
<property value="Payload is #[payload] which translates into #[transformBytesToString()]" name="message"/>
125117
<property value="INFO" name="level"/>
126118
<property name="category"/>
127-
<property value="12" name="auxiliary;index"/>
128-
<property value="12" name="auxiliary;index"/>
129-
<property value="12" name="auxiliary;index"/>
119+
<property value="11" name="auxiliary;index"/>
120+
<property value="11" name="auxiliary;index"/>
121+
<property value="11" name="auxiliary;index"/>
130122
</properties>
131123
</pattern>
132-
<pattern type="org.mule.tooling.ui.modules.core.filter.Expression" name="Expression" entity-id="Expression#2">
124+
<pattern type="org.mule.tooling.ui.modules.core.filter.Expression" name="Filter using a String comparison" entity-id="Expression#2">
133125
<properties>
134126
<property name="evaluator"/>
135-
<property value="#[transformBytesToString().equals('7F000001')]" name="expression"/>
127+
<property value="#[transformBytesToString() == '7F000001']" name="expression"/>
136128
<property name="customEvaluator"/>
137129
<property name="nullReturnsTrue"/>
138-
<property value="13" name="auxiliary;index"/>
139-
<property value="13" name="auxiliary;index"/>
140-
<property value="13" name="auxiliary;index"/>
141-
</properties>
142-
</pattern>
143-
<pattern type="http://www.mulesoft.org/schema/mule/core/set-payload" name="Set payload to Success" entity-id="Set Payload#2">
144-
<properties>
145-
<property value="Success" name="value"/>
146-
<property value="14" name="auxiliary;index"/>
147-
<property value="14" name="auxiliary;index"/>
148-
<property value="14" name="auxiliary;index"/>
130+
<property value="12" name="auxiliary;index"/>
131+
<property value="12" name="auxiliary;index"/>
132+
<property value="12" name="auxiliary;index"/>
149133
</properties>
150134
</pattern>
151135
</lane>

0 commit comments

Comments
 (0)