- java.lang.Object
-
- java.beans.FeatureDescriptor
-
- java.beans.EventSetDescriptor
-
public class EventSetDescriptor extends FeatureDescriptor
An EventSetDescriptor describes a group of events that a given Java bean fires.The given group of events are all delivered as method calls on a single event listener interface, and an event listener object can be registered via a call on a registration method supplied by the event source.
- Since:
- 1.1
-
-
Constructor Summary
Constructors Constructor Description EventSetDescriptor(Class<?> sourceClass, String eventSetName, Class<?> listenerType, String listenerMethodName)
Creates anEventSetDescriptor
assuming that you are following the most simple standard design pattern where a named event "fred" is (1) delivered as a call on the single method of interface FredListener, (2) has a single argument of type FredEvent, and (3) where the FredListener may be registered with a call on an addFredListener method of the source component and removed with a call on a removeFredListener method.EventSetDescriptor(Class<?> sourceClass, String eventSetName, Class<?> listenerType, String[] listenerMethodNames, String addListenerMethodName, String removeListenerMethodName)
Creates anEventSetDescriptor
from scratch using string names.EventSetDescriptor(Class<?> sourceClass, String eventSetName, Class<?> listenerType, String[] listenerMethodNames, String addListenerMethodName, String removeListenerMethodName, String getListenerMethodName)
This constructor creates an EventSetDescriptor from scratch using string names.EventSetDescriptor(String eventSetName, Class<?> listenerType, MethodDescriptor[] listenerMethodDescriptors, Method addListenerMethod, Method removeListenerMethod)
Creates anEventSetDescriptor
from scratch usingjava.lang.reflect.MethodDescriptor
andjava.lang.Class
objects.EventSetDescriptor(String eventSetName, Class<?> listenerType, Method[] listenerMethods, Method addListenerMethod, Method removeListenerMethod)
Creates anEventSetDescriptor
from scratch usingjava.lang.reflect.Method
andjava.lang.Class
objects.EventSetDescriptor(String eventSetName, Class<?> listenerType, Method[] listenerMethods, Method addListenerMethod, Method removeListenerMethod, Method getListenerMethod)
This constructor creates an EventSetDescriptor from scratch using java.lang.reflect.Method and java.lang.Class objects.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Method
getAddListenerMethod()
Gets the method used to add event listeners.Method
getGetListenerMethod()
Gets the method used to access the registered event listeners.MethodDescriptor[]
getListenerMethodDescriptors()
Gets theMethodDescriptor
s of the target listener interface.Method[]
getListenerMethods()
Gets the methods of the target listener interface.Class<?>
getListenerType()
Gets theClass
object for the target interface.Method
getRemoveListenerMethod()
Gets the method used to remove event listeners.boolean
isInDefaultEventSet()
Reports if an event set is in the "default" set.boolean
isUnicast()
Normally event sources are multicast.void
setInDefaultEventSet(boolean inDefaultEventSet)
Marks an event set as being in the "default" set (or not).void
setUnicast(boolean unicast)
Mark an event set as unicast (or not).-
Methods inherited from class java.beans.FeatureDescriptor
attributeNames, getDisplayName, getName, getShortDescription, getValue, isExpert, isHidden, isPreferred, setDisplayName, setExpert, setHidden, setName, setPreferred, setShortDescription, setValue, toString
-
-
-
-
Constructor Detail
-
EventSetDescriptor
public EventSetDescriptor(Class<?> sourceClass, String eventSetName, Class<?> listenerType, String listenerMethodName) throws IntrospectionException
Creates anEventSetDescriptor
assuming that you are following the most simple standard design pattern where a named event "fred" is (1) delivered as a call on the single method of interface FredListener, (2) has a single argument of type FredEvent, and (3) where the FredListener may be registered with a call on an addFredListener method of the source component and removed with a call on a removeFredListener method.- Parameters:
sourceClass
- The class firing the event.eventSetName
- The programmatic name of the event. E.g. "fred". Note that this should normally start with a lower-case character.listenerType
- The target interface that events will get delivered to.listenerMethodName
- The method that will get called when the event gets delivered to its target listener interface.- Throws:
IntrospectionException
- if an exception occurs during introspection.
-
EventSetDescriptor
public EventSetDescriptor(Class<?> sourceClass, String eventSetName, Class<?> listenerType, String[] listenerMethodNames, String addListenerMethodName, String removeListenerMethodName) throws IntrospectionException
Creates anEventSetDescriptor
from scratch using string names.- Parameters:
sourceClass
- The class firing the event.eventSetName
- The programmatic name of the event set. Note that this should normally start with a lower-case character.listenerType
- The Class of the target interface that events will get delivered to.listenerMethodNames
- The names of the methods that will get called when the event gets delivered to its target listener interface.addListenerMethodName
- The name of the method on the event source that can be used to register an event listener object.removeListenerMethodName
- The name of the method on the event source that can be used to de-register an event listener object.- Throws:
IntrospectionException
- if an exception occurs during introspection.
-
EventSetDescriptor
public EventSetDescriptor(Class<?> sourceClass, String eventSetName, Class<?> listenerType, String[] listenerMethodNames, String addListenerMethodName, String removeListenerMethodName, String getListenerMethodName) throws IntrospectionException
This constructor creates an EventSetDescriptor from scratch using string names.- Parameters:
sourceClass
- The class firing the event.eventSetName
- The programmatic name of the event set. Note that this should normally start with a lower-case character.listenerType
- The Class of the target interface that events will get delivered to.listenerMethodNames
- The names of the methods that will get called when the event gets delivered to its target listener interface.addListenerMethodName
- The name of the method on the event source that can be used to register an event listener object.removeListenerMethodName
- The name of the method on the event source that can be used to de-register an event listener object.getListenerMethodName
- The method on the event source that can be used to access the array of event listener objects.- Throws:
IntrospectionException
- if an exception occurs during introspection.- Since:
- 1.4
-
EventSetDescriptor
public EventSetDescriptor(String eventSetName, Class<?> listenerType, Method[] listenerMethods, Method addListenerMethod, Method removeListenerMethod) throws IntrospectionException
Creates anEventSetDescriptor
from scratch usingjava.lang.reflect.Method
andjava.lang.Class
objects.- Parameters:
eventSetName
- The programmatic name of the event set.listenerType
- The Class for the listener interface.listenerMethods
- An array of Method objects describing each of the event handling methods in the target listener.addListenerMethod
- The method on the event source that can be used to register an event listener object.removeListenerMethod
- The method on the event source that can be used to de-register an event listener object.- Throws:
IntrospectionException
- if an exception occurs during introspection.
-
EventSetDescriptor
public EventSetDescriptor(String eventSetName, Class<?> listenerType, Method[] listenerMethods, Method addListenerMethod, Method removeListenerMethod, Method getListenerMethod) throws IntrospectionException
This constructor creates an EventSetDescriptor from scratch using java.lang.reflect.Method and java.lang.Class objects.- Parameters:
eventSetName
- The programmatic name of the event set.listenerType
- The Class for the listener interface.listenerMethods
- An array of Method objects describing each of the event handling methods in the target listener.addListenerMethod
- The method on the event source that can be used to register an event listener object.removeListenerMethod
- The method on the event source that can be used to de-register an event listener object.getListenerMethod
- The method on the event source that can be used to access the array of event listener objects.- Throws:
IntrospectionException
- if an exception occurs during introspection.- Since:
- 1.4
-
EventSetDescriptor
public EventSetDescriptor(String eventSetName, Class<?> listenerType, MethodDescriptor[] listenerMethodDescriptors, Method addListenerMethod, Method removeListenerMethod) throws IntrospectionException
Creates anEventSetDescriptor
from scratch usingjava.lang.reflect.MethodDescriptor
andjava.lang.Class
objects.- Parameters:
eventSetName
- The programmatic name of the event set.listenerType
- The Class for the listener interface.listenerMethodDescriptors
- An array of MethodDescriptor objects describing each of the event handling methods in the target listener.addListenerMethod
- The method on the event source that can be used to register an event listener object.removeListenerMethod
- The method on the event source that can be used to de-register an event listener object.- Throws:
IntrospectionException
- if an exception occurs during introspection.
-
-
Method Detail
-
getListenerType
public Class<?> getListenerType()
Gets theClass
object for the target interface.- Returns:
- The Class object for the target interface that will get invoked when the event is fired.
-
getListenerMethods
public Method[] getListenerMethods()
Gets the methods of the target listener interface.- Returns:
- An array of
Method
objects for the target methods within the target listener interface that will get called when events are fired.
-
getListenerMethodDescriptors
public MethodDescriptor[] getListenerMethodDescriptors()
Gets theMethodDescriptor
s of the target listener interface.- Returns:
- An array of
MethodDescriptor
objects for the target methods within the target listener interface that will get called when events are fired.
-
getAddListenerMethod
public Method getAddListenerMethod()
Gets the method used to add event listeners.- Returns:
- The method used to register a listener at the event source.
-
getRemoveListenerMethod
public Method getRemoveListenerMethod()
Gets the method used to remove event listeners.- Returns:
- The method used to remove a listener at the event source.
-
getGetListenerMethod
public Method getGetListenerMethod()
Gets the method used to access the registered event listeners.- Returns:
- The method used to access the array of listeners at the event source or null if it doesn't exist.
- Since:
- 1.4
-
setUnicast
public void setUnicast(boolean unicast)
Mark an event set as unicast (or not).- Parameters:
unicast
- True if the event set is unicast.
-
isUnicast
public boolean isUnicast()
Normally event sources are multicast. However there are some exceptions that are strictly unicast.- Returns:
true
if the event set is unicast. Defaults tofalse
.
-
setInDefaultEventSet
public void setInDefaultEventSet(boolean inDefaultEventSet)
Marks an event set as being in the "default" set (or not). By default this istrue
.- Parameters:
inDefaultEventSet
-true
if the event set is in the "default" set,false
if not
-
isInDefaultEventSet
public boolean isInDefaultEventSet()
Reports if an event set is in the "default" set.- Returns:
true
if the event set is in the "default" set. Defaults totrue
.
-
-