src.com.ibm.as400.access.UserBeanInfo Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jt400-jdk8 Show documentation
Show all versions of jt400-jdk8 Show documentation
The Open Source version of the IBM Toolbox for Java
///////////////////////////////////////////////////////////////////////////////
//
// JTOpen (IBM Toolbox for Java - OSS version)
//
// Filename: UserBeanInfo.java
//
// The source code contained herein is licensed under the IBM Public License
// Version 1.0, which has been approved by the Open Source Initiative.
// Copyright (C) 1997-2004 International Business Machines Corporation and
// others. All rights reserved.
//
///////////////////////////////////////////////////////////////////////////////
package com.ibm.as400.access;
import java.awt.Image;
import java.beans.BeanDescriptor;
import java.beans.BeanInfo;
import java.beans.EventSetDescriptor;
import java.beans.IntrospectionException;
import java.beans.PropertyChangeListener;
import java.beans.PropertyDescriptor;
import java.beans.SimpleBeanInfo;
import java.beans.VetoableChangeListener;
/**
The UserBeanInfo class represents the bean information for the User class.
**/
public class UserBeanInfo extends SimpleBeanInfo
{
private static final String copyright = "Copyright (C) 1997-2004 International Business Machines Corporation and others.";
// Class this bean info represents.
private static final Class BEAN_CLASS = User.class;
private static EventSetDescriptor[] eventSetDescriptors;
private static PropertyDescriptor[] propertyDescriptors;
static
{
try
{
EventSetDescriptor propertyChange = new EventSetDescriptor(BEAN_CLASS, "propertyChange", PropertyChangeListener.class, "propertyChange");
propertyChange.setDisplayName(ResourceBundleLoader.getText("EVT_NAME_PROPERTY_CHANGE"));
propertyChange.setShortDescription(ResourceBundleLoader.getText("EVT_DESC_PROPERTY_CHANGE"));
EventSetDescriptor vetoableChange = new EventSetDescriptor(BEAN_CLASS, "propertyChange", VetoableChangeListener.class, "vetoableChange");
vetoableChange.setDisplayName(ResourceBundleLoader.getText("EVT_NAME_PROPERTY_VETO"));
vetoableChange.setShortDescription(ResourceBundleLoader.getText("EVT_DESC_PROPERTY_VETO"));
eventSetDescriptors = new EventSetDescriptor[] { propertyChange, vetoableChange };
PropertyDescriptor system = new PropertyDescriptor("system", BEAN_CLASS);
system.setBound(true);
system.setConstrained(true);
system.setDisplayName(ResourceBundleLoader.getText("PROP_NAME_SYSTEM"));
system.setShortDescription(ResourceBundleLoader.getText("PROP_DESC_SYSTEM"));
PropertyDescriptor name = new PropertyDescriptor("name", BEAN_CLASS);
name.setBound(true);
name.setConstrained(true);
name.setDisplayName(ResourceBundleLoader.getText("PROP_NAME_NAME"));
name.setShortDescription(ResourceBundleLoader.getText("PROP_DESC_NAME"));
propertyDescriptors = new PropertyDescriptor[] { system, name };
}
catch (IntrospectionException e)
{
Trace.log(Trace.ERROR, "Unexpected IntrospectionException:", e);
throw new InternalErrorException(InternalErrorException.UNEXPECTED_EXCEPTION);
}
}
/**
Returns the bean descriptor.
@return The bean descriptor.
**/
public BeanDescriptor getBeanDescriptor()
{
return new BeanDescriptor(BEAN_CLASS);
}
/**
Returns the index of the default event.
@return Zero (0), the index to the default event.
**/
public int getDefaultEventIndex()
{
// The index for the "propertyChange" event.
return 0;
}
/**
Returns the descriptors for all events.
@return The descriptors for all events.
**/
public EventSetDescriptor[] getEventSetDescriptors()
{
return eventSetDescriptors;
}
/**
Returns an Image for this bean's icon.
@param icon The desired icon size and color. Possible values are:
- BeanInfo.ICON_MONO_16x16
- BeanInfo.ICON_MONO_32x32
- BeanInfo.ICON_COLOR_16x16
- BeanInfo.ICON_COLOR_32x32
@return The Image for the icon.
**/
public Image getIcon(int icon)
{
switch (icon)
{
case BeanInfo.ICON_MONO_16x16:
case BeanInfo.ICON_COLOR_16x16:
return loadImage("User16.gif");
case BeanInfo.ICON_MONO_32x32:
case BeanInfo.ICON_COLOR_32x32:
return loadImage("User32.gif");
}
Trace.log(Trace.ERROR, "Value of parameter 'icon' is not valid:", icon);
throw new ExtendedIllegalArgumentException("icon (" + icon + ")", ExtendedIllegalArgumentException.PARAMETER_VALUE_NOT_VALID);
}
/**
Returns the descriptors for all properties.
@return The descriptors for all properties.
**/
public PropertyDescriptor[] getPropertyDescriptors()
{
return propertyDescriptors;
}
}