edu.rice.cs.cunit.instrumentors.threadCheck
Class PredicateAnnotationRecord

java.lang.Object
  extended by edu.rice.cs.cunit.instrumentors.threadCheck.PredicateAnnotationRecord
All Implemented Interfaces:
java.io.Serializable

public class PredicateAnnotationRecord
extends java.lang.Object
implements java.io.Serializable

Class that keeps track of an annotation and the predicate class and method linked to it.

See Also:
Serialized Form

Field Summary
 AAnnotationsAttributeInfo.Annotation annotation
          The annotation on the method or class.
 java.util.HashMap<java.lang.String,java.util.ArrayList<PredicateAnnotationRecord>> combinedPredicates
          Hashmap from member name to a list of other predicates that should be combined.
 Combine.Mode combineMode
          Combine mode, or null if @Combine was not specified.
 java.util.ArrayList<java.lang.String> paramNames
          The parameter names in the order they appear in the predicate method, ignoring the first Object.
 java.util.HashMap<java.lang.String,java.lang.String> paramTypes
          Hashmap with the parameter name as the key and the parameter descriptors as value, ignoring the first Object.
 boolean passArguments
          Whether method arguments should be passed.
 java.lang.String predicateClass
          Name of the predicate class, or null if @PredicateLink was not specified.
 MethodInfo predicateMI
          Name of the predicate method, or null if @PredicateLink was not specified.
 java.util.ArrayList<AAnnotationsAttributeInfo.Annotation.AMemberValue> valueList
          The values from the annotation, including default values if a value was not specified at the usage site and a default value was defined, in the order of the parameters in the predicate method.
 
Constructor Summary
PredicateAnnotationRecord(AAnnotationsAttributeInfo.Annotation annotation, java.lang.String predicateClass, MethodInfo predicateMI, java.util.List<java.lang.String> paramNames, java.util.HashMap<java.lang.String,java.lang.String> paramTypes, java.util.ArrayList<AAnnotationsAttributeInfo.Annotation.AMemberValue> valueList, boolean passArguments, Combine.Mode combineMode, java.util.HashMap<java.lang.String,java.util.ArrayList<PredicateAnnotationRecord>> combinedPredicates)
           
PredicateAnnotationRecord(PredicateAnnotationRecord otherPAR)
           
 
Method Summary
 boolean equals(java.lang.Object o)
           
 int hashCode()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

annotation

public AAnnotationsAttributeInfo.Annotation annotation
The annotation on the method or class.


paramTypes

public java.util.HashMap<java.lang.String,java.lang.String> paramTypes
Hashmap with the parameter name as the key and the parameter descriptors as value, ignoring the first Object. Used for both @PredicateLink- and @Combine-type annotations.


predicateClass

public java.lang.String predicateClass
Name of the predicate class, or null if @PredicateLink was not specified.


predicateMI

public MethodInfo predicateMI
Name of the predicate method, or null if @PredicateLink was not specified.


paramNames

public java.util.ArrayList<java.lang.String> paramNames
The parameter names in the order they appear in the predicate method, ignoring the first Object.


valueList

public java.util.ArrayList<AAnnotationsAttributeInfo.Annotation.AMemberValue> valueList
The values from the annotation, including default values if a value was not specified at the usage site and a default value was defined, in the order of the parameters in the predicate method.


passArguments

public boolean passArguments
Whether method arguments should be passed.


combineMode

public Combine.Mode combineMode
Combine mode, or null if @Combine was not specified.


combinedPredicates

public java.util.HashMap<java.lang.String,java.util.ArrayList<PredicateAnnotationRecord>> combinedPredicates
Hashmap from member name to a list of other predicates that should be combined.

Constructor Detail

PredicateAnnotationRecord

public PredicateAnnotationRecord(AAnnotationsAttributeInfo.Annotation annotation,
                                 java.lang.String predicateClass,
                                 MethodInfo predicateMI,
                                 java.util.List<java.lang.String> paramNames,
                                 java.util.HashMap<java.lang.String,java.lang.String> paramTypes,
                                 java.util.ArrayList<AAnnotationsAttributeInfo.Annotation.AMemberValue> valueList,
                                 boolean passArguments,
                                 Combine.Mode combineMode,
                                 java.util.HashMap<java.lang.String,java.util.ArrayList<PredicateAnnotationRecord>> combinedPredicates)

PredicateAnnotationRecord

public PredicateAnnotationRecord(PredicateAnnotationRecord otherPAR)
Method Detail

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object