diff --git a/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/model/components/IComponent.java b/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/model/components/IComponent.java
index 2f33a6cdd5..bc6ca93ce0 100644
--- a/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/model/components/IComponent.java
+++ b/main/plugins/org.talend.core.runtime/src/main/java/org/talend/core/model/components/IComponent.java
@@ -191,6 +191,14 @@ public interface IComponent {
String getOutputType();
+ /**
+ * This method is used to define if a component generates a Spark Action.
+ *
+ * @return a boolean which defines if the component generates a Spark Action.
+ */
+
+ boolean isSparkAction();
+
String getPartitioning();
boolean isSupportDbType();
diff --git a/main/plugins/org.talend.core/src/main/java/org/talend/core/model/runprocess/data/SparkBatchPerformance.java b/main/plugins/org.talend.core/src/main/java/org/talend/core/model/runprocess/data/SparkBatchPerformance.java
new file mode 100644
index 0000000000..5f2af0f700
--- /dev/null
+++ b/main/plugins/org.talend.core/src/main/java/org/talend/core/model/runprocess/data/SparkBatchPerformance.java
@@ -0,0 +1,82 @@
+// ============================================================================
+//
+// Copyright (C) 2006-2015 Talend Inc. - www.talend.com
+//
+// This source code is available under agreement available at
+// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
+//
+// You should have received a copy of the agreement
+// along with this program; if not, write to Talend SA
+// 9 rue Pages 92150 Suresnes, France
+//
+// ============================================================================
+package org.talend.core.model.runprocess.data;
+
+import java.text.DecimalFormat;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.TreeMap;
+
+import org.apache.commons.lang.StringUtils;
+import org.talend.core.model.process.EConnectionType;
+
+/**
+ * DOC zwei class global comment. Detailled comment
+ */
+public class SparkBatchPerformance extends CommonPerformance {
+
+ private static final String COLOR_RUNNING = "#AA3322"; //$NON-NLS-1$
+
+ private static final String COLOR_FINISHED = "#229922"; //$NON-NLS-1$
+
+ private static final short LIMIT = 2;
+
+ private Map jobProgress = new HashMap<>();
+
+ private Map jobMode = new HashMap<>();
+
+ public SparkBatchPerformance(EConnectionType eConnectionType) {
+ super(eConnectionType);
+ }
+
+ public void resetStatus() {
+ jobProgress.clear();
+ jobMode.clear();
+ }
+
+ @Override
+ public String getLabel(String msg) {
+ if (StringUtils.isEmpty(msg)) {
+ return super.getLabel(msg);
+ }
+ String[] part = msg.split("\\|"); //$NON-NLS-1$
+ if (part != null && part.length == 4) {
+ jobProgress.put(new Integer(part[1]), parseSize(part[3]).toString());
+ jobMode.put(new Integer(part[1]), new Integer(part[2]));
+
+ return createHtmlText();
+ }
+ return null;
+ }
+
+ private String parseSize(String numStr) {
+ DecimalFormat df = new DecimalFormat("###.##"); //$NON-NLS-1$
+ return df.format(new Float(numStr).floatValue());
+ }
+
+ public String createHtmlText() {
+ StringBuilder html = new StringBuilder();
+ TreeMap treeMap = new TreeMap<>(jobProgress);
+ short index = 0;
+ for (Integer job : treeMap.descendingKeySet()) {
+
+ html.append("Job " + job + " : " + jobProgress.get(job) + "%"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ html.append("
"); //$NON-NLS-1$
+ if (++index == LIMIT) {
+ break;
+ }
+ }
+ return html.toString();
+ }
+}
diff --git a/main/plugins/org.talend.librariesmanager/resources/java/routines/system/MRRunStat.java b/main/plugins/org.talend.librariesmanager/resources/java/routines/system/MRRunStat.java
index 775c436276..c3554fb34a 100644
--- a/main/plugins/org.talend.librariesmanager/resources/java/routines/system/MRRunStat.java
+++ b/main/plugins/org.talend.librariesmanager/resources/java/routines/system/MRRunStat.java
@@ -27,11 +27,11 @@ public class MRRunStat implements Runnable {
private java.net.Socket s;
- private java.io.PrintWriter pred;
+ protected java.io.PrintWriter pred;
private boolean jobIsFinished = false;
- private List messages = new ArrayList();
+ private List messages = new ArrayList<>();
public class StatBean {
@@ -156,6 +156,7 @@ public class MRRunStat implements Runnable {
t.start();
}
+ @Override
public void run() {
if (!debug) {
synchronized (this) {
diff --git a/main/plugins/org.talend.librariesmanager/resources/java/routines/system/SparkRunStat.java b/main/plugins/org.talend.librariesmanager/resources/java/routines/system/SparkRunStat.java
new file mode 100644
index 0000000000..5e78952dd5
--- /dev/null
+++ b/main/plugins/org.talend.librariesmanager/resources/java/routines/system/SparkRunStat.java
@@ -0,0 +1,114 @@
+// ============================================================================
+//
+// Copyright (C) 2006-2015 Talend Inc. - www.talend.com
+//
+// This source code is available under agreement available at
+// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
+//
+// You should have received a copy of the agreement
+// along with this program; if not, write to Talend SA
+// 9 rue Pages 92150 Suresnes, France
+//
+// ============================================================================
+package routines.system;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * created by bchen on Jul 24, 2013 Detailled comment
+ *
+ */
+public class SparkRunStat extends MRRunStat {
+
+ private List messages = new ArrayList<>();
+
+ public SparkRunStat() {
+ super();
+ }
+
+ public class StatBean {
+
+ private String connectionId;
+
+ private int mode;
+
+ private float progress;
+
+ private int jobId;
+
+ public String getConnectionId() {
+ return this.connectionId;
+ }
+
+ public void setConnectionId(String connectionId) {
+ this.connectionId = connectionId;
+ }
+
+ public int getJobId() {
+ return this.jobId;
+ }
+
+ public void setJobId(int jobId) {
+ this.jobId = jobId;
+ }
+
+ public int getMode() {
+ return this.mode;
+ }
+
+ public void setMode(int mode) {
+ this.mode = mode;
+ }
+
+ public float getProgress() {
+ return this.progress;
+ }
+
+ public void setProgress(float progress) {
+ this.progress = progress;
+ }
+
+ public List toStatFormat() {
+ List stats = new ArrayList<>();
+ for (String connectionId : this.connectionId.split(";")) {
+ stats.add("1|" + rootPid + "|" + fatherPid + "|" + pid + "|" + connectionId + "|" + this.jobId + "|" + this.mode
+ + "|" + this.progress);
+ }
+ return stats;
+ }
+
+ }
+
+ public StatBean createSparkStatBean() {
+ return new StatBean();
+ }
+
+ @Override
+ public void sendMessages() {
+ for (StatBean message : messages) {
+ for (String stat : message.toStatFormat()) {
+ pred.println(stat);
+ }
+ }
+ messages.clear();
+ }
+
+ public synchronized void updateSparkProgress(StatBean message) {
+ messages.add(message);
+ }
+
+ // for feature:10589
+ private String rootPid = null;
+
+ private String fatherPid = null;
+
+ private String pid = "0";
+
+ // Notice: this API should be invoked after startThreadStat() closely.
+ public void setAllPID(String rootPid, String fatherPid, String pid) {
+ this.rootPid = rootPid;
+ this.fatherPid = fatherPid;
+ this.pid = pid;
+ }
+}
diff --git a/main/plugins/org.talend.model/model/Component.ecore b/main/plugins/org.talend.model/model/Component.ecore
index 9a5f9224d6..6da6501162 100644
--- a/main/plugins/org.talend.model/model/Component.ecore
+++ b/main/plugins/org.talend.model/model/Component.ecore
@@ -904,6 +904,14 @@
+
+
+
+
+
+
+
diff --git a/main/plugins/org.talend.model/model/Component.xsd b/main/plugins/org.talend.model/model/Component.xsd
index f18cdbf4c9..ab38ecc67f 100644
--- a/main/plugins/org.talend.model/model/Component.xsd
+++ b/main/plugins/org.talend.model/model/Component.xsd
@@ -1,442 +1,511 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Used only for virtual components
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- BUILTIN can only be used when CTYPE = 'FLOW'
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Not used for the moment
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- On TABLE mode: - FIELD can be either TEXT,
- CHECK, CLOSED_LIST, COLUMN_LIST or
- PREV_COLUMN_LIST - VALUE is used for TEXT,
- CHECK
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Used only for virtual components
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ BUILTIN can only be used when CTYPE = 'FLOW'
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Not used for the moment
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ On TABLE mode: - FIELD can be either TEXT,
+ CHECK, CLOSED_LIST, COLUMN_LIST or
+ PREV_COLUMN_LIST - VALUE is used for TEXT,
+ CHECK
- On CLOSED_LIST mode: - FIELD is not used -
- READONLY is not used
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Used for combo box in TABLE
- field
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Used for TEXT or CHECK field
-
-
-
-
-
-
- Used for CLOSED_LIST or TABLE field
-
-
-
-
-
-
- Used only for SCHEMA_TYPE field
-
-
-
-
-
-
- This will run an external java code in a given
- jar.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ On CLOSED_LIST mode: - FIELD is not used -
+ READONLY is not used
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Used for combo box in TABLE
+ field
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Used for TEXT or CHECK field
+
+
+
+
+
+
+ Used for CLOSED_LIST or TABLE field
+
+
+
+
+
+
+ Used only for SCHEMA_TYPE field
+
+
+
+
+
+
+ This will run an external java code in a given
+ jar.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/ComponentPackage.java b/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/ComponentPackage.java
index 9bd6dd7a2f..55d224cc1b 100644
--- a/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/ComponentPackage.java
+++ b/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/ComponentPackage.java
@@ -1230,6 +1230,15 @@ public interface ComponentPackage extends EPackage {
*/
int HEADER_TYPE__OUTPUTTYPE = 34;
+ /**
+ * The feature id for the 'SPARKACTION' attribute.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ int HEADER_TYPE__SPARKACTION = 35;
+
/**
* The number of structural features of the 'HEADER Type' class.
*
@@ -1237,7 +1246,7 @@ public interface ComponentPackage extends EPackage {
* @generated
* @ordered
*/
- int HEADER_TYPE_FEATURE_COUNT = 35;
+ int HEADER_TYPE_FEATURE_COUNT = 36;
/**
* The meta object id for the '{@link org.talend.designer.core.model.utils.emf.component.impl.IMPORTSTypeImpl IMPORTS Type}' class.
@@ -3729,6 +3738,17 @@ public interface ComponentPackage extends EPackage {
*/
EAttribute getHEADERType_OUTPUTTYPE();
+ /**
+ * Returns the meta object for the attribute '{@link org.talend.designer.core.model.utils.emf.component.HEADERType#isSPARKACTION SPARKACTION}'.
+ *
+ *
+ * @return the meta object for the attribute 'SPARKACTION'.
+ * @see org.talend.designer.core.model.utils.emf.component.HEADERType#isSPARKACTION()
+ * @see #getHEADERType()
+ * @generated
+ */
+ EAttribute getHEADERType_SPARKACTION();
+
/**
* Returns the meta object for the attribute '{@link org.talend.designer.core.model.utils.emf.component.HEADERType#getTYPE TYPE}'.
*
@@ -6029,6 +6049,14 @@ public interface ComponentPackage extends EPackage {
*/
EAttribute HEADER_TYPE__OUTPUTTYPE = eINSTANCE.getHEADERType_OUTPUTTYPE();
+ /**
+ * The meta object literal for the 'SPARKACTION' attribute feature.
+ *
+ *
+ * @generated
+ */
+ EAttribute HEADER_TYPE__SPARKACTION = eINSTANCE.getHEADERType_SPARKACTION();
+
/**
* The meta object literal for the 'TYPE' attribute feature.
*
diff --git a/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/HEADERType.java b/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/HEADERType.java
index 8f8f3586e4..7f1970730e 100644
--- a/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/HEADERType.java
+++ b/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/HEADERType.java
@@ -49,6 +49,7 @@ import org.eclipse.emf.ecore.EObject;
* {@link org.talend.designer.core.model.utils.emf.component.HEADERType#getEQUIVALENT EQUIVALENT}
* {@link org.talend.designer.core.model.utils.emf.component.HEADERType#getINPUTTYPE INPUTTYPE}
* {@link org.talend.designer.core.model.utils.emf.component.HEADERType#getOUTPUTTYPE OUTPUTTYPE}
+ * {@link org.talend.designer.core.model.utils.emf.component.HEADERType#isSPARKACTION SPARKACTION}
*
*
*
@@ -1257,6 +1258,61 @@ public interface HEADERType extends EObject {
*/
void setOUTPUTTYPE(String value);
+ /**
+ * Returns the value of the 'SPARKACTION' attribute.
+ * The default value is "false".
+ *
+ *
+ * If the meaning of the 'SPARKACTION' attribute isn't clear,
+ * there really should be more of a description here...
+ *
+ *
+ * @return the value of the 'SPARKACTION' attribute.
+ * @see #isSetSPARKACTION()
+ * @see #unsetSPARKACTION()
+ * @see #setSPARKACTION(boolean)
+ * @see org.talend.designer.core.model.utils.emf.component.ComponentPackage#getHEADERType_SPARKACTION()
+ * @model default="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean"
+ * extendedMetaData="kind='attribute' name='SPARKACTION' namespace='##targetNamespace'"
+ * @generated
+ */
+ boolean isSPARKACTION();
+
+ /**
+ * Sets the value of the '{@link org.talend.designer.core.model.utils.emf.component.HEADERType#isSPARKACTION SPARKACTION}' attribute.
+ *
+ *
+ * @param value the new value of the 'SPARKACTION' attribute.
+ * @see #isSetSPARKACTION()
+ * @see #unsetSPARKACTION()
+ * @see #isSPARKACTION()
+ * @generated
+ */
+ void setSPARKACTION(boolean value);
+
+ /**
+ * Unsets the value of the '{@link org.talend.designer.core.model.utils.emf.component.HEADERType#isSPARKACTION SPARKACTION}' attribute.
+ *
+ *
+ * @see #isSetSPARKACTION()
+ * @see #isSPARKACTION()
+ * @see #setSPARKACTION(boolean)
+ * @generated
+ */
+ void unsetSPARKACTION();
+
+ /**
+ * Returns whether the value of the '{@link org.talend.designer.core.model.utils.emf.component.HEADERType#isSPARKACTION SPARKACTION}' attribute is set.
+ *
+ *
+ * @return whether the value of the 'SPARKACTION' attribute is set.
+ * @see #unsetSPARKACTION()
+ * @see #isSPARKACTION()
+ * @see #setSPARKACTION(boolean)
+ * @generated
+ */
+ boolean isSetSPARKACTION();
+
/**
* Returns the value of the 'TYPE' attribute.
*
diff --git a/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/impl/ComponentPackageImpl.java b/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/impl/ComponentPackageImpl.java
index 27d4a837fa..0b5e82cd29 100644
--- a/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/impl/ComponentPackageImpl.java
+++ b/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/impl/ComponentPackageImpl.java
@@ -1350,6 +1350,15 @@ public class ComponentPackageImpl extends EPackageImpl implements ComponentPacka
return (EAttribute)headerTypeEClass.getEStructuralFeatures().get(34);
}
+ /**
+ *
+ *
+ * @generated
+ */
+ public EAttribute getHEADERType_SPARKACTION() {
+ return (EAttribute)headerTypeEClass.getEStructuralFeatures().get(35);
+ }
+
/**
*
*
@@ -2632,6 +2641,7 @@ public class ComponentPackageImpl extends EPackageImpl implements ComponentPacka
createEAttribute(headerTypeEClass, HEADER_TYPE__EQUIVALENT);
createEAttribute(headerTypeEClass, HEADER_TYPE__INPUTTYPE);
createEAttribute(headerTypeEClass, HEADER_TYPE__OUTPUTTYPE);
+ createEAttribute(headerTypeEClass, HEADER_TYPE__SPARKACTION);
importsTypeEClass = createEClass(IMPORTS_TYPE);
createEReference(importsTypeEClass, IMPORTS_TYPE__IMPORT);
@@ -2931,6 +2941,7 @@ public class ComponentPackageImpl extends EPackageImpl implements ComponentPacka
initEAttribute(getHEADERType_EQUIVALENT(), theXMLTypePackage.getString(), "eQUIVALENT", "false", 0, 1, HEADERType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getHEADERType_INPUTTYPE(), theXMLTypePackage.getString(), "iNPUTTYPE", null, 0, 1, HEADERType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getHEADERType_OUTPUTTYPE(), theXMLTypePackage.getString(), "oUTPUTTYPE", null, 0, 1, HEADERType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getHEADERType_SPARKACTION(), theXMLTypePackage.getBoolean(), "sPARKACTION", "false", 0, 1, HEADERType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(importsTypeEClass, IMPORTSType.class, "IMPORTSType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getIMPORTSType_IMPORT(), this.getIMPORTType(), null, "iMPORT", null, 0, -1, IMPORTSType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -4011,6 +4022,14 @@ public class ComponentPackageImpl extends EPackageImpl implements ComponentPacka
"name", "OUTPUTTYPE",
"namespace", "##targetNamespace"
});
+ addAnnotation
+ (getHEADERType_SPARKACTION(),
+ source,
+ new String[] {
+ "kind", "attribute",
+ "name", "SPARKACTION",
+ "namespace", "##targetNamespace"
+ });
addAnnotation
(importsTypeEClass,
source,
diff --git a/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/impl/HEADERTypeImpl.java b/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/impl/HEADERTypeImpl.java
index 9d89f4b104..4c35d4d11e 100644
--- a/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/impl/HEADERTypeImpl.java
+++ b/main/plugins/org.talend.model/src/main/java/org/talend/designer/core/model/utils/emf/component/impl/HEADERTypeImpl.java
@@ -59,6 +59,7 @@ import org.talend.designer.core.model.utils.emf.component.HEADERType;
* {@link org.talend.designer.core.model.utils.emf.component.impl.HEADERTypeImpl#getEQUIVALENT EQUIVALENT}
* {@link org.talend.designer.core.model.utils.emf.component.impl.HEADERTypeImpl#getINPUTTYPE INPUTTYPE}
* {@link org.talend.designer.core.model.utils.emf.component.impl.HEADERTypeImpl#getOUTPUTTYPE OUTPUTTYPE}
+ * {@link org.talend.designer.core.model.utils.emf.component.impl.HEADERTypeImpl#isSPARKACTION SPARKACTION}
*
*
*
@@ -890,6 +891,35 @@ public class HEADERTypeImpl extends EObjectImpl implements HEADERType {
*/
protected String oUTPUTTYPE = OUTPUTTYPE_EDEFAULT;
+ /**
+ * The default value of the '{@link #isSPARKACTION() SPARKACTION}' attribute.
+ *
+ *
+ * @see #isSPARKACTION()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean SPARKACTION_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isSPARKACTION() SPARKACTION}' attribute.
+ *
+ *
+ * @see #isSPARKACTION()
+ * @generated
+ * @ordered
+ */
+ protected boolean sPARKACTION = SPARKACTION_EDEFAULT;
+
+ /**
+ * This is true if the SPARKACTION attribute has been set.
+ *
+ *
+ * @generated
+ * @ordered
+ */
+ protected boolean sPARKACTIONESet;
+
/**
*
*
@@ -1910,6 +1940,52 @@ public class HEADERTypeImpl extends EObjectImpl implements HEADERType {
eNotify(new ENotificationImpl(this, Notification.SET, ComponentPackage.HEADER_TYPE__OUTPUTTYPE, oldOUTPUTTYPE, oUTPUTTYPE));
}
+ /**
+ *
+ *
+ * @generated
+ */
+ public boolean isSPARKACTION() {
+ return sPARKACTION;
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void setSPARKACTION(boolean newSPARKACTION) {
+ boolean oldSPARKACTION = sPARKACTION;
+ sPARKACTION = newSPARKACTION;
+ boolean oldSPARKACTIONESet = sPARKACTIONESet;
+ sPARKACTIONESet = true;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ComponentPackage.HEADER_TYPE__SPARKACTION, oldSPARKACTION, sPARKACTION, !oldSPARKACTIONESet));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public void unsetSPARKACTION() {
+ boolean oldSPARKACTION = sPARKACTION;
+ boolean oldSPARKACTIONESet = sPARKACTIONESet;
+ sPARKACTION = SPARKACTION_EDEFAULT;
+ sPARKACTIONESet = false;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.UNSET, ComponentPackage.HEADER_TYPE__SPARKACTION, oldSPARKACTION, SPARKACTION_EDEFAULT, oldSPARKACTIONESet));
+ }
+
+ /**
+ *
+ *
+ * @generated
+ */
+ public boolean isSetSPARKACTION() {
+ return sPARKACTIONESet;
+ }
+
/**
*
*
@@ -2130,6 +2206,8 @@ public class HEADERTypeImpl extends EObjectImpl implements HEADERType {
return getINPUTTYPE();
case ComponentPackage.HEADER_TYPE__OUTPUTTYPE:
return getOUTPUTTYPE();
+ case ComponentPackage.HEADER_TYPE__SPARKACTION:
+ return isSPARKACTION() ? Boolean.TRUE : Boolean.FALSE;
}
return super.eGet(featureID, resolve, coreType);
}
@@ -2246,6 +2324,9 @@ public class HEADERTypeImpl extends EObjectImpl implements HEADERType {
case ComponentPackage.HEADER_TYPE__OUTPUTTYPE:
setOUTPUTTYPE((String)newValue);
return;
+ case ComponentPackage.HEADER_TYPE__SPARKACTION:
+ setSPARKACTION(((Boolean)newValue).booleanValue());
+ return;
}
super.eSet(featureID, newValue);
}
@@ -2362,6 +2443,9 @@ public class HEADERTypeImpl extends EObjectImpl implements HEADERType {
case ComponentPackage.HEADER_TYPE__OUTPUTTYPE:
setOUTPUTTYPE(OUTPUTTYPE_EDEFAULT);
return;
+ case ComponentPackage.HEADER_TYPE__SPARKACTION:
+ unsetSPARKACTION();
+ return;
}
super.eUnset(featureID);
}
@@ -2443,6 +2527,8 @@ public class HEADERTypeImpl extends EObjectImpl implements HEADERType {
return INPUTTYPE_EDEFAULT == null ? iNPUTTYPE != null : !INPUTTYPE_EDEFAULT.equals(iNPUTTYPE);
case ComponentPackage.HEADER_TYPE__OUTPUTTYPE:
return OUTPUTTYPE_EDEFAULT == null ? oUTPUTTYPE != null : !OUTPUTTYPE_EDEFAULT.equals(oUTPUTTYPE);
+ case ComponentPackage.HEADER_TYPE__SPARKACTION:
+ return isSetSPARKACTION();
}
return super.eIsSet(featureID);
}
@@ -2524,6 +2610,8 @@ public class HEADERTypeImpl extends EObjectImpl implements HEADERType {
result.append(iNPUTTYPE);
result.append(", oUTPUTTYPE: ");
result.append(oUTPUTTYPE);
+ result.append(", sPARKACTION: ");
+ if (sPARKACTIONESet) result.append(sPARKACTION); else result.append("");
result.append(')');
return result.toString();
}