Package org.jboss.byteman.agent
Class Location
- java.lang.Object
-
- org.jboss.byteman.agent.Location
-
- Direct Known Subclasses:
Location.AccessLocation,Location.EntryLocation,Location.ExceptionExitLocation,Location.ExitLocation,Location.InvokeLocation,Location.LineLocation,Location.NewLocation,Location.SynchronizeLocation,Location.ThrowLocation
public abstract class Location extends java.lang.ObjectSpecifies a location in a method at which a rule trigger should be inserted
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classLocation.AccessLocationlocation identifying a generic access trigger pointprivate static classLocation.EntryLocationlocation identifying a method entry trigger pointprivate static classLocation.ExceptionExitLocationlocation identifying a method exceptional exit trigger pointprivate static classLocation.ExitLocationlocation identifying a method exit trigger pointprivate static classLocation.FieldAccessLocationlocation identifying a field access trigger pointprivate static classLocation.InvokeLocationlocation identifying a method invocation trigger pointprivate static classLocation.LineLocationlocation identifying a method line trigger pointprivate static classLocation.NewLocationprivate static classLocation.SynchronizeLocationlocation identifying a synchronization trigger pointprivate static classLocation.ThrowLocationlocation identifying a throw trigger pointprivate static classLocation.VariableAccessLocationlocation identifying a variable access trigger point
-
Field Summary
Fields Modifier and Type Field Description static intACCESS_READflag indicating that a field access location refers to field READ operationsstatic intACCESS_WRITEflag indicating that a field access location refers to field WRITE operations
-
Constructor Summary
Constructors Constructor Description Location()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static Locationcreate(LocationType type, java.lang.String parameters)create a location object of a given typeabstract LocationTypegetLocationType()identify the type of this locationabstract RuleTriggerAdaptergetRuleAdapter(org.objectweb.asm.ClassVisitor cv, TransformContext transformContext)return an adapter which can be used to insert a trigger call in a method containing a trigger point whose position matches this locationabstract RuleCheckAdaptergetRuleCheckAdapter(org.objectweb.asm.ClassVisitor cv, TransformContext transformContext)return an adapter which can be used to check whether a method contains a trigger point whose position matches this location
-
-
-
Field Detail
-
ACCESS_READ
public static final int ACCESS_READ
flag indicating that a field access location refers to field READ operations- See Also:
- Constant Field Values
-
ACCESS_WRITE
public static final int ACCESS_WRITE
flag indicating that a field access location refers to field WRITE operations- See Also:
- Constant Field Values
-
-
Method Detail
-
create
public static Location create(LocationType type, java.lang.String parameters)
create a location object of a given type- Parameters:
type- the type of location being specifiedparameters- the text of the parameters appended to the location specifier- Returns:
- a location of the appropriate type or null if the parameters are incorrectly specified
-
getRuleCheckAdapter
public abstract RuleCheckAdapter getRuleCheckAdapter(org.objectweb.asm.ClassVisitor cv, TransformContext transformContext)
return an adapter which can be used to check whether a method contains a trigger point whose position matches this location- Parameters:
cv- the current class visitortransformContext- the current transform context- Returns:
- the required adapter
-
getRuleAdapter
public abstract RuleTriggerAdapter getRuleAdapter(org.objectweb.asm.ClassVisitor cv, TransformContext transformContext)
return an adapter which can be used to insert a trigger call in a method containing a trigger point whose position matches this location- Parameters:
cv- the current class visitortransformContext- the current transform context- Returns:
- the required adapter
-
getLocationType
public abstract LocationType getLocationType()
identify the type of this location- Returns:
- the type of this location
-
-