Skip to main content

This CGIT instance is deprecated, and repositories have been moved to Gitlab or Github. See the repository descriptions for specific locations.

summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.jem.beaninfo/vm_beaninfovm/org/eclipse/jem/internal/beaninfo/vm/EventSetDescriptorEquality.java')
-rw-r--r--plugins/org.eclipse.jem.beaninfo/vm_beaninfovm/org/eclipse/jem/internal/beaninfo/vm/EventSetDescriptorEquality.java145
1 files changed, 0 insertions, 145 deletions
diff --git a/plugins/org.eclipse.jem.beaninfo/vm_beaninfovm/org/eclipse/jem/internal/beaninfo/vm/EventSetDescriptorEquality.java b/plugins/org.eclipse.jem.beaninfo/vm_beaninfovm/org/eclipse/jem/internal/beaninfo/vm/EventSetDescriptorEquality.java
deleted file mode 100644
index b53aa8a72..000000000
--- a/plugins/org.eclipse.jem.beaninfo/vm_beaninfovm/org/eclipse/jem/internal/beaninfo/vm/EventSetDescriptorEquality.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jem.internal.beaninfo.vm;
-/*
-
-
- */
-
-import java.beans.*;
-import java.util.*;
-import java.lang.reflect.Method;
-/**
- * Equality tester for EventSetDescriptors
- */
-public class EventSetDescriptorEquality extends FeatureDescriptorEquality {
-
- static void INIT() {
- try {
- MAP_EQUALITY.put(EventSetDescriptor.class, (EventSetDescriptorEquality.class).getConstructor(new Class[] {EventSetDescriptor.class}));
- } catch (NoSuchMethodException e) {
- }
- }
-
- private ArrayList fListenerMethodDescriptors; // Array of MethodDescriptorEquality's.
-
- /**
- * Constructor for EventSetDescriptorEquality.
- */
- public EventSetDescriptorEquality() {
- super();
- }
-
-
- public EventSetDescriptorEquality(EventSetDescriptor descr) {
- super(descr);
- }
-
- /**
- * A new feature is being set into this object,
- * clear any cache members so that they can be reconstructed.
- *
- * NOTE: Subclasses - remember to call super.clearFeature();
- */
- protected void clearFeature() {
- super.clearFeature();
- fListenerMethodDescriptors = null;
- }
-
- protected ArrayList listenerMethodDescriptors() {
- if (fListenerMethodDescriptors == null) {
- MethodDescriptor[] mds = ((EventSetDescriptor) fFeature).getListenerMethodDescriptors();
- fListenerMethodDescriptors = new ArrayList(mds.length);
- for (int i=0; i<mds.length; i++)
- fListenerMethodDescriptors.add(new MethodDescriptorEquality(mds[i]));
- }
- return fListenerMethodDescriptors;
- }
-
- /**
- * Calculate the hashcode for the current feature, add this
- * to the hashcode received from super.calculateHashCode
- * and return the new value.
- *
- * NOTE: for subclasses, it is MANDITORY that the first line be:
- * int hashcode = super.calculateHashCode();
- * and the last line be:
- * return hashcode*31 + (your calculated hashcode for just this subclass);
- */
- protected int calculateHashCode() {
- int hashcode = super.calculateHashCode();
- EventSetDescriptor bd = (EventSetDescriptor) fFeature;
- int hc = bd.getAddListenerMethod().hashCode();
- Method[] methods = bd.getListenerMethods();
- int mhc = 0;
- for (int i=0; i<methods.length; i++)
- mhc = mhc*31 + methods[i].hashCode();
- hc += mhc;
- hc += listenerMethodDescriptors().hashCode();
- hc += bd.getListenerType().hashCode();
- hc += bd.getRemoveListenerMethod().hashCode();
- hc += (bd.isInDefaultEventSet() ? Boolean.TRUE : Boolean.FALSE).hashCode();
- hc += (bd.isUnicast() ? Boolean.TRUE : Boolean.FALSE).hashCode();
-
- return hashcode*31 + hc;
- }
-
-
- public boolean equals(Object obj) {
- if (identityTest(obj))
- return true;
-
- if (!super.equals(obj))
- return false;
-
- EventSetDescriptor oe = (EventSetDescriptor) ((FeatureDescriptorEquality) obj).fFeature;
- EventSetDescriptor fe = (EventSetDescriptor) fFeature;
-
- EventSetDescriptorEquality oee = (EventSetDescriptorEquality) obj;
-
- if (!oe.getAddListenerMethod().equals(fe.getAddListenerMethod()))
- return false;
- if (!java.util.Arrays.equals(oe.getListenerMethods(), fe.getListenerMethods()))
- return false;
- if (oe.getListenerType() != fe.getListenerType())
- return false;
- if (oe.getRemoveListenerMethod() != fe.getRemoveListenerMethod())
- return false;
- if (oe.isInDefaultEventSet() != fe.isInDefaultEventSet())
- return false;
- if (oe.isUnicast() != oe.isUnicast())
- return false;
-
- if (fListenerMethodDescriptors != null || oee.fListenerMethodDescriptors != null) {
- // We are in a Map lookup situation, so one side has listener method equalities, so we will compare that way.
- if (!oee.listenerMethodDescriptors().equals(listenerMethodDescriptors()))
- return false;
- } else {
- // We are in the building the list phases, don't waste space building entire list.
- MethodDescriptor[] ours = fe.getListenerMethodDescriptors();
- MethodDescriptor[] theirs = oe.getListenerMethodDescriptors();
- if (ours.length != theirs.length)
- return false;
- if (ours.length > 0) {
- MethodDescriptorEquality workingOurs = new MethodDescriptorEquality();
- MethodDescriptorEquality workingThiers = new MethodDescriptorEquality();
- for (int i = 0; i < ours.length; i++) {
- workingOurs.setFeature(ours[i]);
- workingThiers.setFeature(theirs[i]);
- if (!workingOurs.equals(workingThiers))
- return false;
- }
- }
- }
-
- return true;
- }
-}

Back to the top