Over a million developers have joined DZone.

Oddjob 1.2 New Features – Part 3

· Java Zone

Microservices! They are everywhere, or at least, the term is. When should you use a microservice architecture? What factors should be considered when making that decision? Do the benefits outweigh the costs? Why is everyone so excited about them, anyway?  Brought to you in partnership with IBM.

Properties in Oddjob

Two cool things have happened to properties in Oddjob 1.2. First is that nested property expansion is now supported. This allows us to resolve expressions like


with properties such as:




Let’s see it working:
Properties Demo Running From Console
First running from the console, and now below running in Oddjob Explorer:

Properties Demo Running in Oddjob Explorer

Here’s the configuration:

            <file file="somesys.properties" />
            <input-text prompt="Profile" property="our.profile" />
        <echo><![CDATA[Host is: ${somesys.${our.profile}.host}]]></echo>

The demo is made up of three jobs

Loads the properties file into Oddjob.
Creates a text field prompt that sets the property our.profile

When running from Oddjob Explorer the prompt looks like this:
Profile Property Prompt

Displays the message on the console. Oddjob resolves the property before it is injected into the echo job bean.

The properties job displays all the properties it’s loaded in the properties tab:
Properties Job PropertiesThis brings us nicely on to the second cool feature for properties in Oddjob 1.2, which is that a properties job without any input displays all the properties available at that point in an Oddjob configuration and where they have come from.

If I copy this configuration:



And drop it onto our sequential job in the above example, and then run it. We see:
All Properties
In addition to all the System Properties availble we see our two somesys properties, and our our.profile property. The square brackets show us where the property has come from, which is the name of the job. In our case we did not provide the properties and input jobs with a name and so the default name is used.

And that is two cool new property features in Oddjob 1.2.


Discover how the Watson team is further developing SDKs in Java, Node.js, Python, iOS, and Android to access these services and make programming easy. Brought to you in partnership with IBM.


Published at DZone with permission of Rob Gordon, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}