/* * JBoss, Home of Professional Open Source. * * See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing. * * See the AUTHORS.txt file distributed with this work for a full listing of individual contributors. */ package org.teiid.designer.diagram.ui.connection; import java.beans.PropertyChangeListener; import java.util.List; import java.util.Vector; import org.eclipse.draw2d.Bendpoint; import org.eclipse.draw2d.ConnectionAnchor; import org.eclipse.draw2d.geometry.PointList; import org.eclipse.emf.ecore.EObject; import org.teiid.designer.diagram.ui.part.DiagramEditPart; import org.teiid.designer.metamodels.diagram.DiagramLink; /** * NodeConnectionModel * * @since 8.0 */ public interface NodeConnectionModel { /** * @return sourceNode */ Object getSourceNode(); /** * @return targetNode */ Object getTargetNode(); /** * @param node */ void setSourceNode(Object node); /** * @param node */ void setTargetNode(Object node); void setName(String sName); /** * @param */ String getName(); int getLineStyle(); int getSourceDecoratorId(); int getTargetDecoratorId(); EObject getModelObject(); List getLabelNodes(); void updateLabels(); List getToolTipStrings(); void layout(); void layout( ConnectionAnchor ncaSourceAnchor, ConnectionAnchor ncaTargetAnchor, DiagramEditPart adepParentEditPart); void setRouterStyle(String sRouterStyle); void setRouterStyle(int iRouterStyle); int getRouterStyle(); public void placeStereotypeAndName(int iSourceSide, int iTargetSide, PointList plConnectionPoints); public void addPropertyChangeListener(PropertyChangeListener l); public void removePropertyChangeListener(PropertyChangeListener l); public void firePropertyChange(String prop, Object old, Object newValue); public DiagramLink getDiagramLink(); // New interface methods for Bendpoint logic. public List getBendpoints(); public void insertBendpoint(int index, Bendpoint point); public void removeBendpoint(int index); public void setBendpoint(int index, Bendpoint point); public void setBendpoints(Vector points); public void refreshBendPoints(); public void clearBendpoints(); }