test_class.file: flink-core/src/test/java/org/apache/flink/api/common/operators/DualInputSemanticPropertiesTest.java
test_class.identifier: DualInputSemanticPropertiesTest
test_case.body: @Test(expected = SemanticProperties.InvalidSemanticAnnotationException.class)
  	public void testAddForwardedFieldsTargetTwice2() {
  
  		DualInputSemanticProperties sp = new DualInputSemanticProperties();
  		sp.addForwardedField(1, 0, 2);
  		sp.addForwardedField(1, 1, 2);
  	}
test_case.class_method_signature: DualInputSemanticPropertiesTest.testAddForwardedFieldsTargetTwice2()
test_case.full_signature: @Test(expected = SemanticProperties.InvalidSemanticAnnotationException.class) public void testAddForwardedFieldsTargetTwice2()
test_case.identifier: testAddForwardedFieldsTargetTwice2
test_case.invocations: addForwardedField addForwardedField
test_case.modifiers: @Test(expected = SemanticProperties.InvalidSemanticAnnotationException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testAddForwardedFieldsTargetTwice2()
focal_class.declarator: serialVersionUID = 1L
focal_class.modifier: private static final
focal_class.original_string: private static final long serialVersionUID = 1L;
focal_class.type: long
focal_class.var_name: serialVersionUID
focal_class.declarator: fieldMapping1
focal_class.modifier: private
focal_class.original_string: private Map<Integer,FieldSet> fieldMapping1;
focal_class.type: Map<Integer,FieldSet>
focal_class.var_name: fieldMapping1
focal_class.declarator: fieldMapping2
focal_class.modifier: private
focal_class.original_string: private Map<Integer,FieldSet> fieldMapping2;
focal_class.type: Map<Integer,FieldSet>
focal_class.var_name: fieldMapping2
focal_class.declarator: readFields1
focal_class.modifier: private
focal_class.original_string: private FieldSet readFields1;
focal_class.type: FieldSet
focal_class.var_name: readFields1
focal_class.declarator: readFields2
focal_class.modifier: private
focal_class.original_string: private FieldSet readFields2;
focal_class.type: FieldSet
focal_class.var_name: readFields2
focal_class.file: flink-core/src/main/java/org/apache/flink/api/common/operators/DualInputSemanticProperties.java
focal_class.identifier: DualInputSemanticProperties
focal_class.interfaces: implements SemanticProperties
focal_class.class_method_signature: DualInputSemanticProperties.DualInputSemanticProperties()
focal_class.full_signature: public  DualInputSemanticProperties()
focal_class.identifier: DualInputSemanticProperties
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  DualInputSemanticProperties()
focal_class.class_method_signature: DualInputSemanticProperties.getForwardingTargetFields(int input, int sourceField)
focal_class.full_signature: @Override public FieldSet getForwardingTargetFields(int input, int sourceField)
focal_class.identifier: getForwardingTargetFields
focal_class.modifiers: @Override public
focal_class.parameters: (int input, int sourceField)
focal_class.return: FieldSet
focal_class.signature: FieldSet getForwardingTargetFields(int input, int sourceField)
focal_class.class_method_signature: DualInputSemanticProperties.getForwardingSourceField(int input, int targetField)
focal_class.full_signature: @Override public int getForwardingSourceField(int input, int targetField)
focal_class.identifier: getForwardingSourceField
focal_class.modifiers: @Override public
focal_class.parameters: (int input, int targetField)
focal_class.return: int
focal_class.signature: int getForwardingSourceField(int input, int targetField)
focal_class.class_method_signature: DualInputSemanticProperties.getReadFields(int input)
focal_class.full_signature: @Override public FieldSet getReadFields(int input)
focal_class.identifier: getReadFields
focal_class.modifiers: @Override public
focal_class.parameters: (int input)
focal_class.return: FieldSet
focal_class.signature: FieldSet getReadFields(int input)
focal_class.class_method_signature: DualInputSemanticProperties.addForwardedField(int input, int sourceField, int targetField)
focal_class.full_signature: public void addForwardedField(int input, int sourceField, int targetField)
focal_class.identifier: addForwardedField
focal_class.modifiers: public
focal_class.parameters: (int input, int sourceField, int targetField)
focal_class.return: void
focal_class.signature: void addForwardedField(int input, int sourceField, int targetField)
focal_class.class_method_signature: DualInputSemanticProperties.isTargetFieldPresent(int targetField, Map<Integer, FieldSet> fieldMapping)
focal_class.full_signature: private boolean isTargetFieldPresent(int targetField, Map<Integer, FieldSet> fieldMapping)
focal_class.identifier: isTargetFieldPresent
focal_class.modifiers: private
focal_class.parameters: (int targetField, Map<Integer, FieldSet> fieldMapping)
focal_class.return: boolean
focal_class.signature: boolean isTargetFieldPresent(int targetField, Map<Integer, FieldSet> fieldMapping)
focal_class.class_method_signature: DualInputSemanticProperties.addReadFields(int input, FieldSet readFields)
focal_class.full_signature: public void addReadFields(int input, FieldSet readFields)
focal_class.identifier: addReadFields
focal_class.modifiers: public
focal_class.parameters: (int input, FieldSet readFields)
focal_class.return: void
focal_class.signature: void addReadFields(int input, FieldSet readFields)
focal_class.class_method_signature: DualInputSemanticProperties.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_method.body: public void addForwardedField(int input, int sourceField, int targetField) {
  
  		Map<Integer, FieldSet> fieldMapping;
  
  		if (input != 0 && input != 1) {
  			throw new IndexOutOfBoundsException();
  		} else if (input == 0) {
  			fieldMapping = this.fieldMapping1;
  		} else {
  			fieldMapping = this.fieldMapping2;
  		}
  
  		if(isTargetFieldPresent(targetField, fieldMapping)) {
  			throw new InvalidSemanticAnnotationException("Target field "+targetField+" was added twice to input "+input);
  		}
  
  		FieldSet targetFields = fieldMapping.get(sourceField);
  		if (targetFields != null) {
  			fieldMapping.put(sourceField, targetFields.addField(targetField));
  		} else {
  			fieldMapping.put(sourceField, new FieldSet(targetField));
  		}
  	}
focal_method.class_method_signature: DualInputSemanticProperties.addForwardedField(int input, int sourceField, int targetField)
focal_method.full_signature: public void addForwardedField(int input, int sourceField, int targetField)
focal_method.identifier: addForwardedField
focal_method.invocations: isTargetFieldPresent get put addField put
focal_method.modifiers: public
focal_method.parameters: (int input, int sourceField, int targetField)
focal_method.return: void
focal_method.signature: void addForwardedField(int input, int sourceField, int targetField)