Class Metadata Selector (.^class)

Class Metadata Selector (.^class)

Returns the class of the Plain Old Java Object (POJO). The value might result from calling a method in a Java class or have a data type (such as String or DateTime) that DataWeave treats as a Java value, for example:

  • { “string” : payload.mystring.^class } might return { “mystring”: “java.lang.String” } if the input payload defines a Java string, such as simplePojo.string = “myString”, in a simple POJO.
  • { “mydate” : payload.mydate.^class } might return { “mydate”: “java.util.Date” }.

In the following Mule app flow, the Logger uses payload.^class to select the Java class of “my string”, set in the Set Payload (set-payload) component.

Mule App XML in Anypoint Studio:

<flow name=”setpayloadobjectFlow” >

<scheduler doc:name=”Scheduler” >

<scheduling-strategy >

<fixed-frequency frequency=”15″ timeUnit=”SECONDS”/>

</scheduling-strategy>

</scheduler>

<!– Set the payload to “my string”. –>

<set-payload value='”my string”‘ doc:name=”Set Payload” />

<!– Select the class to which “my string” belongs. –>

<logger level=”INFO” doc:name=”Logger” message=”#[payload.^class]”/>

</flow>

The Studio console output shows that the payload string belongs to the class java.lang.String.

Console Output in Anypoint Studio:

INFO  2019-04-20 16:10:03,075 [[MuleRuntime].cpuLight.08:

[setpayloadobject].setpayloadobjectFlow.CPU_LITE @6447187e]

[event: 6da29400-63c1-11e9-98e0-8c8590a99d48]

org.mule.runtime.core.internal.processor.LoggerMessageProcessor:

java.lang.String

Follow Me

If you like my post please follow me to read my latest post on programming and technology.

Instagram

Facebook

Recent Posts

Generate Parenthesis | Intuition + Code | Recursion Tree | Backtracking | Java

Problem Statement: Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses. Example…

3 months ago

Square Root of Integer

Given an integer A. Compute and return the square root of A. If A is…

1 year ago

Build Array From Permutation

Given a zero-based permutation nums (0-indexed), build an array ans of the same length where…

1 year ago

DSA: Heap

A heap is a specialized tree-based data structure that satisfies the heap property. It is…

2 years ago

DSA: Trie

What is a Trie in DSA? A trie, often known as a prefix tree, is…

2 years ago

Trees: Lowest Common Ancestor

What is the Lowest Common Ancestor? In a tree, the lowest common ancestor (LCA) of…

2 years ago