Last active
April 25, 2017 07:17
-
-
Save cgorshing/8407331 to your computer and use it in GitHub Desktop.
Mule Examples
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<expression-component> | |
payload.Address1 = app.registry.encryption.decrypt(payload.Address1) | |
</expression-component> | |
<scripting:component> | |
<scripting:script engine="groovy" file="scripts/create-player-request-transformer.groovy"/> | |
</scripting:component> | |
<expression-component> | |
Runtime.getRuntime().exec("C:\\myfile.exe arg1 " + message.correlationId); | |
</expression-component> | |
//When multiple lines, use a semicolon | |
<expression-component> | |
payload['Contact_Email__c'] = payload.playerKarmaEmailC?.value; | |
payload['Contact_First_Name__c'] = payload.playerFirstNameC?.value; | |
payload['Contact_Last_Name__c'] = payload.playerLastNameC?.value; | |
payload['Player_Id__c'] = payload.playerIDC?.value; | |
payload['Level'] = payload.lod4LevelC?.value; | |
</expression-component> | |
<scripting:component> | |
<scripting:script engine="groovy"> | |
[ | |
[ | |
lod4__XID__c: "a0df0000001P152_PropertyCode1", | |
lod4__PropertyCode__c: "PropertyCode1", | |
Name: "PropertyCode1", | |
lod4__Site__c: "a0df0000001P152" | |
] | |
] | |
</scripting:script> | |
</scripting:component> | |
<enricher target="#[variable:SFDC_OBJECT_ID_MAPPING]"> | |
<flow-ref name="reservation-service-query"/> | |
</enricher> | |
I've not validated these work. | |
<scripting:component> | |
<scripting:script engine="groovy"> | |
muleContext.registry.lookupFlowConstruct('targetFlow').start() | |
</scripting:script> | |
</scripting:component> | |
-- or -- | |
<expression-component> | |
app.registry.flow1.start(); | |
</expression-component> | |
If the variable has not been set the "." notation will throw an exception. So typically _always_ use flowVars['outboundJmsQueue'] | |
<when expression="org.mule.util.StringUtils.isNotEmpty(sessionVars['outboundJmsQueue'])"> | |
<!-- It is set, so do something --> | |
</when> | |
<when expression="org.mule.util.StringUtils.isNotEmpty(flowVars['outboundJmsQueue'])"> | |
<!-- It is set, so do something --> | |
</when> | |
#[message.inboundProperties['MULE_CORRELATION_ID']] | |
<custom-transformer name="soapFaultTransformer" class="com.xxx.xx.transformer.VelocityMessageTransformer"> | |
<spring:property name="velocityEngine" ref="velocityEngine" /> | |
<spring:property name="templateName" value="soapFault.vm" /> | |
<spring:property name="beanClass"> | |
<spring:bean parent="abstractSoap11Fault"> | |
<spring:property name="faultString" value="Invalid Request" /> | |
<spring:property name="detail" value="This request is not valid" /> | |
</spring:bean> | |
</spring:property> | |
</custom-transformer> | |
<!-- Different ways I came up with to split the payload based on return characters --> | |
<!--<expression-transformer>--> | |
<!--StringUtils.split(payload, "\n")--> | |
<!--</expression-transformer>--> | |
<!--<splitter expression="#[groovy:payload.split('[\n\r]+')]"/>--> | |
<splitter expression="#[groovy:payload.readLines()]" doc:name="Splitter"/> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment