Package gw.lang.reflect
Class BeanInfoUtil
java.lang.Object
gw.lang.reflect.BeanInfoUtil
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static MethodDescriptor
_buildMethodDescriptor
(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes, Class[] actualParameterTypes) Builds a method descriptor with no explicit visibility.protected static TypedPropertyDescriptor
_buildPropertyDescriptor
(String propertyName, Class beanClass, String getterName, String setterName) Builds a property descriptor with no explicit visibility.static MethodDescriptor
buildHiddenMethodDescriptor
(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes) Completely hides a method from scripting.static MethodDescriptor
buildMethodDescriptor
(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes) Deprecated.To properly expose a method for scripting call buildScriptableMethodDescriptor() or a derivative of that.static MethodDescriptor
buildScriptableDeprecatedMethodDescriptor
(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes) Builds a deprecated method descriptor that is exposed for scripting everywhere.static MethodDescriptor
buildScriptableMethodDescriptor
(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes) Builds a method descriptor that is exposed for scripting everywhere.static MethodDescriptor
buildScriptableMethodDescriptorNoArgs
(Class actionClass, String methodName) Builds a no-arg method descriptor that is exposed for scripting everywhere.static TypedPropertyDescriptor
buildScriptablePropertyDescriptor
(String propertyName, Class beanClass, String getterName, String setterName) Builds a scriptable property descriptor with the given information.static IScriptabilityModifier
getVisibilityModifier
(FeatureDescriptor descriptor) static boolean
isDeprecated
(FeatureDescriptor descriptor) static boolean
isScriptable
(FeatureDescriptor descriptor) static boolean
isVisible
(FeatureDescriptor descriptor, IScriptabilityModifier constraint) Determine if the descriptor is visible given a visibility constraint.static FeatureDescriptor
makeScriptable
(FeatureDescriptor descriptor) Expose the method/property descriptor for scripting.static FeatureDescriptor
makeScriptableDeprecated
(FeatureDescriptor descriptor) Expose the method/property descriptor for scripting, but mark it deprecated.static void
setVisibilityModifier
(FeatureDescriptor descriptor, IScriptabilityModifier modifier)
-
Field Details
-
SCRIPT_VISIBILITY_MODIFIERS
A FeatureDescriptor value indicating its visibility to Gosu- See Also:
-
EMPTY_CLASS_ARRAY
To save allocations. -
EMPTY_STRING_ARRAY
-
-
Constructor Details
-
BeanInfoUtil
public BeanInfoUtil()
-
-
Method Details
-
buildScriptableMethodDescriptorNoArgs
public static MethodDescriptor buildScriptableMethodDescriptorNoArgs(Class actionClass, String methodName) Builds a no-arg method descriptor that is exposed for scripting everywhere. -
buildScriptableMethodDescriptor
public static MethodDescriptor buildScriptableMethodDescriptor(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes) Builds a method descriptor that is exposed for scripting everywhere. -
buildScriptableDeprecatedMethodDescriptor
public static MethodDescriptor buildScriptableDeprecatedMethodDescriptor(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes) Builds a deprecated method descriptor that is exposed for scripting everywhere. -
buildHiddenMethodDescriptor
public static MethodDescriptor buildHiddenMethodDescriptor(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes) Completely hides a method from scripting. -
buildMethodDescriptor
public static MethodDescriptor buildMethodDescriptor(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes) Deprecated.To properly expose a method for scripting call buildScriptableMethodDescriptor() or a derivative of that. -
buildScriptablePropertyDescriptor
public static TypedPropertyDescriptor buildScriptablePropertyDescriptor(String propertyName, Class beanClass, String getterName, String setterName) Builds a scriptable property descriptor with the given information.- Parameters:
propertyName
- name of the propertybeanClass
- class of the bean on which the property is foundgetterName
- name of the getter method, or null if write-onlypropertyName
- name of the setter method, or null if read-only
-
makeScriptable
Expose the method/property descriptor for scripting.- Parameters:
descriptor
- A method or property descriptor.- Returns:
- The same descriptor.
-
makeScriptableDeprecated
Expose the method/property descriptor for scripting, but mark it deprecated.- Parameters:
descriptor
- A method or property descriptor.- Returns:
- The same descriptor.
-
isScriptable
- Returns:
- True if the descriptor is exposed for scripting.
-
isDeprecated
- Returns:
- True if the descriptor is deprecated.
-
isVisible
Determine if the descriptor is visible given a visibility constraint. -
getVisibilityModifier
- Parameters:
descriptor
- A method or property descriptor.- Returns:
- The descriptor's associated visibility modifier.
-
setVisibilityModifier
public static void setVisibilityModifier(FeatureDescriptor descriptor, IScriptabilityModifier modifier) - Parameters:
descriptor
- A method or property descriptor.modifier
- The descriptor's associated visibility modifier.
-
_buildMethodDescriptor
protected static MethodDescriptor _buildMethodDescriptor(Class actionClass, String methodName, String[] parameterNames, Class[] parameterTypes, Class[] actualParameterTypes) Builds a method descriptor with no explicit visibility. -
_buildPropertyDescriptor
protected static TypedPropertyDescriptor _buildPropertyDescriptor(String propertyName, Class beanClass, String getterName, String setterName) Builds a property descriptor with no explicit visibility.
-