/* * Copyright (c) 2005, 2007 Borland Software Corporation * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Artem Tikhomirov (Borland) - initial API and implementation */ package org.eclipse.gmf.internal.bridge.genmodel; import org.eclipse.gmf.codegen.gmfgen.Viewmap; import org.eclipse.gmf.gmfgraph.Canvas; import org.eclipse.gmf.gmfgraph.Compartment; import org.eclipse.gmf.gmfgraph.Connection; import org.eclipse.gmf.gmfgraph.DiagramLabel; import org.eclipse.gmf.gmfgraph.Node; /** * @author artem * XXX rename 'create' to 'get'? */ public abstract class ViewmapProducer { public abstract Viewmap create(Canvas canvasElement); // XXX with Node split to AbstractNode, may need to reconsider this API public abstract Viewmap create(Node node); public abstract Viewmap create(Connection link); public abstract Viewmap create(Compartment compartment); public abstract Viewmap create(DiagramLabel label); /** * * @return collection of plug-in identifiers that viewmaps depend from */ public abstract String[] dependencies(); }