All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.yaoqiang.bpmn.model.elements.data.DataAssociation Maven / Gradle / Ivy

package org.yaoqiang.bpmn.model.elements.data;

import java.util.List;

import org.yaoqiang.bpmn.model.elements.XMLElement;
import org.yaoqiang.bpmn.model.elements.XMLTextElement;
import org.yaoqiang.bpmn.model.elements.XMLTextElements;
import org.yaoqiang.bpmn.model.elements.core.common.FormalExpression;
import org.yaoqiang.bpmn.model.elements.core.foundation.BaseElement;

/**
 * DataAssociation
 * 
 * @author Shi Yaoqiang([email protected])
 */
public class DataAssociation extends BaseElement {

	private static final long serialVersionUID = 3607266151803729480L;

	public DataAssociation(XMLElement parent) {
		super(parent);
	}

	public DataAssociation(XMLElement parent, String name) {
		super(parent, name);
	}

	protected void fillStructure() {
		XMLTextElements refSourceRef = new XMLTextElements(this, "sourceRef");
		XMLTextElement refTargetRef = new XMLTextElement(this, "targetRef");
		FormalExpression refTransformation = new FormalExpression(this, "transformation");
		Assignments refAssignments = new Assignments(this);

		super.fillStructure();
		add(refSourceRef);
		add(refTargetRef);
		add(refTransformation);
		add(refAssignments);
	}

	public final XMLTextElements getSourceRefs() {
		return (XMLTextElements) get("sourceRef");
	}

	public final String getSourceRef() {
		for (XMLElement sourceRef : getSourceRefs().getXMLElements()) {
			return sourceRef.toValue();
		}
		return "";
	}

	public final String getTargetRef() {
		return get("targetRef").toValue();
	}

	public final Assignments getAssignments() {
		return (Assignments) get("assignments");
	}

	public final List getAssignmentList() {
		return getAssignments().getXMLElements();
	}

	public final void addSourceRef(String sourceId) {
		XMLElement sourceRef = getSourceRefs().generateNewElement();
		sourceRef.setValue(sourceId);
		getSourceRefs().add(sourceRef);
	}

	public final void setTargetRef(String targetId) {
		set("targetRef", targetId);
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy