Package io.microsphere.reflect
Class ReflectiveDefinition
- java.lang.Object
-
- io.microsphere.reflect.ReflectiveDefinition
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
ClassDefinition
,MemberDefinition
@Immutable public abstract class ReflectiveDefinition extends java.lang.Object implements java.io.Serializable
The abstract definition class for Java Reflection.This class serves as a base for defining reflective constructs such as classes, methods, fields, etc., providing common metadata and functionality including:
- The version since which the construct was introduced
- Deprecation information (if applicable)
- Class name resolution capabilities
Example Usage
{@code // Example implementation: ClassDefinition extending ReflectiveDefinition public class ClassDefinition extends ReflectiveDefinition { public ClassDefinition(@Nonnull String since, @Nonnull String className) { super(since, className); } public ClassDefinition(@Nonnull Version since, @Nonnull String className) { super(since, className); } public ClassDefinition(@Nonnull String since, @Nullable Deprecation deprecation, @Nonnull String className) { super(since, deprecation, className); } public ClassDefinition(@Nonnull Version since, @Nullable Deprecation deprecation, @Nonnull String className) { super(since, deprecation, className); } // Implementing abstract method
- Since:
- 1.0.0
- Author:
- Mercy
- See Also:
ClassDefinition
,MemberDefinition
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String
className
protected Deprecation
deprecation
protected Version
since
-
Constructor Summary
Constructors Modifier Constructor Description protected
ReflectiveDefinition(Version since, Deprecation deprecation, java.lang.String className)
protected
ReflectiveDefinition(Version since, java.lang.String className)
protected
ReflectiveDefinition(java.lang.String since, Deprecation deprecation, java.lang.String className)
protected
ReflectiveDefinition(java.lang.String since, java.lang.String className)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object o)
java.lang.String
getClassName()
Get the name of classDeprecation
getDeprecation()
Get the deprecationjava.lang.Class<?>
getResolvedClass()
Get the resolved classVersion
getSince()
Get the 'since' versionint
hashCode()
boolean
isDeprecated()
Whether the member is deprecatedabstract boolean
isPresent()
Whether the member is presentjava.lang.String
toString()
-
-
-
Field Detail
-
deprecation
@Nullable protected final Deprecation deprecation
-
className
@Nonnull protected final java.lang.String className
-
-
Constructor Detail
-
ReflectiveDefinition
protected ReflectiveDefinition(@Nonnull java.lang.String since, @Nonnull java.lang.String className)
- Parameters:
since
- the 'since' versionclassName
- the name of class
-
ReflectiveDefinition
protected ReflectiveDefinition(@Nonnull java.lang.String since, @Nullable Deprecation deprecation, @Nonnull java.lang.String className)
- Parameters:
since
- the 'since' versiondeprecation
- the deprecationclassName
- the name of class
-
ReflectiveDefinition
protected ReflectiveDefinition(@Nonnull Version since, @Nonnull java.lang.String className)
- Parameters:
since
- the 'since' versionclassName
- the name of class
-
ReflectiveDefinition
protected ReflectiveDefinition(@Nonnull Version since, @Nullable Deprecation deprecation, @Nonnull java.lang.String className)
- Parameters:
since
- the 'since' versiondeprecation
- the deprecationclassName
- the name of class
-
-
Method Detail
-
getDeprecation
@Nullable public final Deprecation getDeprecation()
Get the deprecation- Returns:
- nullable
-
getClassName
@Nonnull public final java.lang.String getClassName()
Get the name of class- Returns:
- non-null
-
getResolvedClass
@Nullable public final java.lang.Class<?> getResolvedClass()
Get the resolved class- Returns:
null
if can't be resolved
-
isDeprecated
public final boolean isDeprecated()
Whether the member is deprecated
-
isPresent
public abstract boolean isPresent()
Whether the member is present- Returns:
true
if present
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-