agg.attribute.facade
Interface InformationFacade

All Known Implementing Classes:
DefaultInformationFacade

public interface InformationFacade

Collection of methods for storing and retrieving information in attribute tuples and members.


Method Summary
 AttrTypeMember addMember(AttrType tupleType)
          Adding an empty member declaration to a tuple type.
 AttrTypeMember addMember(AttrType tupleType, AttrHandler handler, java.lang.String memberType, java.lang.String name)
          Adding a member declaration to a tuple type.
 void addObserver(AttrTuple tuple, AttrObserver attrObs)
          Adding a new attribute observer.
 AttrInstance createTupleInstance(AttrType type, AttrContext context)
          Creating a new attribute instance of the required type and in the given context or a context view.
 AttrType createTupleType()
          Returns a new attribute tuple type, using the default attribute manager.
 void deleteMemberAt(AttrType tupleType, int index)
          Delete a member declaration from a tuple type.
 void deleteMemberAt(AttrType tupleType, java.lang.String name)
          Delete a member declaration from a tuple type.
 AttrManager getAttrManager()
          Returns the default attribute manager which can be used for advanced operations not provided by this facade.
 AttrTypeMember getDeclaration(AttrInstanceMember instanceMember)
          Retrieving an instance member's type.
 HandlerExpr getExpr(AttrInstanceMember instanceMember)
          Retrieving the expression (value) contained in a member.
 java.lang.Object getExprAsObject(AttrInstanceMember instanceMember)
          Retrieving the value of a member.
 java.lang.String getExprAsText(AttrInstanceMember instanceMember)
          Returns the textual representation of a member's expression.
 AttrHandler getHandler(AttrTypeMember memberDecl)
          Retrieving the member attribute handler.
 AttrInstanceMember getInstanceMemberAt(AttrInstance tupleInstance, int index)
          Getting a tuple instance member by its absolute (view-independent) index.
 AttrInstanceMember getInstanceMemberAt(AttrInstance tupleInstance, java.lang.String name)
          Getting a tuple instance member by its declaration name.
 AttrHandler getJavaHandler()
          Returns the java expression handler.
 java.lang.String getName(AttrTypeMember memberDecl)
          Retrieving the member name.
 HandlerType getType(AttrTypeMember memberDecl)
          Retrieving the type.
 AttrTypeMember getTypeMemberAt(AttrType tupleType, int index)
          Getting a tuple type member by its absolute (view-independent) index.
 AttrTypeMember getTypeMemberAt(AttrType tupleType, java.lang.String name)
          Getting a tuple type member by its declaration name.
 java.lang.String getTypeName(AttrTypeMember memberDecl)
          Retrieving the member type name as string.
 boolean isSet(AttrInstanceMember instanceMember)
          Test, if the member value is set or not.
 void removeObserver(AttrTuple tuple, AttrObserver attrObs)
          Removing an attribute observer from the list of observers.
 void setExpr(AttrInstanceMember instanceMember, HandlerExpr expr)
          Setting the expression (value) contained in this member.
 void setExprAsEvaluatedText(AttrInstanceMember instanceMember, java.lang.String expr)
          Evaluating an expression and setting its value as a member's entry.
 void setExprAsObject(AttrInstanceMember instanceMember, java.lang.Object value)
          Setting the value of an instance member directly.
 void setExprAsText(AttrInstanceMember instanceMember, java.lang.String expr)
          Setting an expression for a member without immediate evaluation.
 void setHandler(AttrTypeMember memberDecl, AttrHandler h)
          Setting the member attribute handler.
 void setName(AttrTypeMember memberDecl, java.lang.String memberName)
          Setting a member type name.
 void setType(AttrTypeMember memberDecl, java.lang.String typeName)
          Setting the member type.
 

Method Detail

getAttrManager

AttrManager getAttrManager()
Returns the default attribute manager which can be used for advanced operations not provided by this facade.


getJavaHandler

AttrHandler getJavaHandler()
Returns the java expression handler. This can then be used for creating a tuple type member.


addObserver

void addObserver(AttrTuple tuple,
                 AttrObserver attrObs)
Adding a new attribute observer.

Parameters:
tuple - The attribute tuple (type or instance) to observe.
attrObs - The attribute observer to be registered.

removeObserver

void removeObserver(AttrTuple tuple,
                    AttrObserver attrObs)
Removing an attribute observer from the list of observers.

Parameters:
tuple - The attribute tuple (type or instance) observed.
attrObs - The attribute observer to be registered.

createTupleType

AttrType createTupleType()
Returns a new attribute tuple type, using the default attribute manager.


addMember

AttrTypeMember addMember(AttrType tupleType,
                         AttrHandler handler,
                         java.lang.String memberType,
                         java.lang.String name)
Adding a member declaration to a tuple type.

Parameters:
tupleType - the tuple type to be extended.
handler - attribute handler for the entry type;
memberType - textual representation of the member type;
name - name (selector) of the entry within the attribute tuple. The new declaration member is returned and can be extended by calling the respective AttrTypeMember methods.

addMember

AttrTypeMember addMember(AttrType tupleType)
Adding an empty member declaration to a tuple type.

Parameters:
tupleType - the tuple type to be extended. The new declaration member is returned and can be extended by calling the respective AttrTypeMember methods.

deleteMemberAt

void deleteMemberAt(AttrType tupleType,
                    java.lang.String name)
Delete a member declaration from a tuple type.

Parameters:
tupleType - the tuple type.
name - name (selector) of the entry within the attribute tuple.

deleteMemberAt

void deleteMemberAt(AttrType tupleType,
                    int index)
Delete a member declaration from a tuple type.

Parameters:
tupleType - the tuple type.
index - index of the member within the attribute tuple.

getTypeMemberAt

AttrTypeMember getTypeMemberAt(AttrType tupleType,
                               int index)
Getting a tuple type member by its absolute (view-independent) index.


getTypeMemberAt

AttrTypeMember getTypeMemberAt(AttrType tupleType,
                               java.lang.String name)
Getting a tuple type member by its declaration name.


getName

java.lang.String getName(AttrTypeMember memberDecl)
Retrieving the member name.


setName

void setName(AttrTypeMember memberDecl,
             java.lang.String memberName)
Setting a member type name.


getType

HandlerType getType(AttrTypeMember memberDecl)
Retrieving the type. Returns null if no type is set or if the type is not valid.


getTypeName

java.lang.String getTypeName(AttrTypeMember memberDecl)
Retrieving the member type name as string.


setType

void setType(AttrTypeMember memberDecl,
             java.lang.String typeName)
Setting the member type.


getHandler

AttrHandler getHandler(AttrTypeMember memberDecl)
Retrieving the member attribute handler.


setHandler

void setHandler(AttrTypeMember memberDecl,
                AttrHandler h)
Setting the member attribute handler.


createTupleInstance

AttrInstance createTupleInstance(AttrType type,
                                 AttrContext context)
Creating a new attribute instance of the required type and in the given context or a context view. In Graph Transformation, it is used for creating a new attribute in a rule.

Parameters:
type - The type to use
context - The context to use, can be null
Returns:
The new attribute instance

getInstanceMemberAt

AttrInstanceMember getInstanceMemberAt(AttrInstance tupleInstance,
                                       int index)
Getting a tuple instance member by its absolute (view-independent) index.


getInstanceMemberAt

AttrInstanceMember getInstanceMemberAt(AttrInstance tupleInstance,
                                       java.lang.String name)
Getting a tuple instance member by its declaration name.


getDeclaration

AttrTypeMember getDeclaration(AttrInstanceMember instanceMember)
Retrieving an instance member's type.


isSet

boolean isSet(AttrInstanceMember instanceMember)
Test, if the member value is set or not.


getExpr

HandlerExpr getExpr(AttrInstanceMember instanceMember)
Retrieving the expression (value) contained in a member. The result can be queried and set according to the agg.attribute.handler.HandlerExpr interface.


setExpr

void setExpr(AttrInstanceMember instanceMember,
             HandlerExpr expr)
Setting the expression (value) contained in this member.


getExprAsObject

java.lang.Object getExprAsObject(AttrInstanceMember instanceMember)
Retrieving the value of a member. If the result is 'null', the reason can be: 1. The value is set as 'null'; 2. The value is not set at all. For testing if the value was set as 'null' or not set at all, use 'isSet()' of this interface.


setExprAsObject

void setExprAsObject(AttrInstanceMember instanceMember,
                     java.lang.Object value)
Setting the value of an instance member directly.

Parameters:
instanceMember - The member of an attribute tuple instance.
value - Any object instance.

getExprAsText

java.lang.String getExprAsText(AttrInstanceMember instanceMember)
Returns the textual representation of a member's expression.


setExprAsEvaluatedText

void setExprAsEvaluatedText(AttrInstanceMember instanceMember,
                            java.lang.String expr)
Evaluating an expression and setting its value as a member's entry.

Parameters:
instanceMember - The member of an attribute tuple instance.
expr - textual expression representation;

setExprAsText

void setExprAsText(AttrInstanceMember instanceMember,
                   java.lang.String expr)
Setting an expression for a member without immediate evaluation. Syntax and type checking are performed.

Parameters:
instanceMember - The member of an attribute tuple instance.
expr - textual expression representation;