Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 7

DataWeave Concepts

•Data weave is a the soft expression lang for accessing and


transforing data withMumule appsle
•Not only limited to dw tranforamtion
•Provides module or lambda function creation support
•Supports flow control and Scope Operations.
•Provides fesibility for Streaming for eficient Processing of
Large documents without overloading memory.
Read a XSL file using dwl vs java
 Var input=readUrl(“classpath://test.xlsx”,”application/xlsx”)
 ---
 Input.”datasheet” filter((entry,index)->entry.”AssigneeColumn”==
“Fred M”)

 Main() ,fileinputstream,hssfworkbook(fis),formulaEvalu…
Flow Control & Scope Operations
 %dw 2.0
 output application/json
 var x=20
 ---
 if((x > 0)) "x bigger Number" else "X smaller number"

 Input:-
 {
 "data1": 1000,
 "data2":654
 }

 %dw 2.0
 output application/json
 var d1=payload.data2
 ---
 if((payload.data1 > d1)) payload.data1 ++" bigger Number than " ++ d1 else "X smaller number"
Do Scope
 Create a scope in which new var,Fun,annotations,or namespaces can be declared and Used.
 As a best Practice, declare local variable with in do scopes
 %dw 2.0
 output application/json
 var conversionfac= 100000
 var conversionfacM =1000
 ---
 {
 "distanceinCM":payload.distanceinKM * conversionfac,
 "distanceinM" : payload.distanceinKM * conversionfacM
 }
 ============
 %dw 2.0
 output application/json
 var conversionfac= 100000
 var conversionfacM =1000
 ---
 {
 "distanceinCM":payload.distanceinKM * conversionfac,
 "distanceinM" : do{
 var conversionfac =1000
 ---
 payload.distanceinKM * conversionfac
 }
 }
lookupOperation
 Mule::lookup(‘flow1’,{test:’hello’})
 Efault timeout 2000ms

 Note: subflow calling notsupported.


Prepend,Append,And Remove Operations
 “>>” :
 “<<” :
 “+” :
 “-” :

 %dw 2.0
 output application/json
 ---
 {
 "prepand-array": [1,2,3] >> [4,5],
 "prepandNumber": 1 >>[2,3,4],
 "prepandNumber" : {"key":"value"} >> [2,3]

}

You might also like