Newer
Older
DesignCraft / src / main / java / models / objectOrientedTransfer / PrimitivePullDelta.java
package models.objectOrientedTransfer;

import java.util.ArrayList;
import java.util.List;

public class PrimitivePullDelta extends PrimitiveDelta {
	private ReferenceEdge pullEdge1 = null;
	private ReferenceEdge pullEdge2 = null;

	public PrimitivePullDelta(ReferenceEdge pullEdge1, ReferenceEdge pullEdge2, String dataName) {
		super(dataName);
		this.pullEdge1 = pullEdge1;
		this.pullEdge2 = pullEdge2;
	}

	@Override
	public ObjectNode getCoordinator() {
		return (ObjectNode) pullEdge1.getSource();
	}

	@Override
	public List<ReferenceEdge> getPullEdges() {
		List<ReferenceEdge> pullEdges = new ArrayList<>();
		pullEdges.add(pullEdge1);
		pullEdges.add(pullEdge2);
		return pullEdges;
	}

	@Override
	public List<ReferenceEdge> getPushEdges() {
		List<ReferenceEdge> pushEdges = new ArrayList<>();
		return pushEdges;
	}

	@Override
	public ObjectNode getDataType() {
		return (ObjectNode) pullEdge2.getDestination();
	}

	public PrimitivePullDelta copy() {
		return new PrimitivePullDelta(pullEdge1, pullEdge2, dataName);
	}

}