Package org.aspectj.asm
Interface IRelationshipMap
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
RelationshipMap
Maps from a program element handles to a list of relationships between that element and other program elements. Each element in
the list or relationships is uniquely identified by a kind and a relationship name. For example, the advice affecting a
particular shadow (e.g. method call) can be retrieved by calling
get
on the handle for that method. Symmetrically
the method call shadows that an advice affects can be retrieved.
The elements can be stored and looked up as IProgramElement(s), in which cases the element corresponding to the handle is looked up in the containment hierarchy.
put/get methods taking IProgramElement as a parameter are for convenience only. They work identically to calling their counterparts with IProgramElement.getIdentifierHandle()
- Author:
- Mik Kersten, Andy Clement
-
Method Summary
Modifier and TypeMethodDescriptionvoid
clear()
Clear all of the relationships in the map.get(String source, IRelationship.Kind kind, String relationshipName, boolean runtimeTest, boolean createIfMissing)
Return a relationship matching the kind and name for the given element.get(IProgramElement sourceProgramElement)
get(IProgramElement source, IRelationship.Kind kind, String relationshipName)
Return a relationship matching the kind and name for the given element.get(IProgramElement source, IRelationship.Kind kind, String relationshipName, boolean runtimeTest, boolean createIfMissing)
Return a relationship matching the kind and name for the given element.void
put(String handle, IRelationship relationship)
void
put(IProgramElement source, IRelationship relationship)
boolean
remove(String handle, IRelationship relationship)
void
-
Method Details
-
get
- Returns:
- list of relationships or null if the source element has no relationships
-
get
- Returns:
- list of relationships or null if the source element has no relationships
-
get
IRelationship get(IProgramElement source, IRelationship.Kind kind, String relationshipName, boolean runtimeTest, boolean createIfMissing)Return a relationship matching the kind and name for the given element.- Returns:
- null if the relationship is not found.
-
get
Return a relationship matching the kind and name for the given element.- Returns:
- null if the relationship is not found.
-
get
IRelationship get(String source, IRelationship.Kind kind, String relationshipName, boolean runtimeTest, boolean createIfMissing)Return a relationship matching the kind and name for the given element. Creates the relationship if not found.- Returns:
- null if the relationship is not found.
-
put
-
put
-
remove
-
removeAll
-
clear
void clear()Clear all of the relationships in the map. -
getEntries
-