/**
  *
  * <!-- begin-user-doc -->
  * <!-- end-user-doc -->
  *
  * @generated
  */
 @SuppressWarnings("unchecked")
 @Override
 public void eSet(int featureID, Object newValue) {
   switch (featureID) {
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__LOOP_CARDINALITY:
       setLoopCardinality((Expression) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__LOOP_DATA_INPUT_REF:
       setLoopDataInputRef((ItemAwareElement) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__LOOP_DATA_OUTPUT_REF:
       setLoopDataOutputRef((ItemAwareElement) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__INPUT_DATA_ITEM:
       setInputDataItem((DataInput) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__OUTPUT_DATA_ITEM:
       setOutputDataItem((DataOutput) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__COMPLEX_BEHAVIOR_DEFINITION:
       getComplexBehaviorDefinition().clear();
       getComplexBehaviorDefinition()
           .addAll((Collection<? extends ComplexBehaviorDefinition>) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__COMPLETION_CONDITION:
       setCompletionCondition((Expression) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__BEHAVIOR:
       setBehavior((MultiInstanceBehavior) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__IS_SEQUENTIAL:
       setIsSequential((Boolean) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__NONE_BEHAVIOR_EVENT_REF:
       setNoneBehaviorEventRef((EventDefinition) newValue);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__ONE_BEHAVIOR_EVENT_REF:
       setOneBehaviorEventRef((EventDefinition) newValue);
       return;
   }
   super.eSet(featureID, newValue);
 }
 /**
  *
  * <!-- begin-user-doc -->
  * <!-- end-user-doc -->
  *
  * @generated
  */
 @Override
 public void eUnset(int featureID) {
   switch (featureID) {
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__LOOP_CARDINALITY:
       setLoopCardinality((Expression) null);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__LOOP_DATA_INPUT_REF:
       setLoopDataInputRef((ItemAwareElement) null);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__LOOP_DATA_OUTPUT_REF:
       setLoopDataOutputRef((ItemAwareElement) null);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__INPUT_DATA_ITEM:
       setInputDataItem((DataInput) null);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__OUTPUT_DATA_ITEM:
       setOutputDataItem((DataOutput) null);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__COMPLEX_BEHAVIOR_DEFINITION:
       getComplexBehaviorDefinition().clear();
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__COMPLETION_CONDITION:
       setCompletionCondition((Expression) null);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__BEHAVIOR:
       setBehavior(BEHAVIOR_EDEFAULT);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__IS_SEQUENTIAL:
       setIsSequential(IS_SEQUENTIAL_EDEFAULT);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__NONE_BEHAVIOR_EVENT_REF:
       setNoneBehaviorEventRef((EventDefinition) null);
       return;
     case Bpmn2Package.MULTI_INSTANCE_LOOP_CHARACTERISTICS__ONE_BEHAVIOR_EVENT_REF:
       setOneBehaviorEventRef((EventDefinition) null);
       return;
   }
   super.eUnset(featureID);
 }