Skip to content

Instantly share code, notes, and snippets.

@cazala
Created April 14, 2015 20:34
Show Gist options
  • Save cazala/ae56cc5cbc0671924d56 to your computer and use it in GitHub Desktop.
Save cazala/ae56cc5cbc0671924d56 to your computer and use it in GitHub Desktop.
API Template: Resource Map to JSON
// replace {{projectPkg}}
// replace {{resource}}
// replace {{Resource}}
package org.mule.{{projectPkg}}.transformers;
import java.util.HashMap;
import java.util.Map;
import org.json.JSONObject;
import org.mule.api.MuleMessage;
import org.mule.api.transformer.TransformerException;
import org.mule.transformer.AbstractMessageTransformer;
public class {{Resource}}MapToJson extends AbstractMessageTransformer {
@Override
public Object transformMessage(MuleMessage message, String outputEncoding) throws TransformerException {
Map<String, Object> {{resource}} = (Map<String, Object>) message.getPayload();
Map<String, Object> json{{Resource}} = buildJson{{Resource}}({{resource}});
JSONObject jsonObject = new JSONObject(json{{Resource}});
return jsonObject;
}
private Map<String, Object> buildJson{{Resource}}(Map<String, Object> {{resource}}) {
Map<String, Object> json{{Resource}} = new HashMap<String, Object>();
json{{Resource}}.put("id", {{resource}}.get("id"));
// put all desired the properties
return json{{Resource}};
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment