org.omg.bpmn.bpmn2.impl.InputSetImpl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of org.omg.bpmn.model Show documentation
Show all versions of org.omg.bpmn.model Show documentation
Ecore and generated code for org.omg.bpmn2
The newest version!
/*
* Copyright (c) 2012 - 2024 Data In Motion and others.
* All rights reserved.
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Mark Hoffmann - initial API and implementation
*/
package org.omg.bpmn.bpmn2.impl;
import java.util.Collection;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectWithInverseEList;
import org.eclipse.emf.ecore.util.InternalEList;
import org.omg.bpmn.bpmn2.Bpmn2Package;
import org.omg.bpmn.bpmn2.DataInput;
import org.omg.bpmn.bpmn2.InputSet;
import org.omg.bpmn.bpmn2.OutputSet;
/**
*
* An implementation of the model object 'Input Set'.
*
*
* The following features are implemented:
*
*
* - {@link org.omg.bpmn.bpmn2.impl.InputSetImpl#getDataInputRefs Data Input Refs}
* - {@link org.omg.bpmn.bpmn2.impl.InputSetImpl#getOptionalInputRefs Optional Input Refs}
* - {@link org.omg.bpmn.bpmn2.impl.InputSetImpl#getWhileExecutingInputRefs While Executing Input Refs}
* - {@link org.omg.bpmn.bpmn2.impl.InputSetImpl#getOutputSetRefs Output Set Refs}
* - {@link org.omg.bpmn.bpmn2.impl.InputSetImpl#getName Name}
*
*
* @generated
*/
public class InputSetImpl extends BaseElementImpl implements InputSet {
/**
* The cached value of the '{@link #getDataInputRefs() Data Input Refs}' reference list.
*
*
* @see #getDataInputRefs()
* @generated
* @ordered
*/
protected EList dataInputRefs;
/**
* The cached value of the '{@link #getOptionalInputRefs() Optional Input Refs}' reference list.
*
*
* @see #getOptionalInputRefs()
* @generated
* @ordered
*/
protected EList optionalInputRefs;
/**
* The cached value of the '{@link #getWhileExecutingInputRefs() While Executing Input Refs}' reference list.
*
*
* @see #getWhileExecutingInputRefs()
* @generated
* @ordered
*/
protected EList whileExecutingInputRefs;
/**
* The cached value of the '{@link #getOutputSetRefs() Output Set Refs}' reference list.
*
*
* @see #getOutputSetRefs()
* @generated
* @ordered
*/
protected EList outputSetRefs;
/**
* The default value of the '{@link #getName() Name}' attribute.
*
*
* @see #getName()
* @generated
* @ordered
*/
protected static final String NAME_EDEFAULT = null;
/**
* The cached value of the '{@link #getName() Name}' attribute.
*
*
* @see #getName()
* @generated
* @ordered
*/
protected String name = NAME_EDEFAULT;
/**
*
*
* @generated
*/
protected InputSetImpl() {
super();
}
/**
*
*
* @generated
*/
@Override
protected EClass eStaticClass() {
return Bpmn2Package.eINSTANCE.getInputSet();
}
/**
*
*
* @generated
*/
@Override
public EList getDataInputRefs() {
if (dataInputRefs == null) {
dataInputRefs = new EObjectWithInverseEList.ManyInverse(DataInput.class, this, Bpmn2Package.INPUT_SET__DATA_INPUT_REFS, Bpmn2Package.DATA_INPUT__INPUT_SET_REFS);
}
return dataInputRefs;
}
/**
*
*
* @generated
*/
@Override
public EList getOptionalInputRefs() {
if (optionalInputRefs == null) {
optionalInputRefs = new EObjectWithInverseEList.ManyInverse(DataInput.class, this, Bpmn2Package.INPUT_SET__OPTIONAL_INPUT_REFS, Bpmn2Package.DATA_INPUT__INPUT_SET_WITH_OPTIONAL);
}
return optionalInputRefs;
}
/**
*
*
* @generated
*/
@Override
public EList getWhileExecutingInputRefs() {
if (whileExecutingInputRefs == null) {
whileExecutingInputRefs = new EObjectWithInverseEList.ManyInverse(DataInput.class, this, Bpmn2Package.INPUT_SET__WHILE_EXECUTING_INPUT_REFS, Bpmn2Package.DATA_INPUT__INPUT_SET_WITH_WHILE_EXECUTING);
}
return whileExecutingInputRefs;
}
/**
*
*
* @generated
*/
@Override
public EList getOutputSetRefs() {
if (outputSetRefs == null) {
outputSetRefs = new EObjectWithInverseEList.ManyInverse(OutputSet.class, this, Bpmn2Package.INPUT_SET__OUTPUT_SET_REFS, Bpmn2Package.OUTPUT_SET__INPUT_SET_REFS);
}
return outputSetRefs;
}
/**
*
*
* @generated
*/
@Override
public String getName() {
return name;
}
/**
*
*
* @generated
*/
@Override
public void setName(String newName) {
String oldName = name;
name = newName;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, Bpmn2Package.INPUT_SET__NAME, oldName, name));
}
/**
*
*
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case Bpmn2Package.INPUT_SET__DATA_INPUT_REFS:
return ((InternalEList)(InternalEList>)getDataInputRefs()).basicAdd(otherEnd, msgs);
case Bpmn2Package.INPUT_SET__OPTIONAL_INPUT_REFS:
return ((InternalEList)(InternalEList>)getOptionalInputRefs()).basicAdd(otherEnd, msgs);
case Bpmn2Package.INPUT_SET__WHILE_EXECUTING_INPUT_REFS:
return ((InternalEList)(InternalEList>)getWhileExecutingInputRefs()).basicAdd(otherEnd, msgs);
case Bpmn2Package.INPUT_SET__OUTPUT_SET_REFS:
return ((InternalEList)(InternalEList>)getOutputSetRefs()).basicAdd(otherEnd, msgs);
}
return super.eInverseAdd(otherEnd, featureID, msgs);
}
/**
*
*
* @generated
*/
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case Bpmn2Package.INPUT_SET__DATA_INPUT_REFS:
return ((InternalEList>)getDataInputRefs()).basicRemove(otherEnd, msgs);
case Bpmn2Package.INPUT_SET__OPTIONAL_INPUT_REFS:
return ((InternalEList>)getOptionalInputRefs()).basicRemove(otherEnd, msgs);
case Bpmn2Package.INPUT_SET__WHILE_EXECUTING_INPUT_REFS:
return ((InternalEList>)getWhileExecutingInputRefs()).basicRemove(otherEnd, msgs);
case Bpmn2Package.INPUT_SET__OUTPUT_SET_REFS:
return ((InternalEList>)getOutputSetRefs()).basicRemove(otherEnd, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
*
*
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case Bpmn2Package.INPUT_SET__DATA_INPUT_REFS:
return getDataInputRefs();
case Bpmn2Package.INPUT_SET__OPTIONAL_INPUT_REFS:
return getOptionalInputRefs();
case Bpmn2Package.INPUT_SET__WHILE_EXECUTING_INPUT_REFS:
return getWhileExecutingInputRefs();
case Bpmn2Package.INPUT_SET__OUTPUT_SET_REFS:
return getOutputSetRefs();
case Bpmn2Package.INPUT_SET__NAME:
return getName();
}
return super.eGet(featureID, resolve, coreType);
}
/**
*
*
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case Bpmn2Package.INPUT_SET__DATA_INPUT_REFS:
getDataInputRefs().clear();
getDataInputRefs().addAll((Collection extends DataInput>)newValue);
return;
case Bpmn2Package.INPUT_SET__OPTIONAL_INPUT_REFS:
getOptionalInputRefs().clear();
getOptionalInputRefs().addAll((Collection extends DataInput>)newValue);
return;
case Bpmn2Package.INPUT_SET__WHILE_EXECUTING_INPUT_REFS:
getWhileExecutingInputRefs().clear();
getWhileExecutingInputRefs().addAll((Collection extends DataInput>)newValue);
return;
case Bpmn2Package.INPUT_SET__OUTPUT_SET_REFS:
getOutputSetRefs().clear();
getOutputSetRefs().addAll((Collection extends OutputSet>)newValue);
return;
case Bpmn2Package.INPUT_SET__NAME:
setName((String)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
*
*
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case Bpmn2Package.INPUT_SET__DATA_INPUT_REFS:
getDataInputRefs().clear();
return;
case Bpmn2Package.INPUT_SET__OPTIONAL_INPUT_REFS:
getOptionalInputRefs().clear();
return;
case Bpmn2Package.INPUT_SET__WHILE_EXECUTING_INPUT_REFS:
getWhileExecutingInputRefs().clear();
return;
case Bpmn2Package.INPUT_SET__OUTPUT_SET_REFS:
getOutputSetRefs().clear();
return;
case Bpmn2Package.INPUT_SET__NAME:
setName(NAME_EDEFAULT);
return;
}
super.eUnset(featureID);
}
/**
*
*
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case Bpmn2Package.INPUT_SET__DATA_INPUT_REFS:
return dataInputRefs != null && !dataInputRefs.isEmpty();
case Bpmn2Package.INPUT_SET__OPTIONAL_INPUT_REFS:
return optionalInputRefs != null && !optionalInputRefs.isEmpty();
case Bpmn2Package.INPUT_SET__WHILE_EXECUTING_INPUT_REFS:
return whileExecutingInputRefs != null && !whileExecutingInputRefs.isEmpty();
case Bpmn2Package.INPUT_SET__OUTPUT_SET_REFS:
return outputSetRefs != null && !outputSetRefs.isEmpty();
case Bpmn2Package.INPUT_SET__NAME:
return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
}
return super.eIsSet(featureID);
}
/**
*
*
* @generated
*/
@Override
public String toString() {
if (eIsProxy()) return super.toString();
StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: ");
result.append(name);
result.append(')');
return result.toString();
}
} //InputSetImpl