Class MethodProperty

  • All Implemented Interfaces:
    java.lang.Comparable<Property>

    public class MethodProperty
    extends GenericProperty

    A MethodProperty is a Property which is accessed through accessor methods (setX, getX). It is possible to have a MethodProperty which has only setter, only getter, or both. It is not possible to have a MethodProperty which has neither setter nor getter.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.beans.PropertyDescriptor property  
      private boolean readable  
      private boolean writable  
    • Constructor Summary

      Constructors 
      Constructor Description
      MethodProperty​(java.beans.PropertyDescriptor property)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private static java.lang.reflect.Type discoverGenericType​(java.beans.PropertyDescriptor property)  
      java.lang.Object get​(java.lang.Object object)  
      <A extends java.lang.annotation.Annotation>
      A
      getAnnotation​(java.lang.Class<A> annotationType)
      Returns property's annotation for the given type or null if it's not present.
      java.util.List<java.lang.annotation.Annotation> getAnnotations()
      Returns the annotations that are present on read and write methods of this property or empty List if there're no annotations.
      boolean isReadable()  
      boolean isWritable()  
      void set​(java.lang.Object object, java.lang.Object value)  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • property

        private final java.beans.PropertyDescriptor property
      • readable

        private final boolean readable
      • writable

        private final boolean writable
    • Constructor Detail

      • MethodProperty

        public MethodProperty​(java.beans.PropertyDescriptor property)
    • Method Detail

      • discoverGenericType

        private static java.lang.reflect.Type discoverGenericType​(java.beans.PropertyDescriptor property)
      • set

        public void set​(java.lang.Object object,
                        java.lang.Object value)
                 throws java.lang.Exception
        Specified by:
        set in class Property
        Throws:
        java.lang.Exception
      • get

        public java.lang.Object get​(java.lang.Object object)
        Specified by:
        get in class Property
      • getAnnotations

        public java.util.List<java.lang.annotation.Annotation> getAnnotations()
        Returns the annotations that are present on read and write methods of this property or empty List if there're no annotations.
        Specified by:
        getAnnotations in class Property
        Returns:
        the annotations that are present on this property or empty List if there're no annotations
      • getAnnotation

        public <A extends java.lang.annotation.Annotation> A getAnnotation​(java.lang.Class<A> annotationType)
        Returns property's annotation for the given type or null if it's not present. If the annotation is present on both read and write methods, the annotation on read method takes precedence.
        Specified by:
        getAnnotation in class Property
        Type Parameters:
        A - class of the annotation
        Parameters:
        annotationType - the type of the annotation to be returned
        Returns:
        property's annotation for the given type or null if it's not present