java.beans
Interface BeanInfo

All Known Subinterfaces:
BeanContextServiceProviderBeanInfo sample code for java.beans.beancontext.BeanContextServiceProviderBeanInfo definition code for java.beans.beancontext.BeanContextServiceProviderBeanInfo
All Known Implementing Classes:
SimpleBeanInfo sample code for java.beans.SimpleBeanInfo definition code for java.beans.SimpleBeanInfo

public interface BeanInfo

A bean implementor who wishes to provide explicit information about their bean may provide a BeanInfo class that implements this BeanInfo interface and provides explicit information about the methods, properties, events, etc, of their bean.

A bean implementor doesn't need to provide a complete set of explicit information. You can pick and choose which information you want to provide and the rest will be obtained by automatic analysis using low-level reflection of the bean classes' methods and applying standard design patterns.

You get the opportunity to provide lots and lots of different information as part of the various XyZDescriptor classes. But don't panic, you only really need to provide the minimal core information required by the various constructors.

See also the SimpleBeanInfo class which provides a convenient "noop" base class for BeanInfo classes, which you can override for those specific places where you want to return explicit info.

To learn about all the behaviour of a bean see the Introspector class.


Field Summary
static int ICON_COLOR_16x16 sample code for java.beans.BeanInfo.ICON_COLOR_16x16 definition code for java.beans.BeanInfo.ICON_COLOR_16x16
          Constant to indicate a 16 x 16 color icon.
static int ICON_COLOR_32x32 sample code for java.beans.BeanInfo.ICON_COLOR_32x32 definition code for java.beans.BeanInfo.ICON_COLOR_32x32
          Constant to indicate a 32 x 32 color icon.
static int ICON_MONO_16x16 sample code for java.beans.BeanInfo.ICON_MONO_16x16 definition code for java.beans.BeanInfo.ICON_MONO_16x16
          Constant to indicate a 16 x 16 monochrome icon.
static int ICON_MONO_32x32 sample code for java.beans.BeanInfo.ICON_MONO_32x32 definition code for java.beans.BeanInfo.ICON_MONO_32x32
          Constant to indicate a 32 x 32 monochrome icon.
 
Method Summary
 BeanInfo sample code for java.beans.BeanInfo definition code for java.beans.BeanInfo [] getAdditionalBeanInfo sample code for java.beans.BeanInfo.getAdditionalBeanInfo() definition code for java.beans.BeanInfo.getAdditionalBeanInfo() ()
          This method allows a BeanInfo object to return an arbitrary collection of other BeanInfo objects that provide additional information on the current bean.
 BeanDescriptor sample code for java.beans.BeanDescriptor definition code for java.beans.BeanDescriptor getBeanDescriptor sample code for java.beans.BeanInfo.getBeanDescriptor() definition code for java.beans.BeanInfo.getBeanDescriptor() ()
          Gets the beans BeanDescriptor.
 int getDefaultEventIndex sample code for java.beans.BeanInfo.getDefaultEventIndex() definition code for java.beans.BeanInfo.getDefaultEventIndex() ()
          A bean may have a "default" event that is the event that will mostly commonly be used by humans when using the bean.
 int getDefaultPropertyIndex sample code for java.beans.BeanInfo.getDefaultPropertyIndex() definition code for java.beans.BeanInfo.getDefaultPropertyIndex() ()
          A bean may have a "default" property that is the property that will mostly commonly be initially chosen for update by human's who are customizing the bean.
 EventSetDescriptor sample code for java.beans.EventSetDescriptor definition code for java.beans.EventSetDescriptor [] getEventSetDescriptors sample code for java.beans.BeanInfo.getEventSetDescriptors() definition code for java.beans.BeanInfo.getEventSetDescriptors() ()
          Gets the beans EventSetDescriptors.
 Image sample code for java.awt.Image definition code for java.awt.Image getIcon sample code for java.beans.BeanInfo.getIcon(int) definition code for java.beans.BeanInfo.getIcon(int) (int iconKind)
          This method returns an image object that can be used to represent the bean in toolboxes, toolbars, etc.
 MethodDescriptor sample code for java.beans.MethodDescriptor definition code for java.beans.MethodDescriptor [] getMethodDescriptors sample code for java.beans.BeanInfo.getMethodDescriptors() definition code for java.beans.BeanInfo.getMethodDescriptors() ()
          Gets the beans MethodDescriptors.
 PropertyDescriptor sample code for java.beans.PropertyDescriptor definition code for java.beans.PropertyDescriptor [] getPropertyDescriptors sample code for java.beans.BeanInfo.getPropertyDescriptors() definition code for java.beans.BeanInfo.getPropertyDescriptors() ()
          Gets the beans PropertyDescriptors.
 

Field Detail

ICON_COLOR_16x16 sample code for java.beans.BeanInfo.ICON_COLOR_16x16

static final int ICON_COLOR_16x16
Constant to indicate a 16 x 16 color icon.

See Also:
Constant Field Values

ICON_COLOR_32x32 sample code for java.beans.BeanInfo.ICON_COLOR_32x32

static final int ICON_COLOR_32x32
Constant to indicate a 32 x 32 color icon.

See Also:
Constant Field Values

ICON_MONO_16x16 sample code for java.beans.BeanInfo.ICON_MONO_16x16

static final int ICON_MONO_16x16
Constant to indicate a 16 x 16 monochrome icon.

See Also:
Constant Field Values

ICON_MONO_32x32 sample code for java.beans.BeanInfo.ICON_MONO_32x32

static final int ICON_MONO_32x32
Constant to indicate a 32 x 32 monochrome icon.

See Also:
Constant Field Values
Method Detail

getBeanDescriptor sample code for java.beans.BeanInfo.getBeanDescriptor() definition code for java.beans.BeanInfo.getBeanDescriptor()

BeanDescriptor sample code for java.beans.BeanDescriptor definition code for java.beans.BeanDescriptor  getBeanDescriptor()
Gets the beans BeanDescriptor.

Returns:
A BeanDescriptor providing overall information about the bean, such as its displayName, its customizer, etc. May return null if the information should be obtained by automatic analysis.

getEventSetDescriptors sample code for java.beans.BeanInfo.getEventSetDescriptors() definition code for java.beans.BeanInfo.getEventSetDescriptors()

EventSetDescriptor sample code for java.beans.EventSetDescriptor definition code for java.beans.EventSetDescriptor [] getEventSetDescriptors()
Gets the beans EventSetDescriptors.

Returns:
An array of EventSetDescriptors describing the kinds of events fired by this bean. May return null if the information should be obtained by automatic analysis.

getDefaultEventIndex sample code for java.beans.BeanInfo.getDefaultEventIndex() definition code for java.beans.BeanInfo.getDefaultEventIndex()

int getDefaultEventIndex()
A bean may have a "default" event that is the event that will mostly commonly be used by humans when using the bean.

Returns:
Index of default event in the EventSetDescriptor array returned by getEventSetDescriptors.

Returns -1 if there is no default event.


getPropertyDescriptors sample code for java.beans.BeanInfo.getPropertyDescriptors() definition code for java.beans.BeanInfo.getPropertyDescriptors()

PropertyDescriptor sample code for java.beans.PropertyDescriptor definition code for java.beans.PropertyDescriptor [] getPropertyDescriptors()
Gets the beans PropertyDescriptors.

Returns:
An array of PropertyDescriptors describing the editable properties supported by this bean. May return null if the information should be obtained by automatic analysis.

If a property is indexed, then its entry in the result array will belong to the IndexedPropertyDescriptor subclass of PropertyDescriptor. A client of getPropertyDescriptors can use "instanceof" to check if a given PropertyDescriptor is an IndexedPropertyDescriptor.


getDefaultPropertyIndex sample code for java.beans.BeanInfo.getDefaultPropertyIndex() definition code for java.beans.BeanInfo.getDefaultPropertyIndex()

int getDefaultPropertyIndex()
A bean may have a "default" property that is the property that will mostly commonly be initially chosen for update by human's who are customizing the bean.

Returns:
Index of default property in the PropertyDescriptor array returned by getPropertyDescriptors.

Returns -1 if there is no default property.


getMethodDescriptors sample code for java.beans.BeanInfo.getMethodDescriptors() definition code for java.beans.BeanInfo.getMethodDescriptors()

MethodDescriptor sample code for java.beans.MethodDescriptor definition code for java.beans.MethodDescriptor [] getMethodDescriptors()
Gets the beans MethodDescriptors.

Returns:
An array of MethodDescriptors describing the externally visible methods supported by this bean. May return null if the information should be obtained by automatic analysis.

getAdditionalBeanInfo sample code for java.beans.BeanInfo.getAdditionalBeanInfo() definition code for java.beans.BeanInfo.getAdditionalBeanInfo()

BeanInfo sample code for java.beans.BeanInfo definition code for java.beans.BeanInfo [] getAdditionalBeanInfo()
This method allows a BeanInfo object to return an arbitrary collection of other BeanInfo objects that provide additional information on the current bean.

If there are conflicts or overlaps between the information provided by different BeanInfo objects, then the current BeanInfo takes precedence over the getAdditionalBeanInfo objects, and later elements in the array take precedence over earlier ones.

Returns:
an array of BeanInfo objects. May return null.

getIcon sample code for java.beans.BeanInfo.getIcon(int) definition code for java.beans.BeanInfo.getIcon(int)

Image sample code for java.awt.Image definition code for java.awt.Image  getIcon(int iconKind)
This method returns an image object that can be used to represent the bean in toolboxes, toolbars, etc. Icon images will typically be GIFs, but may in future include other formats.

Beans aren't required to provide icons and may return null from this method.

There are four possible flavors of icons (16x16 color, 32x32 color, 16x16 mono, 32x32 mono). If a bean choses to only support a single icon we recommend supporting 16x16 color.

We recommend that icons have a "transparent" background so they can be rendered onto an existing background.

Parameters:
iconKind - The kind of icon requested. This should be one of the constant values ICON_COLOR_16x16, ICON_COLOR_32x32, ICON_MONO_16x16, or ICON_MONO_32x32.
Returns:
An image object representing the requested icon. May return null if no suitable icon is available.