home *** CD-ROM | disk | FTP | other *** search
- package java.beans;
-
- import java.lang.reflect.Method;
-
- public class EventSetDescriptor extends FeatureDescriptor {
- private Class listenerType;
- private Method[] listenerMethods;
- private MethodDescriptor[] listenerMethodDescriptors;
- private Method addMethod;
- private Method removeMethod;
- private boolean unicast;
- private boolean inDefaultEventSet = true;
-
- public EventSetDescriptor(Class var1, String var2, Class var3, String var4) throws IntrospectionException {
- ((FeatureDescriptor)this).setName(var2);
- this.listenerType = var3;
- this.listenerMethods = new Method[1];
- this.listenerMethods[0] = Introspector.findMethod(var3, var4, 1);
- String var5 = var3.getName();
- String var6 = var5.substring(var5.lastIndexOf(46) + 1);
- String var7 = "add" + var6;
- this.addMethod = Introspector.findMethod(var1, var7, 1);
- String var8 = "remove" + var6;
- this.removeMethod = Introspector.findMethod(var1, var8, 1);
- }
-
- public EventSetDescriptor(Class var1, String var2, Class var3, String[] var4, String var5, String var6) throws IntrospectionException {
- ((FeatureDescriptor)this).setName(var2);
- this.listenerMethods = new Method[var4.length];
-
- for(int var7 = 0; var7 < this.listenerMethods.length; ++var7) {
- this.listenerMethods[var7] = Introspector.findMethod(var3, var4[var7], 1);
- }
-
- this.addMethod = Introspector.findMethod(var1, var5, 1);
- this.removeMethod = Introspector.findMethod(var1, var6, 1);
- this.listenerType = var3;
- }
-
- public EventSetDescriptor(String var1, Class var2, Method[] var3, Method var4, Method var5) throws IntrospectionException {
- ((FeatureDescriptor)this).setName(var1);
- this.listenerMethods = var3;
- this.addMethod = var4;
- this.removeMethod = var5;
- this.listenerType = var2;
- }
-
- public EventSetDescriptor(String var1, Class var2, MethodDescriptor[] var3, Method var4, Method var5) throws IntrospectionException {
- ((FeatureDescriptor)this).setName(var1);
- this.listenerMethodDescriptors = var3;
- this.addMethod = var4;
- this.removeMethod = var5;
- this.listenerType = var2;
- }
-
- public Class getListenerType() {
- return this.listenerType;
- }
-
- public Method[] getListenerMethods() {
- if (this.listenerMethods == null && this.listenerMethodDescriptors != null) {
- this.listenerMethods = new Method[this.listenerMethodDescriptors.length];
-
- for(int var1 = 0; var1 < this.listenerMethods.length; ++var1) {
- this.listenerMethods[var1] = this.listenerMethodDescriptors[var1].getMethod();
- }
- }
-
- return this.listenerMethods;
- }
-
- public MethodDescriptor[] getListenerMethodDescriptors() {
- if (this.listenerMethodDescriptors == null && this.listenerMethods != null) {
- this.listenerMethodDescriptors = new MethodDescriptor[this.listenerMethods.length];
-
- for(int var1 = 0; var1 < this.listenerMethods.length; ++var1) {
- this.listenerMethodDescriptors[var1] = new MethodDescriptor(this.listenerMethods[var1]);
- }
- }
-
- return this.listenerMethodDescriptors;
- }
-
- public Method getAddListenerMethod() {
- return this.addMethod;
- }
-
- public Method getRemoveListenerMethod() {
- return this.removeMethod;
- }
-
- public void setUnicast(boolean var1) {
- this.unicast = var1;
- }
-
- public boolean isUnicast() {
- return this.unicast;
- }
-
- public void setInDefaultEventSet(boolean var1) {
- this.inDefaultEventSet = var1;
- }
-
- public boolean isInDefaultEventSet() {
- return this.inDefaultEventSet;
- }
-
- EventSetDescriptor(EventSetDescriptor var1, EventSetDescriptor var2) {
- super(var1, var2);
- this.listenerMethodDescriptors = var1.listenerMethodDescriptors;
- if (var2.listenerMethodDescriptors != null) {
- this.listenerMethodDescriptors = var2.listenerMethodDescriptors;
- }
-
- if (this.listenerMethodDescriptors == null) {
- this.listenerMethods = var2.listenerMethods;
- }
-
- this.addMethod = var2.addMethod;
- this.removeMethod = var2.removeMethod;
- this.unicast = var2.unicast;
- this.listenerType = var2.listenerType;
- if (!var1.inDefaultEventSet || !var2.inDefaultEventSet) {
- this.inDefaultEventSet = false;
- }
-
- }
- }
-