Interface DataClass

    • Method Detail

      • addSubclass

        void addSubclass​(DataClass subclass)
        Adds a givenn subclass to the subclassList.
        Parameters:
        subclass - The subclass which gets added to the subclassList
      • removeSubclass

        void removeSubclass​(DataClass subclass)
        Removes a subclass from the subclassList.
        Parameters:
        subclass - The subclass which gets removed from the subclassList
      • finishEditing

        void finishEditing()
                    throws ClassHierarchyConsistencyException
        To instantiate classes it is necessary to know if the class can be edited further. Only finished classes can be instantiated. Therefore, it is necessary to call this method to tell the system that the class is ready defined. Nevertheless, finishing a class can fail because of an inconsistency in the class hierarchy. One of the superclasses is not consistence with this class.
        Throws:
        ClassHierarchyConsistencyException
      • getModel

        Model getModel()
        Each data class knows the Model to that the class belongs.
        Returns:
        The Model of the data class.
      • getName

        String getName()
        Each data class has a name that must be unique in the Model.
        Returns:
        the unique name of the data class
      • getSystemClassName

        String getSystemClassName()
        Each data class belongs to a system class with a unique name.
        Returns:
        the unique system class name
      • getSubClasses

        List<DataClass> getSubClasses()
        This methods returns an array of all direct sub classes of this class. This does not include system classes or sub sub classes and so on. Only the direct ones.
        Returns:
        An array of sub classes for this DataClasses or an empty array but never null.
      • getSuperClass

        DataClass getSuperClass()
        Each data class has a super class from that the class is inherited. This class can be get with this method. If this method is used on the root data class null will be returned.
        Returns:
        The parent class or super class of this class or null if this class is the root class.
      • getSuperClasses

        DataClass[] getSuperClasses()
        Sometimes it can be necessary to have the inheritance hierarchy of the class. This hierarchy can be accessed with this method.
        Returns:
        All super classes in the class hierarchy including the system super classes.
      • getSystemSuperClass

        DataClass getSystemSuperClass()
        Instead of receiving the super class of this class ( getSuperClass()) this class returns the first super class in the class hierarchy that is a system class.
        Returns:
        The first system super class in the class hierarchy.
      • includeClass

        boolean includeClass​(DataClass anotherClass)
        This method checks if the data class contains a reference to another data class.

        Some data classes contain other data classes. For example, AggregateClasses contain as attribute type other data classes or CollectionClasses have one element type which is also a data class.

        To prevent an infinite loop, this method does not recursive navigates through all element classes. Only the element of the class are checked but not, if the elements include the given anotherClass.

        Parameters:
        anotherClass - The data class that has to be checked for references
        Returns:
        true if the data class contains a reference to the give anotherClass.
      • isAbstract

        boolean isAbstract()
        Returns:
        true if the class is abstract and can not be instantiated
      • setAbstract

        void setAbstract​(boolean value)
                  throws IllegalEditException
        It is possible to model abstract user classes. The default is that a user class is not abstract. But in special cases it can be useful to change this behavior.
        Parameters:
        value - true if the user class should be an abstract class.
        Throws:
        IllegalEditException
      • isAggregate

        boolean isAggregate()
        Returns:
        true if the data class can be casted to AggregateClass
      • isAtomic

        boolean isAtomic()
        Returns:
        true if the data class can be casted to AtomicClass
      • isBoolean

        boolean isBoolean()
        Returns:
        true if the data class can be casted to BooleanClass
      • isByteArray

        boolean isByteArray()
        Returns:
        true if the data class can be casted to ByteArrayClass
      • isChronologic

        boolean isChronologic()
        Returns:
        true if the data class can be casted to ChronologicClass
      • isCollection

        boolean isCollection()
        Returns:
        true if the data class can be casted to CollectionClass
      • isDate

        boolean isDate()
        Returns:
        true if the data class can be casted to DateClass
      • isDouble

        boolean isDouble()
        Returns:
        true if the data class can be casted to DoubleClass
      • isEditable

        boolean isEditable()
        Returns:
        true if the class can be edited
      • isInstantiable

        boolean isInstantiable()
        To instantiate a class it is not allowed that the class is editable or abstract. Some system classes are also not instantiable
        Returns:
        true if this class can be instantiated.
      • isInteger

        boolean isInteger()
        Returns:
        true if the data class can be casted to IntegerClass
      • isInterval

        boolean isInterval()
        Returns:
        true if the data class can be casted to IntervalClass
      • isList

        boolean isList()
        Returns:
        true if the data class can be casted to ListClass
      • isNumeric

        boolean isNumeric()
        Returns:
        true if the data class can be casted to NumericClass
      • isURI

        boolean isURI()
        Returns:
        true if the data class can be casted to URIClass
      • isSet

        boolean isSet()
        Returns:
        true if the data class can be casted to SetClass
      • isString

        boolean isString()
        Returns:
        true if the data class can be casted to StringClass
      • isSubclassOf

        boolean isSubclassOf​(DataClass anotherClass)
        Checks if this class is inherited from anotherClass or from a sub class of anotherClass.
        Parameters:
        anotherClass -
        Returns:
        true if this class is a subclass of anotherClass
      • isSystemClass

        boolean isSystemClass()
        Returns:
        true if this class is a system class.
      • isTime

        boolean isTime()
        Returns:
        true if the data class can be casted to TimeClass
      • isTimestamp

        boolean isTimestamp()
        Returns:
        true if the data class can be casted to TimestampClass
      • isUnion

        boolean isUnion()
        Returns:
        true if the data class can be casted to UnionClass
      • isVoid

        boolean isVoid()
        Returns:
        true if the data class can be casted to VoidClass
      • isTask

        boolean isTask()
        Returns:
        true if the data class can be casted to TaskClass
      • isSubWorkflow

        boolean isSubWorkflow()
        Returns:
        true if the data class can be casted to SubWorkflowClass
      • isControlflowItem

        boolean isControlflowItem()
        Returns:
        true if the data class can be casted to ControlflowItemClass
      • isParentItem

        boolean isParentItem()
        Returns:
        true if the data class can be casted to ParentItemClass
      • isWorkflow

        boolean isWorkflow()
        Returns:
        true if the data class can be casted to WorkflowClass
      • isSequence

        boolean isSequence()
        Returns:
        true if the data class can be casted to SequenceClass
      • isNode

        boolean isNode()
        Returns:
        true if the data class can be casted to NodeClass
      • isDataflowWrapper

        boolean isDataflowWrapper()
        Returns:
        true if the data class can be casted to DataflowWrapperClass
      • isNESTNode

        boolean isNESTNode()
        Returns:
        true if the data class can be casted to NESTNodeClass
      • isNESTEdge

        boolean isNESTEdge()
        Returns:
        true if the data class can be casted to NESTEdgeClass
      • isNESTGraph

        boolean isNESTGraph()
        Returns:
        true if the data class can be casted to NESTGraphClass
      • isNESTSequentialWorkflow

        boolean isNESTSequentialWorkflow()
        Returns:
        true if the data class can be casted to NESTSequentialWorkflowClass
      • isNESTWorkflow

        boolean isNESTWorkflow()
        Returns:
        true if the data class can be casted to NESTWorkflowClass
      • isNESTGraphItem

        boolean isNESTGraphItem()
        Returns:
        true if the data class can be casted to NESTGraphItemClass
      • isNESTConstraintEdge

        boolean isNESTConstraintEdge()
        Returns:
        true if the data class can be casted to NESTConstraintEdgeClass
      • isNESTControlflowEdge

        boolean isNESTControlflowEdge()
        Returns:
        true if the data class can be casted to NESTControlflowEdgeClass
      • isNESTControlflowNode

        boolean isNESTControlflowNode()
        Returns:
        true if the data class can be casted to NESTControlflowNodeClass
      • isNESTDataflowEdge

        boolean isNESTDataflowEdge()
        Returns:
        true if the data class can be casted to NESTDataflowEdgeClass
      • isNESTDataNode

        boolean isNESTDataNode()
        Returns:
        true if the data class can be casted to NESTDataNodeClass
      • isNESTPartOfEdge

        boolean isNESTPartOfEdge()
        Returns:
        true if the data class can be casted to NESTPartOfEdgeClass
      • isNESTTaskNode

        boolean isNESTTaskNode()
        Returns:
        true if the data class can be casted to NESTTaskNodeClass
      • isCake2DataReference

        boolean isCake2DataReference()
        Returns:
        true if the data class can be casted to DataReferenceClass
      • isNESTWorkflowNode

        boolean isNESTWorkflowNode()
        Returns:
        true if the data class can be casted to NESTWorkflowNodeClass
      • isNESTSubWorkflowNode

        boolean isNESTSubWorkflowNode()
        Returns:
        true if the data class can be casted to NESTSubWorkflowNodeClass