package org.eclipse.viatra.solver.data.model; import java.util.Map; import org.eclipse.viatra.solver.data.map.Cursor; import org.eclipse.viatra.solver.data.map.DiffCursor; import org.eclipse.viatra.solver.data.model.representation.DataRepresentation; public class ModelDiffCursor { final Map,DiffCursor> diffcursors; public ModelDiffCursor(Map, DiffCursor> diffcursors) { super(); this.diffcursors = diffcursors; } @SuppressWarnings("unchecked") public DiffCursor getCursor(DataRepresentation representation) { Cursor cursor = diffcursors.get(representation); if(cursor != null) { return (DiffCursor) cursor; } else { throw new IllegalArgumentException("ModelCursor does not contain cursor for representation "+representation); } } }