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

Minimum Cost to Paint Houses with K Colors

A builder plans to construct N houses in a row, where each house can be…

1 day ago

Longest Absolute Path in File System Representation

Find the length of the longest absolute path to a file within the abstracted file…

3 weeks ago

Efficient Order Log Storage

You manage an e-commerce website and need to keep track of the last N order…

1 month ago

Select a Random Element from a Stream

You are given a stream of elements that is too large to fit into memory.…

1 month ago

Estimate π Using Monte Carlo Method

The formula for the area of a circle is given by πr². Use the Monte…

2 months ago

Longest Substring with K Distinct Characters

Given an integer k and a string s, write a function to determine the length…

2 months ago