All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.umlg.runtime.domain.UmlgNode Maven / Gradle / Ivy

There is a newer version: 2.0.15
Show newest version
package org.umlg.runtime.domain;

import org.apache.tinkerpop.gremlin.structure.Edge;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.umlg.runtime.collection.Qualifier;
import org.umlg.runtime.collection.UmlgRuntimeProperty;
import org.umlg.runtime.collection.UmlgSet;
import org.umlg.runtime.domain.ocl.OclAny;
import org.umlg.runtime.validation.UmlgConstraintViolation;

import java.util.List;

public interface UmlgNode extends UmlgEnum, OclAny, PersistentObject {
	Vertex getVertex();
	boolean isTinkerRoot();
	void initialiseProperties();
	void initialiseProperty(UmlgRuntimeProperty umlgRuntimeProperty, boolean inverse);
    UmlgRuntimeProperty inverseAdder(UmlgRuntimeProperty umlgRuntimeProperty, boolean inverse, UmlgNode umlgNode);
    void initVariables();
	List getQualifiers(UmlgRuntimeProperty umlgRuntimeProperty, UmlgNode node, boolean inverse);
	void delete();
	int getSize(boolean inverse, UmlgRuntimeProperty umlgRuntimeProperty);
	 UmlgSet asSet();
	List validateMultiplicities();
    List checkClassConstraints();
	UmlgNode getOwningObject();
    boolean hasOnlyOneCompositeParent();
	 List getPathToCompositionalRoot();
    UmlgMetaNode getMetaNode();
	//the get and set edge is for the case of sequences where the indexOf(more of an order by sequence) is stored
	void setEdge(UmlgRuntimeProperty umlgRuntimeProperty, Edge edge);
	Edge getEdge(UmlgRuntimeProperty umlgRuntimeProperty);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy