package fr.inria.atlanmod.collaboro.ui.views.notation.builder; import java.util.Map; import org.eclipse.emf.ecore.EObject; import fr.inria.atlanmod.collaboro.notation.AttributeValue; import fr.inria.atlanmod.collaboro.notation.Composite; import fr.inria.atlanmod.collaboro.notation.Figure; import fr.inria.atlanmod.collaboro.notation.GraphicalElement; import fr.inria.atlanmod.collaboro.notation.Image; import fr.inria.atlanmod.collaboro.notation.Keyword; import fr.inria.atlanmod.collaboro.notation.Label; import fr.inria.atlanmod.collaboro.notation.Line; import fr.inria.atlanmod.collaboro.notation.NotationElement; import fr.inria.atlanmod.collaboro.notation.Rectangle; import fr.inria.atlanmod.collaboro.notation.ReferenceValue; import fr.inria.atlanmod.collaboro.notation.SyntaxOf; import fr.inria.atlanmod.collaboro.notation.TextualElement; import fr.inria.atlanmod.collaboro.notation.Token; import fr.inria.atlanmod.collaboro.notation.Value; public interface INotationBuilder { public String create(Keyword keyword); public String create(Token token); public String create(AttributeValue attributeValue); public String create(ReferenceValue referenceValue); public String create(Label label); public String create(Line line); public String create(Rectangle rectangle); public String create(Composite composite); public String create(SyntaxOf syntaxOf); public String create(NotationElement notationElement); public String create(TextualElement textualElement); public String create(Value value); public String create(GraphicalElement graphicalElement); public String create(Figure figure); public String create(Image image); //with the associated EObjects public String create(EObject eObject, Keyword keyword, Map<EObject, EObject> historyLinks); public String create(EObject eObject, Token token, Map<EObject, EObject> historyLinks); public String create(EObject eObject, AttributeValue attributeValue, Map<EObject, EObject> historyLinks); public String create(EObject eObject, ReferenceValue referenceValue, Map<EObject, EObject> historyLinks); public String create(EObject eObject, Label label, Map<EObject, EObject> historyLinks); public String create(EObject eObject, Line line, Map<EObject, EObject> historyLinks); public String create(EObject eObject, Rectangle rectangle, Map<EObject, EObject> historyLinks); public String create(EObject eObject, Composite composite, Map<EObject, EObject> historyLinks); public String create(EObject eObject, SyntaxOf syntaxOf, Map<EObject, EObject> historyLinks); public String create(EObject eObject, NotationElement notationElement, Map<EObject, EObject> historyLinks); public String create(EObject eObject, TextualElement textualElement, Map<EObject, EObject> historyLinks); public String create(EObject eObject, Value value, Map<EObject, EObject> historyLinks); public String create(EObject eObject, GraphicalElement graphicalElement, Map<EObject, EObject> historyLinks); public String create(EObject eObject, Image image, Map<EObject, EObject> historyLinks); public String create(EObject eObject, Figure figure, Map<EObject, EObject> historyLinks); }