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(); }