Interface NESTGraphItemObject
- All Superinterfaces:
Comparable<NESTGraphItemObject>
,DataObject
,PropertyHandler
- All Known Subinterfaces:
NESTAndEndNodeObject
,NESTAndStartNodeObject
,NESTConstraintEdgeObject
,NESTControlflowEdgeObject
,NESTControlflowNodeObject
,NESTDataflowEdgeObject
,NESTDataNodeObject
,NESTEdgeObject
,NESTLoopEndNodeObject
,NESTLoopStartNodeObject
,NESTNodeObject
,NESTOrEndNodeObject
,NESTOrStartNodeObject
,NESTPartOfEdgeObject
,NESTSequenceNodeObject
,NESTSubWorkflowNodeObject
,NESTTaskNodeObject
,NESTWorkflowNodeObject
,NESTXorEndNodeObject
,NESTXorStartNodeObject
- All Known Implementing Classes:
NESTAndEndNodeObjectImpl
,NESTAndStartNodeObjectImpl
,NESTConstraintEdgeObjectImpl
,NESTControlflowEdgeObjectImpl
,NESTControlflowNodeObjectImpl
,NESTDataflowEdgeObjectImpl
,NESTDataNodeObjectImpl
,NESTEdgeObjectImpl
,NESTGraphItemObjectImpl
,NESTLoopEndNodeObjectImpl
,NESTLoopStartNodeObjectImpl
,NESTNodeObjectImpl
,NESTOrEndNodeObjectImpl
,NESTOrStartNodeObjectImpl
,NESTPartOfEdgeObjectImpl
,NESTSequenceNodeObjectImpl
,NESTSubWorkflowNodeObjectImpl
,NESTTaskNodeObjectImpl
,NESTWorkflowNodeObjectImpl
,NESTXorEndNodeObjectImpl
,NESTXorStartNodeObjectImpl
Interface of an abstract graph-object used for code reuse.
- Author:
- Alexander Stromer
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addSemanticValue
(String semanticDescriptorClass, String attributeName, DataObject attributeValue) Adds the given attributeValue with the given attributeName to the graphItem.void
addSemanticValue
(String semanticDescriptorClass, String attributeName, String attributeValue) Adds the given attributeValue with the given attributeName to the graphItem.double
computeSemanticDescriptorSimilarity
(NESTGraphItemObject nestItemObject, SimilarityValuator simVal, String simMeasure) boolean
equalId
(NESTGraphItemObject nestItemObject) Returns whether the nest graph item has the same id as the given nestItemObjectgetGraph()
Returns the graph this object is related to.Returns the semantic description for the graph-object.getSemanticDescriptorBooleanValue
(String attribute) Returns the boolean value of the attribute from the semantic descriptor of this node.getSemanticDescriptorStringValue
(String attribute) Returns the string value of the attribute from the semantic descriptor of this node.getSemanticDescriptorValue
(String attribute) Returns the data object of the attribute from the semantic descriptor of this node.getSemanticValueRecursively
(String attributeName) Returns the DataObject that is stored with the passed attribute name.boolean
hasSemanticallyEqualDescriptor
(NESTGraphItemObject nestItemObject) Returns whether the nes graph item has a semantically equal descriptor as the given nestItemObject.boolean
hasSemanticallyEqualDescriptor
(NESTGraphItemObject nestItemObject, SimilarityValuator simVal, String simMeasure) Returns whether the nes graph item has a semantically equal descriptor as the given nestItemObject.void
setGraph
(NESTGraphObject graph) Sets the graph this object is related to.void
setSemanticDescriptor
(DataObject content) Sets the semantic description for the graph-object.void
setSemanticDescriptorBooleanValue
(String attribute, boolean value) Set the boolean value of the attribute from the semantic descriptor of this node.void
setSemanticDescriptorStringValue
(String attribute, String value) Set the string value of the attribute from the semantic descriptor of this node.void
setSemanticDescriptorValue
(String attribute, DataObject value) Set the data object of the attribute from the semantic descriptor of this node.Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface de.uni_trier.wi2.procake.data.object.DataObject
assertSameValueAsIn, copy, getDataClass, getId, getModel, hasClassName, hasSameValueAsIn, hasSystemClassName, isAggregate, isAtomic, isBoolean, isByteArray, isChronologic, isCollection, isDataflowWrapper, isDataReference, isDate, isDouble, isInteger, isInterval, isKindOf, isList, isMemberOf, isNESTConstraintEdge, isNESTControlflowEdge, isNESTControlflowNode, isNESTDataflowEdge, isNESTDataNode, isNESTEdge, isNESTGraph, isNESTNode, isNESTPartOfEdge, isNESTSequenceNode, isNESTSequentialWorkflow, isNESTSubWorkflowNode, isNESTTaskNode, isNESTWorkflow, isNESTWorkflowNode, isNode, isNumeric, isSequence, isSet, isString, isSubWorkflow, isTask, isTime, isTimestamp, isUnion, isURI, isVoid, isWorkflow, removeId, setDataClass, setId, toDetailedString, toXML
Methods inherited from interface de.uni_trier.wi2.procake.data.PropertyHandler
addProperty, addProperty, getAllProperties, getAllPropertyNodes, getProperty, getPropertyNames, getPropertyNode, getPropertyRootNode, hasProperties, removeProperty, setPropertyRootNode
-
Field Details
-
LOG_ATTRIBUTE_NOT_FOUND
- See Also:
-
-
Method Details
-
getGraph
NESTGraphObject getGraph()Returns the graph this object is related to.- Returns:
- The graph for this item; NULL, if the object is not related to any graph.
-
setGraph
Sets the graph this object is related to.- Parameters:
graph
- The graph for this graphitem.
-
getSemanticDescriptor
DataObject getSemanticDescriptor()Returns the semantic description for the graph-object.- Returns:
- The semantic description for this graph-object.
-
setSemanticDescriptor
Sets the semantic description for the graph-object.- Parameters:
content
- The semantic description for the graph-object.
-
addSemanticValue
Adds the given attributeValue with the given attributeName to the graphItem. If a semantic description is not yet available for the graphItem, an object of the type semanticDescriptorClass will be instantiated.- Parameters:
semanticDescriptorClass
- The name of the CAKE I - DataObjectClass, which should be instantiated, if no semantic Descriptor is yet available with graphItem.attributeName
- The name of the attribute to write.attributeValue
- The String-value of the attribute, which should be written. The String will be encapsulated within a CAKE I - StringObject.
-
addSemanticValue
void addSemanticValue(String semanticDescriptorClass, String attributeName, DataObject attributeValue) Adds the given attributeValue with the given attributeName to the graphItem. If a semantic description is not yet available for the graphItem, an object of the type semanticDescriptorClass will be instantiated.- Parameters:
semanticDescriptorClass
- The name of the CAKE I - DataObjectClass, which should be instantiated, if no semantic Descriptor is yet available with graphItem.attributeName
- The name of the attribute to write.attributeValue
- The CAKE I - DataObject-value of the attribute, which should be written.
-
getSemanticValueRecursively
Returns the DataObject that is stored with the passed attribute name. Only the first matching object will be returned. Searches the semantic descriptor recursively using breadth-first search.- Parameters:
attributeName
- the name of the attribute- Returns:
- the first detected DataObject with the given attribute name; null if no matching attribute was found
-
getSemanticDescriptorStringValue
String getSemanticDescriptorStringValue(String attribute) throws NoSemanticDescriptorException, InvalidSemanticDescriptorException, ProCAKENoSuchAttributeException Returns the string value of the attribute from the semantic descriptor of this node. Requires the semantic descriptor to be a subclass of aggregate class.- Parameters:
attribute
- The name of the string attribute, which value should be returned.- Returns:
- Returns the string value of the attribute from the semantic descriptor of this node or null if not available
- Throws:
NoSemanticDescriptorException
InvalidSemanticDescriptorException
ProCAKENoSuchAttributeException
-
getSemanticDescriptorBooleanValue
Boolean getSemanticDescriptorBooleanValue(String attribute) throws NoSemanticDescriptorException, InvalidSemanticDescriptorException, ProCAKENoSuchAttributeException Returns the boolean value of the attribute from the semantic descriptor of this node. Requires the semantic descriptor to be a subclass of aggregate class.- Parameters:
attribute
- The name of the boolean attribute, which value should be returned.- Returns:
- Returns the boolean value of the attribute from the semantic descriptor of this node or null if not available
- Throws:
NoSemanticDescriptorException
InvalidSemanticDescriptorException
ProCAKENoSuchAttributeException
-
getSemanticDescriptorValue
DataObject getSemanticDescriptorValue(String attribute) throws NoSemanticDescriptorException, InvalidSemanticDescriptorException, ProCAKENoSuchAttributeException Returns the data object of the attribute from the semantic descriptor of this node. Requires the semantic descriptor to be a subclass of aggregate class.- Parameters:
attribute
- The name of the attribute, which value should be returned.- Returns:
- Returns the data object of the attribute from the semantic descriptor of this node or null if not available
- Throws:
NoSemanticDescriptorException
InvalidSemanticDescriptorException
ProCAKENoSuchAttributeException
-
setSemanticDescriptorStringValue
void setSemanticDescriptorStringValue(String attribute, String value) throws NoSemanticDescriptorException, InvalidSemanticDescriptorException, ProCAKEInvalidTypeException, ProCAKENoSuchAttributeException Set the string value of the attribute from the semantic descriptor of this node. Requires the semantic descriptor to be a subclass of aggregate class.- Parameters:
attribute
- The name of the string attribute, which value should be set.- Throws:
NoSemanticDescriptorException
InvalidSemanticDescriptorException
ProCAKEInvalidTypeException
ProCAKENoSuchAttributeException
-
setSemanticDescriptorBooleanValue
void setSemanticDescriptorBooleanValue(String attribute, boolean value) throws NoSemanticDescriptorException, InvalidSemanticDescriptorException, ProCAKEInvalidTypeException, ProCAKENoSuchAttributeException Set the boolean value of the attribute from the semantic descriptor of this node. Requires the semantic descriptor to be a subclass of aggregate class.- Parameters:
attribute
- The name of the boolean attribute, which value should be set.- Throws:
NoSemanticDescriptorException
InvalidSemanticDescriptorException
ProCAKEInvalidTypeException
ProCAKENoSuchAttributeException
-
setSemanticDescriptorValue
void setSemanticDescriptorValue(String attribute, DataObject value) throws NoSemanticDescriptorException, InvalidSemanticDescriptorException, ProCAKEInvalidTypeException, ProCAKENoSuchAttributeException Set the data object of the attribute from the semantic descriptor of this node. Requires the semantic descriptor to be a subclass of aggregate class.- Parameters:
attribute
- The name of the attribute, which value should be set.- Throws:
NoSemanticDescriptorException
InvalidSemanticDescriptorException
ProCAKEInvalidTypeException
ProCAKENoSuchAttributeException
-
equalId
Returns whether the nest graph item has the same id as the given nestItemObject- Parameters:
nestItemObject
-- Returns:
- true, if the nest graph item has the same id as the given nestItemObject
-
hasSemanticallyEqualDescriptor
boolean hasSemanticallyEqualDescriptor(NESTGraphItemObject nestItemObject, SimilarityValuator simVal, String simMeasure) Returns whether the nes graph item has a semantically equal descriptor as the given nestItemObject.- Parameters:
nestItemObject
-simVal
-simMeasure
-- Returns:
-
hasSemanticallyEqualDescriptor
Returns whether the nes graph item has a semantically equal descriptor as the given nestItemObject.- Parameters:
nestItemObject
-- Returns:
-
computeSemanticDescriptorSimilarity
double computeSemanticDescriptorSimilarity(NESTGraphItemObject nestItemObject, SimilarityValuator simVal, String simMeasure) - Parameters:
nestItemObject
-simVal
-simMeasure
-- Returns:
-