package com.horstmann.violet.framework.plugin; import com.horstmann.violet.product.diagram.abstracts.IGraph; /** * Describes a Violet's plugin embedding a new kind of diagram. * * @author Alexandre de Pellegrin * */ public interface IDiagramPlugin extends IPlugin { /** * @return diagram type name (ex : Class Diagram) */ String getName(); /** * @return the category of this diagram (ex : Static diagram) */ String getCategory(); /** * @return file extension associated to this graph (ex : .class.violet) */ String getFileExtension(); /** * @return file extension textual name (ex : Class Diagram Files) */ String getFileExtensionName(); /** * @return path of a diagram file used to introduce this kind of diagram */ String getSampleFilePath(); /** * @return corresponding graph class */ Class<? extends IGraph> getGraphClass(); }