package org.apache.geronimo.connector.deployment.dconfigbean;
import java.beans.*;
import java.awt.*;
/**
* @version $Revision: 1.0$
*/
public class ConnectionDefinitionDConfigBeanBeanInfo implements BeanInfo {
/**
* A bean may have a "default" event that is the event that will
* mostly commonly be used by humans when using the bean.
*
* @return Index of default event in the EventSetDescriptor array
* returned by getEventSetDescriptors.
* <P> Returns -1 if there is no default event.
*/
public int getDefaultEventIndex() {
return -1;
}
/**
* 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.
*
* @return Index of default property in the PropertyDescriptor array
* returned by getPropertyDescriptors.
* <P> Returns -1 if there is no default property.
*/
public int getDefaultPropertyIndex() {
return -1;
}
/**
* 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.
* <p/>
* Beans aren't required to provide icons and may return null from
* this method.
* <p/>
* 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.
* <p/>
* We recommend that icons have a "transparent" background
* so they can be rendered onto an existing background.
*
* @param 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.
* @return An image object representing the requested icon. May
* return null if no suitable icon is available.
*/
public Image getIcon(int iconKind) {
return null;
}
/**
* Gets the beans <code>BeanDescriptor</code>.
*
* @return 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.
*/
public BeanDescriptor getBeanDescriptor() {
BeanDescriptor bd = new BeanDescriptor(ConnectionDefinitionDConfigBean.class);
bd.setDisplayName("Connection Definition");
bd.setShortDescription("Holds a list of connection instances available for this connector.");
return bd;
}
/**
* This method allows a BeanInfo object to return an arbitrary collection
* of other BeanInfo objects that provide additional information on the
* current bean.
* <P>
* 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.
*
* @return an array of BeanInfo objects. May return null.
*/
public BeanInfo[] getAdditionalBeanInfo() {
return null;
}
/**
* Gets the beans <code>EventSetDescriptor</code>s.
*
* @return 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.
*/
public EventSetDescriptor[] getEventSetDescriptors() {
return null;
}
/**
* Gets the beans <code>MethodDescriptor</code>s.
*
* @return 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.
*/
public MethodDescriptor[] getMethodDescriptors() {
return null;
}
/**
* Gets the beans <code>PropertyDescriptor</code>s.
*
* @return An array of PropertyDescriptors describing the editable
* properties supported by this bean. May return null if the
* information should be obtained by automatic analysis.
* <p/>
* 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.
*/
public PropertyDescriptor[] getPropertyDescriptors() {
try {
PropertyDescriptor instances = new PropertyDescriptor("connectionDefinitionInstance", ConnectionDefinitionDConfigBean.class);
instances.setDisplayName("Geronimo Connections");
instances.setShortDescription("Geronimo allows several connection instances to be configured for the same connection type. For example, there may be connection instances pointing to several databases for a single JDBC instance of a connector.");
return new PropertyDescriptor[] {
instances
};
} catch (IntrospectionException e) {
throw new RuntimeException("Unable to parse bean", e);
}
}
}