Class BeanInfoUtil


  • public class BeanInfoUtil
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      BeanInfoUtil()  
    • Method Summary

      All Methods Static Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      protected static java.beans.MethodDescriptor _buildMethodDescriptor​(java.lang.Class actionClass, java.lang.String methodName, java.lang.String[] parameterNames, java.lang.Class[] parameterTypes, java.lang.Class[] actualParameterTypes)
      Builds a method descriptor with no explicit visibility.
      protected static TypedPropertyDescriptor _buildPropertyDescriptor​(java.lang.String propertyName, java.lang.Class beanClass, java.lang.String getterName, java.lang.String setterName)
      Builds a property descriptor with no explicit visibility.
      static java.beans.MethodDescriptor buildHiddenMethodDescriptor​(java.lang.Class actionClass, java.lang.String methodName, java.lang.String[] parameterNames, java.lang.Class[] parameterTypes)
      Completely hides a method from scripting.
      static java.beans.MethodDescriptor buildMethodDescriptor​(java.lang.Class actionClass, java.lang.String methodName, java.lang.String[] parameterNames, java.lang.Class[] parameterTypes)
      Deprecated.
      To properly expose a method for scripting call buildScriptableMethodDescriptor() or a derivative of that.
      static java.beans.MethodDescriptor buildScriptableDeprecatedMethodDescriptor​(java.lang.Class actionClass, java.lang.String methodName, java.lang.String[] parameterNames, java.lang.Class[] parameterTypes)
      Builds a deprecated method descriptor that is exposed for scripting everywhere.
      static java.beans.MethodDescriptor buildScriptableMethodDescriptor​(java.lang.Class actionClass, java.lang.String methodName, java.lang.String[] parameterNames, java.lang.Class[] parameterTypes)
      Builds a method descriptor that is exposed for scripting everywhere.
      static java.beans.MethodDescriptor buildScriptableMethodDescriptorNoArgs​(java.lang.Class actionClass, java.lang.String methodName)
      Builds a no-arg method descriptor that is exposed for scripting everywhere.
      static TypedPropertyDescriptor buildScriptablePropertyDescriptor​(java.lang.String propertyName, java.lang.Class beanClass, java.lang.String getterName, java.lang.String setterName)
      Builds a scriptable property descriptor with the given information.
      static IScriptabilityModifier getVisibilityModifier​(java.beans.FeatureDescriptor descriptor)  
      static boolean isDeprecated​(java.beans.FeatureDescriptor descriptor)  
      static boolean isScriptable​(java.beans.FeatureDescriptor descriptor)  
      static boolean isVisible​(java.beans.FeatureDescriptor descriptor, IScriptabilityModifier constraint)
      Determine if the descriptor is visible given a visibility constraint.
      static java.beans.FeatureDescriptor makeScriptable​(java.beans.FeatureDescriptor descriptor)
      Expose the method/property descriptor for scripting.
      static java.beans.FeatureDescriptor makeScriptableDeprecated​(java.beans.FeatureDescriptor descriptor)
      Expose the method/property descriptor for scripting, but mark it deprecated.
      static void setVisibilityModifier​(java.beans.FeatureDescriptor descriptor, IScriptabilityModifier modifier)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • SCRIPT_VISIBILITY_MODIFIERS

        public static final java.lang.String SCRIPT_VISIBILITY_MODIFIERS
        A FeatureDescriptor value indicating its visibility to Gosu
        See Also:
        Constant Field Values
      • EMPTY_CLASS_ARRAY

        protected static final java.lang.Class[] EMPTY_CLASS_ARRAY
        To save allocations.
      • EMPTY_STRING_ARRAY

        protected static final java.lang.String[] EMPTY_STRING_ARRAY
    • Constructor Detail

      • BeanInfoUtil

        public BeanInfoUtil()
    • Method Detail

      • buildScriptableMethodDescriptorNoArgs

        public static java.beans.MethodDescriptor buildScriptableMethodDescriptorNoArgs​(java.lang.Class actionClass,
                                                                                        java.lang.String methodName)
        Builds a no-arg method descriptor that is exposed for scripting everywhere.
      • buildScriptableMethodDescriptor

        public static java.beans.MethodDescriptor buildScriptableMethodDescriptor​(java.lang.Class actionClass,
                                                                                  java.lang.String methodName,
                                                                                  java.lang.String[] parameterNames,
                                                                                  java.lang.Class[] parameterTypes)
        Builds a method descriptor that is exposed for scripting everywhere.
      • buildScriptableDeprecatedMethodDescriptor

        public static java.beans.MethodDescriptor buildScriptableDeprecatedMethodDescriptor​(java.lang.Class actionClass,
                                                                                            java.lang.String methodName,
                                                                                            java.lang.String[] parameterNames,
                                                                                            java.lang.Class[] parameterTypes)
        Builds a deprecated method descriptor that is exposed for scripting everywhere.
      • buildHiddenMethodDescriptor

        public static java.beans.MethodDescriptor buildHiddenMethodDescriptor​(java.lang.Class actionClass,
                                                                              java.lang.String methodName,
                                                                              java.lang.String[] parameterNames,
                                                                              java.lang.Class[] parameterTypes)
        Completely hides a method from scripting.
      • buildMethodDescriptor

        public static java.beans.MethodDescriptor buildMethodDescriptor​(java.lang.Class actionClass,
                                                                        java.lang.String methodName,
                                                                        java.lang.String[] parameterNames,
                                                                        java.lang.Class[] parameterTypes)
        Deprecated.
        To properly expose a method for scripting call buildScriptableMethodDescriptor() or a derivative of that.
      • buildScriptablePropertyDescriptor

        public static TypedPropertyDescriptor buildScriptablePropertyDescriptor​(java.lang.String propertyName,
                                                                                java.lang.Class beanClass,
                                                                                java.lang.String getterName,
                                                                                java.lang.String setterName)
        Builds a scriptable property descriptor with the given information.
        Parameters:
        propertyName - name of the property
        beanClass - class of the bean on which the property is found
        getterName - name of the getter method, or null if write-only
        propertyName - name of the setter method, or null if read-only
      • makeScriptable

        public static java.beans.FeatureDescriptor makeScriptable​(java.beans.FeatureDescriptor descriptor)
        Expose the method/property descriptor for scripting.
        Parameters:
        descriptor - A method or property descriptor.
        Returns:
        The same descriptor.
      • makeScriptableDeprecated

        public static java.beans.FeatureDescriptor makeScriptableDeprecated​(java.beans.FeatureDescriptor descriptor)
        Expose the method/property descriptor for scripting, but mark it deprecated.
        Parameters:
        descriptor - A method or property descriptor.
        Returns:
        The same descriptor.
      • isScriptable

        public static boolean isScriptable​(java.beans.FeatureDescriptor descriptor)
        Returns:
        True if the descriptor is exposed for scripting.
      • isDeprecated

        public static boolean isDeprecated​(java.beans.FeatureDescriptor descriptor)
        Returns:
        True if the descriptor is deprecated.
      • isVisible

        public static boolean isVisible​(java.beans.FeatureDescriptor descriptor,
                                        IScriptabilityModifier constraint)
        Determine if the descriptor is visible given a visibility constraint.
      • getVisibilityModifier

        public static IScriptabilityModifier getVisibilityModifier​(java.beans.FeatureDescriptor descriptor)
        Parameters:
        descriptor - A method or property descriptor.
        Returns:
        The descriptor's associated visibility modifier.
      • setVisibilityModifier

        public static void setVisibilityModifier​(java.beans.FeatureDescriptor descriptor,
                                                 IScriptabilityModifier modifier)
        Parameters:
        descriptor - A method or property descriptor.
        modifier - The descriptor's associated visibility modifier.
      • _buildMethodDescriptor

        protected static java.beans.MethodDescriptor _buildMethodDescriptor​(java.lang.Class actionClass,
                                                                            java.lang.String methodName,
                                                                            java.lang.String[] parameterNames,
                                                                            java.lang.Class[] parameterTypes,
                                                                            java.lang.Class[] actualParameterTypes)
        Builds a method descriptor with no explicit visibility.
      • _buildPropertyDescriptor

        protected static TypedPropertyDescriptor _buildPropertyDescriptor​(java.lang.String propertyName,
                                                                          java.lang.Class beanClass,
                                                                          java.lang.String getterName,
                                                                          java.lang.String setterName)
        Builds a property descriptor with no explicit visibility.