com.ibm.as400.access.OutputQueueBeanInfo Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jt400 Show documentation
Show all versions of jt400 Show documentation
The Open Source version of the IBM Toolbox for Java
The newest version!
///////////////////////////////////////////////////////////////////////////////
//
// JTOpen (IBM Toolbox for Java - OSS version)
//
// Filename: OutputQueueBeanInfo.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-2000 International Business Machines Corporation and
// others. All rights reserved.
//
///////////////////////////////////////////////////////////////////////////////
package com.ibm.as400.access;
import java.beans.SimpleBeanInfo;
import java.beans.PropertyDescriptor;
import java.beans.EventSetDescriptor;
import java.beans.BeanDescriptor;
import java.beans.IntrospectionException;
import java.beans.BeanInfo;
import java.awt.Image;
/**
BeanInfo for OutputQueue class.
**/
public class OutputQueueBeanInfo extends PrintObjectBeanInfo
{
private static final String copyright = "Copyright (C) 1997-2000 International Business Machines Corporation and others.";
// Additional events defined for OutputQueue
private static EventSetDescriptor[] outQEvents_;
// Additional properties defined for OutputQueue
private static PropertyDescriptor[] outQProperties_;
// Class this bean info represents.
private final static Class beanClass = OutputQueue.class;
// Handles loading the appropriate resource bundle
private static ResourceBundleLoader rbl_;
static
{
try
{
// "name" is not a property, hide it from introspection.
PropertyDescriptor name =
new PropertyDescriptor( "name", beanClass, "getName", null );
name.setHidden(true);
PropertyDescriptor path =
new PropertyDescriptor("path", beanClass);
path.setBound(true);
path.setConstrained(true);
path.setDisplayName(rbl_.getText("PROP_NAME_PATH"));
path.setShortDescription(rbl_.getText("PROP_DESC_PATH"));
PropertyDescriptor[] properties = {name, path};
outQProperties_ = properties;
String[] listenerMethods = { "outputQueueCleared",
"outputQueueHeld",
"outputQueueReleased" };
EventSetDescriptor outQ =
new EventSetDescriptor ( beanClass,
"outputQueue",
com.ibm.as400.access.OutputQueueListener.class,
listenerMethods,
"addOutputQueueListener",
"removeOutputQueueListener" );
outQ.setDisplayName(rbl_.getText("EVT_NAME_OUTQ_EVENT"));
outQ.setShortDescription(rbl_.getText("EVT_DESC_OUTQ_EVENT"));
EventSetDescriptor[] events = {outQ};
outQEvents_ = events;
}
catch (IntrospectionException e)
{
throw new Error(e.toString());
}
}
/**
Returns the bean descriptor.
@return The bean descriptor.
**/
public BeanDescriptor getBeanDescriptor()
{
return new BeanDescriptor(beanClass);
}
/**
Returns the index of the default event.
@return The index to the default event.
**/
public int getDefaultEventIndex()
{
// the index for the OutputQueue event
return super.getDefaultEventIndex() + 1;
}
// We want "system" as the default property. PrintObject
// sets this so we don't have to override:
// public int getDefaultPropertyIndex()
/**
Returns the descriptors for all events.
@return The descriptors for all events.
**/
public EventSetDescriptor[] getEventSetDescriptors()
{
// Per the JavaBean spec, events are a mechanism for propagating
// state change notifications between a source object and one or
// more target listener objects.
EventSetDescriptor[] printObjectEvents;
EventSetDescriptor[] combinedEvents;
int combinedSize;
// Get the events defined in PrintObjectBeanInfo
printObjectEvents = super.getEventSetDescriptors();
combinedSize = printObjectEvents.length + outQEvents_.length;
combinedEvents = new EventSetDescriptor[combinedSize];
// copy PrintObject events
System.arraycopy( printObjectEvents, // source
0, // --offset
combinedEvents, // destination
0, // --offset
printObjectEvents.length ); // length
// copy OutputQueue events
System.arraycopy( outQEvents_, // source
0, // --offset
combinedEvents, // destination
printObjectEvents.length, // --offset
outQEvents_.length ); // length
return combinedEvents;
}
/**
Returns the descriptors for all properties.
@return The descriptors for all properties.
**/
public PropertyDescriptor[] getPropertyDescriptors()
{
// Per the JavaBean spec, properties are discrete, named attributes
// of a Java Bean that can affect its appearance or its behavior.
PropertyDescriptor[] printObjectProperties;
PropertyDescriptor[] combinedProperties;
int combinedSize;
// Get the properties defined in PrintObjectBeanInfo
printObjectProperties = super.getPropertyDescriptors();
combinedSize = printObjectProperties.length + outQProperties_.length;
combinedProperties = new PropertyDescriptor[combinedSize];
// copy PrintObject properties
System.arraycopy( printObjectProperties, // source
0, // --offset
combinedProperties, // destination
0, // --offset
printObjectProperties.length ); // length
// copy OutputQueue properties
System.arraycopy( outQProperties_, // source
0, // --offset
combinedProperties, // destination
printObjectProperties.length, // --offset
outQProperties_.length ); // length
return combinedProperties;
}
/**
* Returns an Image for this bean's icon.
* @param icon The desired icon size and color.
* @return The Image for the icon.
**/
public Image getIcon(int icon)
{
Image image = null;
switch(icon)
{
case BeanInfo.ICON_MONO_16x16:
case BeanInfo.ICON_COLOR_16x16:
image = loadImage("OutputQueue16.gif");
break;
case BeanInfo.ICON_MONO_32x32:
case BeanInfo.ICON_COLOR_32x32:
image = loadImage("OutputQueue32.gif");
break;
}
return image;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy