Class AnnotationEnumValue

java.lang.Object
io.github.classgraph.ScanResultObject
io.github.classgraph.AnnotationEnumValue
All Implemented Interfaces:
Comparable<AnnotationEnumValue>

public class AnnotationEnumValue extends ScanResultObject implements Comparable<AnnotationEnumValue>
Class for wrapping an enum constant value (split into class name and constant name), as used as an annotation parameter value.
  • Field Details

    • className

      private String className
      The class name.
    • valueName

      private String valueName
      The value name.
  • Constructor Details

    • AnnotationEnumValue

      AnnotationEnumValue()
      Default constructor for deserialization.
    • AnnotationEnumValue

      AnnotationEnumValue(String className, String constValueName)
      Constructor.
      Parameters:
      className - The enum class name.
      constValueName - The enum const value name.
  • Method Details

    • getClassName

      public String getClassName()
      Get the class name.
      Specified by:
      getClassName in class ScanResultObject
      Returns:
      The name of the enum class.
    • getValueName

      public String getValueName()
      Get the value name.
      Returns:
      The name of the enum const value.
    • getName

      public String getName()
      Get the name.
      Returns:
      The fully-qualified name of the enum constant value, i.e. (getClassName() + {#getValueName()}).
    • loadClassAndReturnEnumValue

      public Object loadClassAndReturnEnumValue(boolean ignoreExceptions) throws IllegalArgumentException
      Loads the enum class, instantiates the enum constants for the class, and returns the enum constant value represented by this AnnotationEnumValue.
      Parameters:
      ignoreExceptions - If true, ignore classloading exceptions and return null on failure.
      Returns:
      The enum constant value represented by this AnnotationEnumValue
      Throws:
      IllegalArgumentException - if the class could not be loaded and ignoreExceptions was false, or if the enum constant is invalid.
    • loadClassAndReturnEnumValue

      public Object loadClassAndReturnEnumValue() throws IllegalArgumentException
      Loads the enum class, instantiates the enum constants for the class, and returns the enum constant value represented by this AnnotationEnumValue.
      Returns:
      The enum constant value represented by this AnnotationEnumValue
      Throws:
      IllegalArgumentException - if the class could not be loaded, or the enum constant is invalid.
    • compareTo

      public int compareTo(AnnotationEnumValue o)
      Specified by:
      compareTo in interface Comparable<AnnotationEnumValue>
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      protected void toString(boolean useSimpleNames, StringBuilder buf)
      Description copied from class: ScanResultObject
      Render to string.
      Specified by:
      toString in class ScanResultObject
      Parameters:
      useSimpleNames - if true, use just the simple name of each class.
      buf - the buf