falcon-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From samar...@apache.org
Subject [2/6] FALCON 564 contributed by Raghav Gautam
Date Thu, 07 Aug 2014 05:29:18 GMT
http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Output.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Output.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Output.java
deleted file mode 100644
index 8fee1db..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Output.java
+++ /dev/null
@@ -1,119 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-
-package org.apache.falcon.entity.v0.process;
-
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlType;
-
-
-/**
- * <p>Java class for output complex type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="output">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;attribute name="name" use="required" type="{uri:falcon:process:0.1}IDENTIFIER" />
- *       &lt;attribute name="feed" use="required" type="{uri:falcon:process:0.1}IDENTIFIER" />
- *       &lt;attribute name="instance" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "output")
-public class Output {
-
-    @XmlAttribute(name = "name", required = true)
-    protected String name;
-    @XmlAttribute(name = "feed", required = true)
-    protected String feed;
-    @XmlAttribute(name = "instance", required = true)
-    protected String instance;
-
-    /**
-     * Gets the value of the name property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getName() {
-        return name;
-    }
-
-    /**
-     * Sets the value of the name property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setName(String value) {
-        this.name = value;
-    }
-
-    /**
-     * Gets the value of the feed property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getFeed() {
-        return feed;
-    }
-
-    /**
-     * Sets the value of the feed property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setFeed(String value) {
-        this.feed = value;
-    }
-
-    /**
-     * Gets the value of the instance property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getInstance() {
-        return instance;
-    }
-
-    /**
-     * Sets the value of the instance property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setInstance(String value) {
-        this.instance = value;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Outputs.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Outputs.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Outputs.java
deleted file mode 100644
index bd865f1..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Outputs.java
+++ /dev/null
@@ -1,76 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-
-package org.apache.falcon.entity.v0.process;
-
-import java.util.ArrayList;
-import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
-
-
-/**
- * <p>Java class for outputs complex type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="outputs">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;sequence>
- *         &lt;element name="output" type="{uri:falcon:process:0.1}output" maxOccurs="unbounded"/>
- *       &lt;/sequence>
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "outputs", propOrder = {
-    "outputs"
-})
-public class Outputs {
-
-    @XmlElement(name = "output", required = true)
-    protected List<Output> outputs;
-
-    /**
-     * Gets the value of the outputs property.
-     * 
-     * <p>
-     * This accessor method returns a reference to the live list,
-     * not a snapshot. Therefore any modification you make to the
-     * returned list will be present inside the JAXB object.
-     * This is why there is not a <CODE>set</CODE> method for the outputs property.
-     * 
-     * <p>
-     * For example, to add a new item, do as follows:
-     * <pre>
-     *    getOutputs().add(newItem);
-     * </pre>
-     * 
-     * 
-     * <p>
-     * Objects of the following type(s) are allowed in the list
-     * {@link Output }
-     * 
-     * 
-     */
-    public List<Output> getOutputs() {
-        if (outputs == null) {
-            outputs = new ArrayList<Output>();
-        }
-        return this.outputs;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/PolicyType.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/PolicyType.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/PolicyType.java
deleted file mode 100644
index 1e3c2fa..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/PolicyType.java
+++ /dev/null
@@ -1,61 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-
-package org.apache.falcon.entity.v0.process;
-
-import javax.xml.bind.annotation.XmlEnum;
-import javax.xml.bind.annotation.XmlEnumValue;
-import javax.xml.bind.annotation.XmlType;
-
-
-/**
- * <p>Java class for policy-type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * <p>
- * <pre>
- * &lt;simpleType name="policy-type">
- *   &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *     &lt;enumeration value="periodic"/>
- *     &lt;enumeration value="exp-backoff"/>
- *     &lt;enumeration value="final"/>
- *   &lt;/restriction>
- * &lt;/simpleType>
- * </pre>
- * 
- */
-@XmlType(name = "policy-type")
-@XmlEnum
-public enum PolicyType {
-
-    @XmlEnumValue("periodic")
-    PERIODIC("periodic"),
-    @XmlEnumValue("exp-backoff")
-    EXP_BACKOFF("exp-backoff"),
-    @XmlEnumValue("final")
-    FINAL("final");
-    private final String value;
-
-    PolicyType(String v) {
-        value = v;
-    }
-
-    public String value() {
-        return value;
-    }
-
-    public static PolicyType fromValue(String v) {
-        for (PolicyType c: PolicyType.values()) {
-            if (c.value.equals(v)) {
-                return c;
-            }
-        }
-        throw new IllegalArgumentException(v);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Process.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Process.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Process.java
deleted file mode 100644
index fec9521..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Process.java
+++ /dev/null
@@ -1,442 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-
-package org.apache.falcon.entity.v0.process;
-
-import java.util.TimeZone;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.falcon.entity.v0.Entity;
-import org.apache.falcon.entity.v0.Frequency;
-
-
-/**
- * <p>Java class for process complex type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="process">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;sequence>
- *         &lt;element name="tags" type="{uri:falcon:process:0.1}KEY_VALUE_PAIR" minOccurs="0"/>
- *         &lt;element name="clusters" type="{uri:falcon:process:0.1}clusters"/>
- *         &lt;element name="parallel">
- *           &lt;simpleType>
- *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}unsignedShort">
- *               &lt;minInclusive value="1"/>
- *               &lt;maxInclusive value="12"/>
- *             &lt;/restriction>
- *           &lt;/simpleType>
- *         &lt;/element>
- *         &lt;element name="order" type="{uri:falcon:process:0.1}execution-type"/>
- *         &lt;element name="timeout" type="{uri:falcon:process:0.1}frequency-type" minOccurs="0"/>
- *         &lt;element name="frequency" type="{uri:falcon:process:0.1}frequency-type"/>
- *         &lt;element name="timezone" minOccurs="0">
- *           &lt;simpleType>
- *             &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
- *             &lt;/restriction>
- *           &lt;/simpleType>
- *         &lt;/element>
- *         &lt;element name="inputs" type="{uri:falcon:process:0.1}inputs" minOccurs="0"/>
- *         &lt;element name="outputs" type="{uri:falcon:process:0.1}outputs" minOccurs="0"/>
- *         &lt;element name="properties" type="{uri:falcon:process:0.1}properties" minOccurs="0"/>
- *         &lt;element name="workflow" type="{uri:falcon:process:0.1}workflow"/>
- *         &lt;element name="retry" type="{uri:falcon:process:0.1}retry" minOccurs="0"/>
- *         &lt;element name="late-process" type="{uri:falcon:process:0.1}late-process" minOccurs="0"/>
- *       &lt;/sequence>
- *       &lt;attribute name="name" use="required" type="{uri:falcon:process:0.1}IDENTIFIER" />
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "process", propOrder = {
-    "tags",
-    "clusters",
-    "parallel",
-    "order",
-    "timeout",
-    "frequency",
-    "timezone",
-    "inputs",
-    "outputs",
-    "properties",
-    "workflow",
-    "retry",
-    "lateProcess"
-})
-@XmlRootElement(name = "process")
-public class Process
-    extends Entity
-{
-
-    protected String tags;
-    @XmlElement(required = true)
-    protected Clusters clusters;
-    protected int parallel;
-    @XmlElement(required = true)
-    protected ExecutionType order;
-    @XmlElement(type = String.class)
-    @XmlJavaTypeAdapter(Adapter1 .class)
-    protected Frequency timeout;
-    @XmlElement(required = true, type = String.class)
-    @XmlJavaTypeAdapter(Adapter1 .class)
-    protected Frequency frequency;
-    @XmlElement(type = String.class, defaultValue = "UTC")
-    @XmlJavaTypeAdapter(Adapter2 .class)
-    protected TimeZone timezone;
-    protected Inputs inputs;
-    protected Outputs outputs;
-    protected Properties properties;
-    @XmlElement(required = true)
-    protected Workflow workflow;
-    protected Retry retry;
-    @XmlElement(name = "late-process")
-    protected LateProcess lateProcess;
-    @XmlAttribute(name = "name", required = true)
-    protected String name;
-
-    /**
-     * Gets the value of the tags property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getTags() {
-        return tags;
-    }
-
-    /**
-     * Sets the value of the tags property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setTags(String value) {
-        this.tags = value;
-    }
-
-    /**
-     * Gets the value of the clusters property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link Clusters }
-     *     
-     */
-    public Clusters getClusters() {
-        return clusters;
-    }
-
-    /**
-     * Sets the value of the clusters property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link Clusters }
-     *     
-     */
-    public void setClusters(Clusters value) {
-        this.clusters = value;
-    }
-
-    /**
-     * Gets the value of the parallel property.
-     * 
-     */
-    public int getParallel() {
-        return parallel;
-    }
-
-    /**
-     * Sets the value of the parallel property.
-     * 
-     */
-    public void setParallel(int value) {
-        this.parallel = value;
-    }
-
-    /**
-     * Gets the value of the order property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link ExecutionType }
-     *     
-     */
-    public ExecutionType getOrder() {
-        return order;
-    }
-
-    /**
-     * Sets the value of the order property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link ExecutionType }
-     *     
-     */
-    public void setOrder(ExecutionType value) {
-        this.order = value;
-    }
-
-    /**
-     * Gets the value of the timeout property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public Frequency getTimeout() {
-        return timeout;
-    }
-
-    /**
-     * Sets the value of the timeout property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setTimeout(Frequency value) {
-        this.timeout = value;
-    }
-
-    /**
-     * Gets the value of the frequency property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public Frequency getFrequency() {
-        return frequency;
-    }
-
-    /**
-     * Sets the value of the frequency property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setFrequency(Frequency value) {
-        this.frequency = value;
-    }
-
-    /**
-     * Gets the value of the timezone property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public TimeZone getTimezone() {
-        return timezone;
-    }
-
-    /**
-     * Sets the value of the timezone property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setTimezone(TimeZone value) {
-        this.timezone = value;
-    }
-
-    /**
-     * Gets the value of the inputs property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link Inputs }
-     *     
-     */
-    public Inputs getInputs() {
-        return inputs;
-    }
-
-    /**
-     * Sets the value of the inputs property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link Inputs }
-     *     
-     */
-    public void setInputs(Inputs value) {
-        this.inputs = value;
-    }
-
-    /**
-     * Gets the value of the outputs property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link Outputs }
-     *     
-     */
-    public Outputs getOutputs() {
-        return outputs;
-    }
-
-    /**
-     * Sets the value of the outputs property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link Outputs }
-     *     
-     */
-    public void setOutputs(Outputs value) {
-        this.outputs = value;
-    }
-
-    /**
-     * Gets the value of the properties property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link Properties }
-     *     
-     */
-    public Properties getProperties() {
-        return properties;
-    }
-
-    /**
-     * Sets the value of the properties property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link Properties }
-     *     
-     */
-    public void setProperties(Properties value) {
-        this.properties = value;
-    }
-
-    /**
-     * Gets the value of the workflow property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link Workflow }
-     *     
-     */
-    public Workflow getWorkflow() {
-        return workflow;
-    }
-
-    /**
-     * Sets the value of the workflow property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link Workflow }
-     *     
-     */
-    public void setWorkflow(Workflow value) {
-        this.workflow = value;
-    }
-
-    /**
-     * Gets the value of the retry property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link Retry }
-     *     
-     */
-    public Retry getRetry() {
-        return retry;
-    }
-
-    /**
-     * Sets the value of the retry property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link Retry }
-     *     
-     */
-    public void setRetry(Retry value) {
-        this.retry = value;
-    }
-
-    /**
-     * Gets the value of the lateProcess property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link LateProcess }
-     *     
-     */
-    public LateProcess getLateProcess() {
-        return lateProcess;
-    }
-
-    /**
-     * Sets the value of the lateProcess property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link LateProcess }
-     *     
-     */
-    public void setLateProcess(LateProcess value) {
-        this.lateProcess = value;
-    }
-
-    /**
-     * Gets the value of the name property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getName() {
-        return name;
-    }
-
-    /**
-     * Sets the value of the name property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setName(String value) {
-        this.name = value;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Properties.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Properties.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Properties.java
deleted file mode 100644
index 5b0020e..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Properties.java
+++ /dev/null
@@ -1,76 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-
-package org.apache.falcon.entity.v0.process;
-
-import java.util.ArrayList;
-import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlType;
-
-
-/**
- * <p>Java class for properties complex type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="properties">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;sequence>
- *         &lt;element name="property" type="{uri:falcon:process:0.1}property" maxOccurs="unbounded" minOccurs="0"/>
- *       &lt;/sequence>
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "properties", propOrder = {
-    "properties"
-})
-public class Properties {
-
-    @XmlElement(name = "property")
-    protected List<Property> properties;
-
-    /**
-     * Gets the value of the properties property.
-     * 
-     * <p>
-     * This accessor method returns a reference to the live list,
-     * not a snapshot. Therefore any modification you make to the
-     * returned list will be present inside the JAXB object.
-     * This is why there is not a <CODE>set</CODE> method for the properties property.
-     * 
-     * <p>
-     * For example, to add a new item, do as follows:
-     * <pre>
-     *    getProperties().add(newItem);
-     * </pre>
-     * 
-     * 
-     * <p>
-     * Objects of the following type(s) are allowed in the list
-     * {@link Property }
-     * 
-     * 
-     */
-    public List<Property> getProperties() {
-        if (properties == null) {
-            properties = new ArrayList<Property>();
-        }
-        return this.properties;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Property.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Property.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Property.java
deleted file mode 100644
index 794a1a7..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Property.java
+++ /dev/null
@@ -1,92 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-
-package org.apache.falcon.entity.v0.process;
-
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlType;
-
-
-/**
- * <p>Java class for property complex type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="property">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- *       &lt;attribute name="value" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "property")
-public class Property {
-
-    @XmlAttribute(name = "name", required = true)
-    protected String name;
-    @XmlAttribute(name = "value", required = true)
-    protected String value;
-
-    /**
-     * Gets the value of the name property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getName() {
-        return name;
-    }
-
-    /**
-     * Sets the value of the name property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setName(String value) {
-        this.name = value;
-    }
-
-    /**
-     * Gets the value of the value property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getValue() {
-        return value;
-    }
-
-    /**
-     * Sets the value of the value property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setValue(String value) {
-        this.value = value;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Retry.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Retry.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Retry.java
deleted file mode 100644
index 07eabba..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Retry.java
+++ /dev/null
@@ -1,120 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-
-package org.apache.falcon.entity.v0.process;
-
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import org.apache.falcon.entity.v0.Frequency;
-
-
-/**
- * <p>Java class for retry complex type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="retry">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;attribute name="policy" use="required" type="{uri:falcon:process:0.1}policy-type" />
- *       &lt;attribute name="delay" use="required" type="{uri:falcon:process:0.1}frequency-type" />
- *       &lt;attribute name="attempts" use="required">
- *         &lt;simpleType>
- *           &lt;restriction base="{http://www.w3.org/2001/XMLSchema}unsignedShort">
- *             &lt;minInclusive value="1"/>
- *           &lt;/restriction>
- *         &lt;/simpleType>
- *       &lt;/attribute>
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "retry")
-public class Retry {
-
-    @XmlAttribute(name = "policy", required = true)
-    protected PolicyType policy;
-    @XmlAttribute(name = "delay", required = true)
-    @XmlJavaTypeAdapter(Adapter1 .class)
-    protected Frequency delay;
-    @XmlAttribute(name = "attempts", required = true)
-    protected int attempts;
-
-    /**
-     * Gets the value of the policy property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link PolicyType }
-     *     
-     */
-    public PolicyType getPolicy() {
-        return policy;
-    }
-
-    /**
-     * Sets the value of the policy property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link PolicyType }
-     *     
-     */
-    public void setPolicy(PolicyType value) {
-        this.policy = value;
-    }
-
-    /**
-     * Gets the value of the delay property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public Frequency getDelay() {
-        return delay;
-    }
-
-    /**
-     * Sets the value of the delay property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setDelay(Frequency value) {
-        this.delay = value;
-    }
-
-    /**
-     * Gets the value of the attempts property.
-     * 
-     */
-    public int getAttempts() {
-        return attempts;
-    }
-
-    /**
-     * Sets the value of the attempts property.
-     * 
-     */
-    public void setAttempts(int value) {
-        this.attempts = value;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Validity.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Validity.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Validity.java
deleted file mode 100644
index 1b013a3..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Validity.java
+++ /dev/null
@@ -1,100 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-
-package org.apache.falcon.entity.v0.process;
-
-import java.util.Date;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-
-
-/**
- * 
- *                 Defines the vailidity of the workflow as start and end time
- *             
- * 
- * <p>Java class for validity complex type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="validity">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;attribute name="start" use="required" type="{uri:falcon:process:0.1}date-time-type" />
- *       &lt;attribute name="end" use="required" type="{uri:falcon:process:0.1}date-time-type" />
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "validity")
-public class Validity {
-
-    @XmlAttribute(name = "start", required = true)
-    @XmlJavaTypeAdapter(Adapter3 .class)
-    protected Date start;
-    @XmlAttribute(name = "end", required = true)
-    @XmlJavaTypeAdapter(Adapter3 .class)
-    protected Date end;
-
-    /**
-     * Gets the value of the start property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public Date getStart() {
-        return start;
-    }
-
-    /**
-     * Sets the value of the start property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setStart(Date value) {
-        this.start = value;
-    }
-
-    /**
-     * Gets the value of the end property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public Date getEnd() {
-        return end;
-    }
-
-    /**
-     * Sets the value of the end property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setEnd(Date value) {
-        this.end = value;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Workflow.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Workflow.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Workflow.java
deleted file mode 100644
index e546836..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/Workflow.java
+++ /dev/null
@@ -1,181 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-
-package org.apache.falcon.entity.v0.process;
-
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlType;
-
-
-/**
- * <p>Java class for workflow complex type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="workflow">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
- *       &lt;attribute name="version" type="{http://www.w3.org/2001/XMLSchema}string" default="1.0" />
- *       &lt;attribute name="engine" type="{uri:falcon:process:0.1}engine-type" default="oozie" />
- *       &lt;attribute name="path" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- *       &lt;attribute name="lib" type="{http://www.w3.org/2001/XMLSchema}string" />
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "workflow")
-public class Workflow {
-
-    @XmlAttribute(name = "name")
-    protected String name;
-    @XmlAttribute(name = "version")
-    protected String version;
-    @XmlAttribute(name = "engine")
-    protected EngineType engine;
-    @XmlAttribute(name = "path", required = true)
-    protected String path;
-    @XmlAttribute(name = "lib")
-    protected String lib;
-
-    /**
-     * Gets the value of the name property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getName() {
-        return name;
-    }
-
-    /**
-     * Sets the value of the name property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setName(String value) {
-        this.name = value;
-    }
-
-    /**
-     * Gets the value of the version property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getVersion() {
-        if (version == null) {
-            return "1.0";
-        } else {
-            return version;
-        }
-    }
-
-    /**
-     * Sets the value of the version property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setVersion(String value) {
-        this.version = value;
-    }
-
-    /**
-     * Gets the value of the engine property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link EngineType }
-     *     
-     */
-    public EngineType getEngine() {
-        if (engine == null) {
-            return EngineType.OOZIE;
-        } else {
-            return engine;
-        }
-    }
-
-    /**
-     * Sets the value of the engine property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link EngineType }
-     *     
-     */
-    public void setEngine(EngineType value) {
-        this.engine = value;
-    }
-
-    /**
-     * Gets the value of the path property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getPath() {
-        return path;
-    }
-
-    /**
-     * Sets the value of the path property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setPath(String value) {
-        this.path = value;
-    }
-
-    /**
-     * Gets the value of the lib property.
-     * 
-     * @return
-     *     possible object is
-     *     {@link String }
-     *     
-     */
-    public String getLib() {
-        return lib;
-    }
-
-    /**
-     * Sets the value of the lib property.
-     * 
-     * @param value
-     *     allowed object is
-     *     {@link String }
-     *     
-     */
-    public void setLib(String value) {
-        this.lib = value;
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/package-info.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/package-info.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/package-info.java
deleted file mode 100644
index f68ce95..0000000
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/entity/v0/process/package-info.java
+++ /dev/null
@@ -1,9 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.4 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2014.05.28 at 10:55:57 AM PDT 
-//
-
-@javax.xml.bind.annotation.XmlSchema(namespace = "uri:falcon:process:0.1", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
-package org.apache.falcon.entity.v0.process;

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ClusterMerlin.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ClusterMerlin.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ClusterMerlin.java
index 4d9fcb8..33b67f7 100644
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ClusterMerlin.java
+++ b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ClusterMerlin.java
@@ -37,7 +37,8 @@ import java.util.Map;
 public class ClusterMerlin extends Cluster {
 
     public ClusterMerlin(String clusterData) {
-        final Cluster cluster = (Cluster) fromString(EntityType.CLUSTER, clusterData);
+        final Cluster cluster = (Cluster) TestEntityUtil.fromString(EntityType.CLUSTER,
+                clusterData);
         try {
             PropertyUtils.copyProperties(this, cluster);
         } catch (IllegalAccessException e) {

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/FeedMerlin.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/FeedMerlin.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/FeedMerlin.java
index eecaa7c..025fc15 100644
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/FeedMerlin.java
+++ b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/FeedMerlin.java
@@ -53,7 +53,7 @@ public class FeedMerlin extends Feed {
     private static final Logger LOGGER = Logger.getLogger(FeedMerlin.class);
 
     public FeedMerlin(String feedData) {
-        this((Feed) fromString(EntityType.FEED, feedData));
+        this((Feed) TestEntityUtil.fromString(EntityType.FEED, feedData));
     }
 
     public FeedMerlin(final Feed feed) {

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ProcessMerlin.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ProcessMerlin.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ProcessMerlin.java
index f58ea2a..48ee049 100644
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ProcessMerlin.java
+++ b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/ProcessMerlin.java
@@ -49,7 +49,7 @@ import java.util.Map;
 /** Class for representing a process xml. */
 public class ProcessMerlin extends Process {
     public ProcessMerlin(String processData) {
-        this((Process) fromString(EntityType.PROCESS, processData));
+        this((Process) TestEntityUtil.fromString(EntityType.PROCESS, processData));
     }
 
     public ProcessMerlin(final Process process) {

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/TestEntityUtil.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/TestEntityUtil.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/TestEntityUtil.java
new file mode 100644
index 0000000..b3f4b3c
--- /dev/null
+++ b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/Entities/TestEntityUtil.java
@@ -0,0 +1,38 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.falcon.regression.Entities;
+
+import org.apache.falcon.entity.v0.Entity;
+import org.apache.falcon.entity.v0.EntityType;
+
+import javax.xml.bind.Unmarshaller;
+import java.io.StringReader;
+
+class TestEntityUtil {
+    public static Entity fromString(EntityType type, String str) {
+        try {
+            Unmarshaller unmarshaller = type.getUnmarshaller();
+            unmarshaller.setSchema(null);
+            return (Entity) unmarshaller.unmarshal(new StringReader(str));
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/bundle/Bundle.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/bundle/Bundle.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/bundle/Bundle.java
index 1152493..5be1730 100644
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/bundle/Bundle.java
+++ b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/bundle/Bundle.java
@@ -19,8 +19,6 @@
 package org.apache.falcon.regression.core.bundle;
 
 import org.apache.commons.lang.StringUtils;
-import org.apache.falcon.entity.v0.Entity;
-import org.apache.falcon.entity.v0.EntityType;
 import org.apache.falcon.entity.v0.Frequency;
 import org.apache.falcon.entity.v0.Frequency.TimeUnit;
 import org.apache.falcon.entity.v0.cluster.Interface;
@@ -28,7 +26,6 @@ import org.apache.falcon.entity.v0.cluster.Interfaces;
 import org.apache.falcon.entity.v0.cluster.Interfacetype;
 import org.apache.falcon.entity.v0.feed.CatalogTable;
 import org.apache.falcon.entity.v0.feed.ClusterType;
-import org.apache.falcon.entity.v0.feed.Feed;
 import org.apache.falcon.entity.v0.feed.Location;
 import org.apache.falcon.entity.v0.feed.LocationType;
 import org.apache.falcon.entity.v0.process.Cluster;
@@ -38,7 +35,6 @@ import org.apache.falcon.entity.v0.process.Inputs;
 import org.apache.falcon.entity.v0.process.LateProcess;
 import org.apache.falcon.entity.v0.process.Output;
 import org.apache.falcon.entity.v0.process.Outputs;
-import org.apache.falcon.entity.v0.process.Process;
 import org.apache.falcon.entity.v0.process.Property;
 import org.apache.falcon.entity.v0.process.Retry;
 import org.apache.falcon.entity.v0.process.Workflow;
@@ -190,9 +186,8 @@ public class Bundle {
      *
      * @return cluster definition in a form of Cluster object
      */
-    public org.apache.falcon.entity.v0.cluster.Cluster getClusterElement() {
-        return (org.apache.falcon.entity.v0.cluster.Cluster)
-                Entity.fromString(EntityType.CLUSTER, getClusters().get(0));
+    public ClusterMerlin getClusterElement() {
+        return new ClusterMerlin(getClusters().get(0));
     }
 
 
@@ -308,7 +303,7 @@ public class Bundle {
      * @param endEl its end in terms of EL expression
      */
     public void setProcessInput(String startEl, String endEl) {
-        Process process = getProcessObject();
+        ProcessMerlin process = getProcessObject();
         Inputs inputs = new Inputs();
         Input input = new Input();
         input.setFeed(Util.readEntityName(getInputFeedFromBundle()));
@@ -322,9 +317,9 @@ public class Bundle {
 
     public void setInvalidData() {
         int index = 0;
-        Feed dataElement = (Feed) Entity.fromString(EntityType.FEED, dataSets.get(0));
+        FeedMerlin dataElement = new FeedMerlin(dataSets.get(0));
         if (!dataElement.getName().contains("raaw-logs16")) {
-            dataElement = (Feed) Entity.fromString(EntityType.FEED, dataSets.get(1));
+            dataElement = new FeedMerlin(dataSets.get(1));
             index = 1;
         }
 
@@ -341,7 +336,7 @@ public class Bundle {
 
 
     public void setFeedValidity(String feedStart, String feedEnd, String feedName) {
-        Feed feedElement = getFeedElement(feedName);
+        FeedMerlin feedElement = getFeedElement(feedName);
         feedElement.getClusters().getClusters().get(0).getValidity()
             .setStart(TimeUtil.oozieDateToDate(feedStart).toDate());
         feedElement.getClusters().getClusters().get(0).getValidity()
@@ -350,9 +345,9 @@ public class Bundle {
     }
 
     public int getInitialDatasetFrequency() {
-        Feed dataElement = (Feed) Entity.fromString(EntityType.FEED, dataSets.get(0));
+        FeedMerlin dataElement = new FeedMerlin(dataSets.get(0));
         if (!dataElement.getName().contains("raaw-logs16")) {
-            dataElement = (Feed) Entity.fromString(EntityType.FEED, dataSets.get(1));
+            dataElement = new FeedMerlin(dataSets.get(1));
         }
         if (dataElement.getFrequency().getTimeUnit() == TimeUnit.hours) {
             return (Integer.parseInt(dataElement.getFrequency().getFrequency())) * 60;
@@ -362,13 +357,13 @@ public class Bundle {
     }
 
     public Date getStartInstanceProcess(Calendar time) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         LOGGER.info("start instance: " + processElement.getInputs().getInputs().get(0).getStart());
         return TimeUtil.getMinutes(processElement.getInputs().getInputs().get(0).getStart(), time);
     }
 
     public Date getEndInstanceProcess(Calendar time) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         LOGGER.info("end instance: " + processElement.getInputs().getInputs().get(0).getEnd());
         LOGGER.info("timezone in getendinstance: " + time.getTimeZone().toString());
         LOGGER.info("time in getendinstance: " + time.getTime());
@@ -376,21 +371,21 @@ public class Bundle {
     }
 
     public void setDatasetInstances(String startInstance, String endInstance) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         processElement.getInputs().getInputs().get(0).setStart(startInstance);
         processElement.getInputs().getInputs().get(0).setEnd(endInstance);
         setProcessData(processElement.toString());
     }
 
     public void setProcessPeriodicity(int frequency, TimeUnit periodicity) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         Frequency frq = new Frequency("" + frequency, periodicity);
         processElement.setFrequency(frq);
         setProcessData(processElement.toString());
     }
 
     public void setProcessInputStartEnd(String start, String end) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         for (Input input : processElement.getInputs().getInputs()) {
             input.setStart(start);
             input.setEnd(end);
@@ -399,7 +394,7 @@ public class Bundle {
     }
 
     public void setOutputFeedPeriodicity(int frequency, TimeUnit periodicity) {
-        Process processElement = (Process) Entity.fromString(EntityType.PROCESS, processData);
+        ProcessMerlin processElement = new ProcessMerlin(processData);
         String outputDataset = null;
         int datasetIndex;
         for (datasetIndex = 0; datasetIndex < dataSets.size(); datasetIndex++) {
@@ -409,7 +404,7 @@ public class Bundle {
             }
         }
 
-        Feed feedElement = (Feed) Entity.fromString(EntityType.FEED, outputDataset);
+        FeedMerlin feedElement = new FeedMerlin(outputDataset);
 
         feedElement.setFrequency(new Frequency("" + frequency, periodicity));
         dataSets.set(datasetIndex, feedElement.toString());
@@ -421,7 +416,7 @@ public class Bundle {
     }
 
     public void setOutputFeedLocationData(String path) {
-        Process processElement = (Process) Entity.fromString(EntityType.PROCESS, processData);
+        ProcessMerlin processElement = new ProcessMerlin(processData);
         String outputDataset = null;
         int datasetIndex;
         for (datasetIndex = 0; datasetIndex < dataSets.size(); datasetIndex++) {
@@ -431,7 +426,7 @@ public class Bundle {
             }
         }
 
-        Feed feedElement = (Feed) Entity.fromString(EntityType.FEED, outputDataset);
+        FeedMerlin feedElement = new FeedMerlin(outputDataset);
         Location l = new Location();
         l.setPath(path);
         l.setType(LocationType.DATA);
@@ -441,7 +436,7 @@ public class Bundle {
     }
 
     public void setProcessConcurrency(int concurrency) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         processElement.setParallel((concurrency));
         setProcessData(processElement.toString());
     }
@@ -455,7 +450,7 @@ public class Bundle {
     }
 
     public void setProcessWorkflow(String wfPath, String libPath, EngineType engineType) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         Workflow w = processElement.getWorkflow();
         if (engineType != null) {
             w.setEngine(engineType);
@@ -468,12 +463,12 @@ public class Bundle {
         setProcessData(processElement.toString());
     }
 
-    public Process getProcessObject() {
-        return (Process) Entity.fromString(EntityType.PROCESS, getProcessData());
+    public ProcessMerlin getProcessObject() {
+        return new ProcessMerlin(getProcessData());
     }
 
-    public Feed getFeedElement(String feedName) {
-        return  (Feed) Entity.fromString(EntityType.FEED, getFeed(feedName));
+    public FeedMerlin getFeedElement(String feedName) {
+        return new FeedMerlin(getFeed(feedName));
     }
 
 
@@ -488,7 +483,7 @@ public class Bundle {
     }
 
 
-    public void writeFeedElement(Feed feedElement, String feedName) {
+    public void writeFeedElement(FeedMerlin feedElement, String feedName) {
         writeFeedElement(feedElement.toString(), feedName);
     }
 
@@ -500,7 +495,7 @@ public class Bundle {
 
     public void setInputFeedPeriodicity(int frequency, TimeUnit periodicity) {
         String feedName = getInputFeedNameFromBundle();
-        Feed feedElement = getFeedElement(feedName);
+        FeedMerlin feedElement = getFeedElement(feedName);
         Frequency frq = new Frequency("" + frequency, periodicity);
         feedElement.setFrequency(frq);
         writeFeedElement(feedElement, feedName);
@@ -519,7 +514,7 @@ public class Bundle {
 
     public void setInputFeedDataPath(String path) {
         String feedName = getInputFeedNameFromBundle();
-        Feed feedElement = getFeedElement(feedName);
+        FeedMerlin feedElement = getFeedElement(feedName);
         final List<Location> locations = feedElement.getLocations().getLocations();
         for (Location location : locations) {
             if (location.getType() == LocationType.DATA) {
@@ -530,7 +525,7 @@ public class Bundle {
     }
 
     public String getFeedDataPathPrefix() {
-        Feed feedElement =
+        FeedMerlin feedElement =
             getFeedElement(getInputFeedNameFromBundle());
         return Util.getPathPrefix(feedElement.getLocations().getLocations().get(0)
             .getPath());
@@ -543,7 +538,7 @@ public class Bundle {
         String start = formatter.print(startDate).replace("/", "T") + "Z";
         String end = formatter.print(endDate).replace("/", "T") + "Z";
 
-        Process processElement = (Process) Entity.fromString(EntityType.PROCESS, processData);
+        ProcessMerlin processElement = new ProcessMerlin(processData);
 
         for (Cluster cluster : processElement.getClusters().getClusters()) {
 
@@ -559,7 +554,7 @@ public class Bundle {
     }
 
     public void setProcessValidity(String startDate, String endDate) {
-        Process processElement = (Process) Entity.fromString(EntityType.PROCESS, processData);
+        ProcessMerlin processElement = new ProcessMerlin(processData);
 
         for (Cluster cluster : processElement.getClusters().getClusters()) {
             org.apache.falcon.entity.v0.process.Validity validity =
@@ -574,7 +569,7 @@ public class Bundle {
     }
 
     public void setProcessLatePolicy(LateProcess lateProcess) {
-        Process processElement = (Process) Entity.fromString(EntityType.PROCESS, processData);
+        ProcessMerlin processElement = new ProcessMerlin(processData);
         processElement.setLateProcess(lateProcess);
         processData = processElement.toString();
     }
@@ -605,7 +600,7 @@ public class Bundle {
     }
 
     public void addProcessInput(String feed, String feedName) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         Input in1 = processElement.getInputs().getInputs().get(0);
         Input in2 = new Input();
         in2.setEnd(in1.getEnd());
@@ -618,7 +613,7 @@ public class Bundle {
     }
 
     public void setProcessName(String newName) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         processElement.setName(newName);
         setProcessData(processElement.toString());
 
@@ -626,7 +621,7 @@ public class Bundle {
 
     public void setRetry(Retry retry) {
         LOGGER.info("old process: " + Util.prettyPrintXml(processData));
-        Process processObject = getProcessObject();
+        ProcessMerlin processObject = getProcessObject();
         processObject.setRetry(retry);
         processData = processObject.toString();
         LOGGER.info("updated process: " + Util.prettyPrintXml(processData));
@@ -634,22 +629,20 @@ public class Bundle {
 
     public void setInputFeedAvailabilityFlag(String flag) {
         String feedName = getInputFeedNameFromBundle();
-        Feed feedElement = getFeedElement(feedName);
+        FeedMerlin feedElement = getFeedElement(feedName);
         feedElement.setAvailabilityFlag(flag);
         writeFeedElement(feedElement, feedName);
     }
 
     public void setCLusterColo(String colo) {
-        org.apache.falcon.entity.v0.cluster.Cluster c =
-            getClusterElement();
+        ClusterMerlin c = getClusterElement();
         c.setColo(colo);
         writeClusterElement(c);
 
     }
 
     public void setClusterInterface(Interfacetype interfacetype, String value) {
-        org.apache.falcon.entity.v0.cluster.Cluster c =
-            getClusterElement();
+        ClusterMerlin c = getClusterElement();
         final Interfaces interfaces = c.getInterfaces();
         final List<Interface> interfaceList = interfaces.getInterfaces();
         for (final Interface anInterface : interfaceList) {
@@ -662,7 +655,7 @@ public class Bundle {
 
     public void setInputFeedTableUri(String tableUri) {
         final String feedStr = getInputFeedFromBundle();
-        Feed feed = (Feed) Entity.fromString(EntityType.FEED, feedStr);
+        FeedMerlin feed = new FeedMerlin(feedStr);
         final CatalogTable catalogTable = new CatalogTable();
         catalogTable.setUri(tableUri);
         feed.setTable(catalogTable);
@@ -671,7 +664,7 @@ public class Bundle {
 
     public void setOutputFeedTableUri(String tableUri) {
         final String feedStr = getOutputFeedFromBundle();
-        Feed feed = (Feed) Entity.fromString(EntityType.FEED, feedStr);
+        FeedMerlin feed = new FeedMerlin(feedStr);
         final CatalogTable catalogTable = new CatalogTable();
         catalogTable.setUri(tableUri);
         feed.setTable(catalogTable);
@@ -679,11 +672,7 @@ public class Bundle {
     }
 
     public void setCLusterWorkingPath(String clusterData, String path) {
-
-        org.apache.falcon.entity.v0.cluster.Cluster c =
-            (org.apache.falcon.entity.v0.cluster.Cluster)
-                Entity.fromString(EntityType.CLUSTER, clusterData);
-
+        ClusterMerlin c = new ClusterMerlin(clusterData);
         for (int i = 0; i < c.getLocations().getLocations().size(); i++) {
             if (c.getLocations().getLocations().get(i).getName().contains("working")) {
                 c.getLocations().getLocations().get(i).setPath(path);
@@ -794,7 +783,7 @@ public class Bundle {
     }
 
     public void setProcessLibPath(String libPath) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         Workflow wf = processElement.getWorkflow();
         wf.setLib(libPath);
         processElement.setWorkflow(wf);
@@ -803,7 +792,7 @@ public class Bundle {
     }
 
     public void setProcessTimeOut(int magnitude, TimeUnit unit) {
-        Process processElement = getProcessObject();
+        ProcessMerlin processElement = getProcessObject();
         Frequency frq = new Frequency("" + magnitude, unit);
         processElement.setTimeout(frq);
         setProcessData(processElement.toString());
@@ -904,7 +893,7 @@ public class Bundle {
      * @param names desired names of inputs
      */
     public void setProcessInputNames(String... names) {
-        Process p = (Process) Entity.fromString(EntityType.PROCESS, processData);
+        ProcessMerlin p = new ProcessMerlin(processData);
         for (int i = 0; i < names.length; i++) {
             p.getInputs().getInputs().get(i).setName(names[i]);
         }
@@ -917,7 +906,7 @@ public class Bundle {
      * @param properties desired properties to be added
      */
     public void addProcessProperty(Property... properties) {
-        Process p = (Process) Entity.fromString(EntityType.PROCESS, processData);
+        ProcessMerlin p = new ProcessMerlin(processData);
         for (Property property : properties) {
             p.getProperties().getProperties().add(property);
         }
@@ -930,7 +919,7 @@ public class Bundle {
      * @param partition partitions to be set
      */
     public void setProcessInputPartition(String... partition) {
-        Process p = (Process) Entity.fromString(EntityType.PROCESS, processData);
+        ProcessMerlin p = new ProcessMerlin(processData);
         for (int i = 0; i < partition.length; i++) {
             p.getInputs().getInputs().get(i).setPartition(partition[i]);
         }
@@ -943,7 +932,7 @@ public class Bundle {
      * @param names new names of the outputs
      */
     public void setProcessOutputNames(String... names) {
-        Process p = (Process) Entity.fromString(EntityType.PROCESS, processData);
+        ProcessMerlin p = new ProcessMerlin(processData);
         Outputs outputs = p.getOutputs();
         Assert.assertEquals(outputs.getOutputs().size(), names.length,
                 "Number of output names is not equal to number of outputs in process");
@@ -959,7 +948,7 @@ public class Bundle {
         String feedName = Util.readEntityName(feed);
         String vProcessData = getProcessData();
 
-        Process processObject = (Process) Entity.fromString(EntityType.PROCESS, vProcessData);
+        ProcessMerlin processObject = new ProcessMerlin(vProcessData);
         final List<Input> processInputs = processObject.getInputs().getInputs();
         Input templateInput = processInputs.get(templateInputIdx);
         Input newInput = new Input();
@@ -976,7 +965,7 @@ public class Bundle {
     public void addOutputFeedToBundle(String feedRefName, String feed, int templateOutputIdx) {
         this.getDataSets().add(feed);
         String feedName = Util.readEntityName(feed);
-        Process processObject = getProcessObject();
+        ProcessMerlin processObject = getProcessObject();
         final List<Output> processOutputs = processObject.getOutputs().getOutputs();
         Output templateOutput = processOutputs.get(templateOutputIdx);
         Output newOutput = new Output();
@@ -995,15 +984,15 @@ public class Bundle {
     }
 
     public String getDatasetPath() {
-        Feed dataElement = (Feed) Entity.fromString(EntityType.FEED, getDataSets().get(0));
+        FeedMerlin dataElement = new FeedMerlin(getDataSets().get(0));
         if (!dataElement.getName().contains("raaw-logs16")) {
-            dataElement = (Feed) Entity.fromString(EntityType.FEED, getDataSets().get(1));
+            dataElement = new FeedMerlin(getDataSets().get(1));
         }
         return dataElement.getLocations().getLocations().get(0).getPath();
     }
 
     public String getInputFeedFromBundle() {
-        Process processObject = (Process) Entity.fromString(EntityType.PROCESS, getProcessData());
+        ProcessMerlin processObject = new ProcessMerlin(getProcessData());
         for (Input input : processObject.getInputs().getInputs()) {
             for (String feed : getDataSets()) {
                 if (Util.readEntityName(feed).equalsIgnoreCase(input.getFeed())) {
@@ -1015,8 +1004,7 @@ public class Bundle {
     }
 
     public String getOutputFeedFromBundle() {
-        Process processObject = (Process) Entity.fromString(EntityType.PROCESS, getProcessData());
-
+        ProcessMerlin processObject = new ProcessMerlin(getProcessData());
         for (Output output : processObject.getOutputs().getOutputs()) {
             for (String feed : getDataSets()) {
                 if (Util.readEntityName(feed).equalsIgnoreCase(output.getFeed())) {
@@ -1029,13 +1017,13 @@ public class Bundle {
 
     public String getOutputFeedNameFromBundle() {
         String feedData = getOutputFeedFromBundle();
-        Feed feedObject = (Feed) Entity.fromString(EntityType.FEED, feedData);
+        FeedMerlin feedObject = new FeedMerlin(feedData);
         return feedObject.getName();
     }
 
     public String getInputFeedNameFromBundle() {
         String feedData = getInputFeedFromBundle();
-        Feed feedObject = (Feed) Entity.fromString(EntityType.FEED, feedData);
+        FeedMerlin feedObject = new FeedMerlin(feedData);
         return feedObject.getName();
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/InstanceUtil.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/InstanceUtil.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/InstanceUtil.java
index 789a256..7b4accd 100644
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/InstanceUtil.java
+++ b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/InstanceUtil.java
@@ -22,22 +22,20 @@ import com.google.gson.GsonBuilder;
 import org.apache.commons.lang.ArrayUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.lang.exception.ExceptionUtils;
-import org.apache.falcon.entity.v0.Entity;
 import org.apache.falcon.entity.v0.EntityType;
 import org.apache.falcon.entity.v0.Frequency;
 import org.apache.falcon.entity.v0.feed.ACL;
 import org.apache.falcon.entity.v0.feed.CatalogTable;
 import org.apache.falcon.entity.v0.feed.Cluster;
 import org.apache.falcon.entity.v0.feed.ClusterType;
-import org.apache.falcon.entity.v0.feed.Feed;
 import org.apache.falcon.entity.v0.feed.Location;
 import org.apache.falcon.entity.v0.feed.LocationType;
 import org.apache.falcon.entity.v0.feed.Locations;
 import org.apache.falcon.entity.v0.feed.Retention;
 import org.apache.falcon.entity.v0.feed.Validity;
 import org.apache.falcon.entity.v0.process.Input;
-import org.apache.falcon.entity.v0.process.Process;
 import org.apache.falcon.regression.Entities.FeedMerlin;
+import org.apache.falcon.regression.Entities.ProcessMerlin;
 import org.apache.falcon.regression.core.bundle.Bundle;
 import org.apache.falcon.regression.core.enumsAndConstants.MerlinConstants;
 import org.apache.falcon.regression.core.helpers.ColoHelper;
@@ -670,7 +668,7 @@ public final class InstanceUtil {
             Retention feedRetention, String clusterName,
             ClusterType clusterType, String partition,
             String tableUri, String... locations) {
-        Feed f = (Feed) Entity.fromString(EntityType.FEED, feed);
+        FeedMerlin f = new FeedMerlin(feed);
         if (clusterName == null) {
             f.getClusters().getClusters().clear();
         } else {
@@ -770,7 +768,7 @@ public final class InstanceUtil {
      * Retrieves prefix (main sub-folders) of feed data path.
      */
     public static String getFeedPrefix(String feed) {
-        Feed feedElement = (Feed) Entity.fromString(EntityType.FEED, feed);
+        FeedMerlin feedElement = new FeedMerlin(feed);
         String p = feedElement.getLocations().getLocations().get(0).getPath();
         p = p.substring(0, p.indexOf('$'));
         return p;
@@ -790,7 +788,7 @@ public final class InstanceUtil {
                 new org.apache.falcon.entity.v0.process.Cluster();
         c.setName(clusterName);
         c.setValidity(validity);
-        Process p = (Process) Entity.fromString(EntityType.PROCESS, process);
+        ProcessMerlin p = new ProcessMerlin(process);
 
         if (clusterName == null) {
             p.getClusters().getClusters().set(0, null);
@@ -808,7 +806,8 @@ public final class InstanceUtil {
      * @return - string representation of process definition
      */
     public static String addProcessInputFeed(String process, String feed, String feedName) {
-        Process processElement = (Process) Entity.fromString(EntityType.PROCESS, process);
+
+        ProcessMerlin processElement = new ProcessMerlin(process);
         Input in1 = processElement.getInputs().getInputs().get(0);
         Input in2 = new Input();
         in2.setEnd(in1.getEnd());
@@ -869,7 +868,8 @@ public final class InstanceUtil {
      * @return modified feed
      */
     public static String setFeedFilePath(String feed, String path) {
-        Feed feedElement = (Feed) Entity.fromString(EntityType.FEED, feed);
+
+        FeedMerlin feedElement = new FeedMerlin(feed);
         feedElement.getLocations().getLocations().get(0).setPath(path);
         return feedElement.toString();
     }
@@ -908,7 +908,7 @@ public final class InstanceUtil {
      */
     public static String setProcessFrequency(String process,
             Frequency frequency) {
-        Process p = (Process) Entity.fromString(EntityType.PROCESS, process);
+        ProcessMerlin p = new ProcessMerlin(process);
 
         p.setFrequency(frequency);
 
@@ -919,7 +919,7 @@ public final class InstanceUtil {
      * Sets new process name.
      */
     public static String setProcessName(String process, String newName) {
-        Process p = (Process) Entity.fromString(EntityType.PROCESS, process);
+        ProcessMerlin p = new ProcessMerlin(process);
 
         p.setName(newName);
 
@@ -936,7 +936,7 @@ public final class InstanceUtil {
      */
     public static String setProcessValidity(String process,
             String startTime, String endTime) {
-        Process processElement = (Process) Entity.fromString(EntityType.PROCESS, process);
+        ProcessMerlin processElement = new ProcessMerlin(process);
 
         for (int i = 0; i < processElement.getClusters().getClusters().size(); i++) {
             processElement.getClusters().getClusters().get(i).getValidity().setStart(
@@ -1226,7 +1226,7 @@ public final class InstanceUtil {
      * @return modified feed
      */
     public static String setFeedFrequency(String feed, Frequency f) {
-        Feed feedElement = (Feed) Entity.fromString(EntityType.FEED, feed);
+        FeedMerlin feedElement = new FeedMerlin(feed);
         feedElement.setFrequency(f);
         return feedElement.toString();
     }

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/Util.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/Util.java b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/Util.java
index 184c7db..3fc9388 100644
--- a/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/Util.java
+++ b/falcon-regression/merlin-core/src/main/java/org/apache/falcon/regression/core/util/Util.java
@@ -24,10 +24,11 @@ import com.google.gson.GsonBuilder;
 import com.google.gson.JsonElement;
 import com.google.gson.JsonParser;
 import com.jcraft.jsch.JSchException;
-import org.apache.falcon.entity.v0.Entity;
 import org.apache.falcon.entity.v0.EntityType;
+import org.apache.falcon.regression.Entities.ClusterMerlin;
+import org.apache.falcon.regression.Entities.FeedMerlin;
+import org.apache.falcon.regression.Entities.ProcessMerlin;
 import org.apache.falcon.regression.core.enumsAndConstants.MerlinConstants;
-import org.apache.falcon.entity.v0.cluster.Cluster;
 import org.apache.falcon.entity.v0.cluster.Interface;
 import org.apache.falcon.entity.v0.cluster.Interfacetype;
 import org.apache.falcon.entity.v0.Frequency;
@@ -35,7 +36,6 @@ import org.apache.falcon.entity.v0.feed.Location;
 import org.apache.falcon.entity.v0.feed.LocationType;
 import org.apache.falcon.entity.v0.feed.Property;
 import org.apache.falcon.entity.v0.process.Process;
-import org.apache.falcon.entity.v0.feed.Feed;
 import org.apache.falcon.regression.core.helpers.ColoHelper;
 import org.apache.falcon.regression.core.interfaces.IEntityManagerHelper;
 import org.apache.falcon.regression.core.response.APIResult;
@@ -110,7 +110,7 @@ public final class Util {
     }
 
     public static String getProcessName(String data) {
-        Process processElement = (Process) Entity.fromString(EntityType.PROCESS, data);
+        ProcessMerlin processElement = new ProcessMerlin(data);
         return processElement.getName();
     }
 
@@ -161,11 +161,11 @@ public final class Util {
 
     public static String readEntityName(String data) {
         if (data.contains("uri:falcon:feed")) {
-            return Entity.fromString(EntityType.FEED, data).getName();
+            return new FeedMerlin(data).getName();
         } else if (data.contains("uri:falcon:process")) {
-            return Entity.fromString(EntityType.PROCESS, data).getName();
+            return new ProcessMerlin(data).getName();
         } else {
-            return Entity.fromString(EntityType.CLUSTER, data).getName();
+            return new ClusterMerlin(data).getName();
         }
     }
 
@@ -195,9 +195,7 @@ public final class Util {
 
 
     public static String setFeedProperty(String feed, String propertyName, String propertyValue) {
-
-        Feed feedObject = (Feed) Entity.fromString(EntityType.FEED, feed);
-
+        FeedMerlin feedObject = new FeedMerlin(feed);
         boolean found = false;
         for (Property prop : feedObject.getProperties().getProperties()) {
             //check if it is present
@@ -222,7 +220,7 @@ public final class Util {
 
 
     public static String getFeedPath(String feed) {
-        Feed feedObject = (Feed) Entity.fromString(EntityType.FEED, feed);
+        FeedMerlin feedObject = new FeedMerlin(feed);
         for (Location location : feedObject.getLocations().getLocations()) {
             if (location.getType() == LocationType.DATA) {
                 return location.getPath();
@@ -233,14 +231,14 @@ public final class Util {
     }
 
     public static String insertLateFeedValue(String feed, Frequency frequency) {
-        Feed feedObject = (Feed) Entity.fromString(EntityType.FEED, feed);
+        FeedMerlin feedObject = new FeedMerlin(feed);
         feedObject.getLateArrival().setCutOff(frequency);
         return feedObject.toString();
     }
 
 
     public static String setFeedPathValue(String feed, String pathValue) {
-        Feed feedObject = (Feed) Entity.fromString(EntityType.FEED, feed);
+        FeedMerlin feedObject = new FeedMerlin(feed);
         for (Location location : feedObject.getLocations().getLocations()) {
             if (location.getType() == LocationType.DATA) {
                 location.setPath(pathValue);
@@ -265,20 +263,20 @@ public final class Util {
     }
 
     public static String setFeedName(String feedString, String newName) {
-        Feed feedObject = (Feed) Entity.fromString(EntityType.FEED, feedString);
+        FeedMerlin feedObject = new FeedMerlin(feedString);
         feedObject.setName(newName);
         return feedObject.toString().trim();
     }
 
     public static String setClusterNameInFeed(String feedString, String clusterName,
                                               int clusterIndex) {
-        Feed feedObject = (Feed) Entity.fromString(EntityType.FEED, feedString);
+        FeedMerlin feedObject = new FeedMerlin(feedString);
         feedObject.getClusters().getClusters().get(clusterIndex).setName(clusterName);
         return feedObject.toString().trim();
     }
 
-    public static Cluster getClusterObject(String clusterXML) {
-        return (Cluster) Entity.fromString(EntityType.CLUSTER, clusterXML);
+    public static ClusterMerlin getClusterObject(String clusterXML) {
+        return new ClusterMerlin(clusterXML);
     }
 
     public static List<String> getInstanceFinishTimes(ColoHelper coloHelper, String workflowId)
@@ -357,7 +355,7 @@ public final class Util {
     }
 
     public static Process getProcessObject(String processData) {
-        return (Process) Entity.fromString(EntityType.PROCESS, processData);
+        return new ProcessMerlin(processData);
     }
 
     public static void printMessageData(JmsMessageConsumer messageConsumer) throws JMSException {
@@ -377,7 +375,7 @@ public final class Util {
 
     public static String getEnvClusterXML(String cluster, String prefix) {
 
-        Cluster clusterObject =
+        ClusterMerlin clusterObject =
             getClusterObject(cluster);
         if ((null == prefix) || prefix.isEmpty()) {
             prefix = "";

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin/pom.xml
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin/pom.xml b/falcon-regression/merlin/pom.xml
index f874157..b01aaaa 100644
--- a/falcon-regression/merlin/pom.xml
+++ b/falcon-regression/merlin/pom.xml
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.falcon.regression</groupId>
         <artifactId>falcon-regression</artifactId>
-        <version>0.5.1-incubating-SNAPSHOT</version>
+        <version>0.6-incubating-SNAPSHOT</version>
     </parent>
     <artifactId>falcon-merlin</artifactId>
     <description>Merlin - Regression test suite for Apache Falcon</description>

http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/9094742b/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/FeedReplicationTest.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/FeedReplicationTest.java b/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/FeedReplicationTest.java
index c524324..8b1dd0e 100644
--- a/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/FeedReplicationTest.java
+++ b/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/FeedReplicationTest.java
@@ -18,6 +18,7 @@
 
 package org.apache.falcon.regression;
 
+import org.apache.falcon.regression.Entities.FeedMerlin;
 import org.apache.falcon.regression.core.bundle.Bundle;
 import org.apache.falcon.entity.v0.EntityType;
 import org.apache.falcon.entity.v0.feed.ActionType;
@@ -280,7 +281,7 @@ public class FeedReplicationTest extends BaseTestClass {
         //configure feed
         String availabilityFlagName = "README.md";
         String feedName = Util.readEntityName(bundles[0].getDataSets().get(0));
-        Feed feedElement = bundles[0].getFeedElement(feedName);
+        FeedMerlin feedElement = bundles[0].getFeedElement(feedName);
         feedElement.setAvailabilityFlag(availabilityFlagName);
         bundles[0].writeFeedElement(feedElement, feedName);
         String feed = bundles[0].getDataSets().get(0);


Mime
View raw message