summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
authorMichi Henning <michi@zeroc.com>2009-05-14 12:20:13 +1000
committerMichi Henning <michi@zeroc.com>2009-05-14 12:20:13 +1000
commit99e135fb44e7e011719dec95224c5ae6abeed42d (patch)
tree1788d53c5373b190ea6bdc3d3a53678c85c8152d /java
parentFixed incorrect string comparison (reference equality instead of string equal... (diff)
downloadice-99e135fb44e7e011719dec95224c5ae6abeed42d.tar.bz2
ice-99e135fb44e7e011719dec95224c5ae6abeed42d.tar.xz
ice-99e135fb44e7e011719dec95224c5ae6abeed42d.zip
Fixed a few more issues reported by FindBugs, mostly about inconsistencies with equals/hash.
Diffstat (limited to 'java')
-rw-r--r--java/src/Ice/AMI_Object_ice_flushBatchRequests.java3
-rw-r--r--java/src/IceInternal/FixedReference.java7
-rw-r--r--java/src/IceInternal/LocatorInfo.java6
-rw-r--r--java/src/IceInternal/RouterInfo.java6
-rw-r--r--java/src/IceInternal/ServantManager.java14
-rw-r--r--java/src/IceInternal/Timer.java20
6 files changed, 40 insertions, 16 deletions
diff --git a/java/src/Ice/AMI_Object_ice_flushBatchRequests.java b/java/src/Ice/AMI_Object_ice_flushBatchRequests.java
index 08d363273af..4f488466a69 100644
--- a/java/src/Ice/AMI_Object_ice_flushBatchRequests.java
+++ b/java/src/Ice/AMI_Object_ice_flushBatchRequests.java
@@ -23,7 +23,6 @@ public abstract class AMI_Object_ice_flushBatchRequests extends IceInternal.Batc
// requests were queued with the connection, they would be lost without being noticed.
//
Ice._ObjectDel delegate = null;
- int cnt = -1; // Don't retry.
Ice.ObjectPrxHelperBase proxy = (Ice.ObjectPrxHelperBase)prx;
try
{
@@ -32,7 +31,7 @@ public abstract class AMI_Object_ice_flushBatchRequests extends IceInternal.Batc
}
catch(Ice.LocalException ex)
{
- cnt = proxy.__handleException(delegate, ex, null, cnt);
+ proxy.__handleException(delegate, ex, null, -1); // Don't retry
}
}
catch(Ice.LocalException ex)
diff --git a/java/src/IceInternal/FixedReference.java b/java/src/IceInternal/FixedReference.java
index f91064ef8e0..1501576c40d 100644
--- a/java/src/IceInternal/FixedReference.java
+++ b/java/src/IceInternal/FixedReference.java
@@ -267,5 +267,12 @@ public class FixedReference extends Reference
return _fixedConnection.equals(rhs._fixedConnection);
}
+ public int
+ hashCode()
+ {
+ return super.hashCode();
+ }
+
+
private Ice.ConnectionI _fixedConnection;
}
diff --git a/java/src/IceInternal/LocatorInfo.java b/java/src/IceInternal/LocatorInfo.java
index 7ccc7b8fee3..461a43b2e42 100644
--- a/java/src/IceInternal/LocatorInfo.java
+++ b/java/src/IceInternal/LocatorInfo.java
@@ -355,6 +355,12 @@ public final class LocatorInfo
return false;
}
+ public int
+ hashCode()
+ {
+ return _locator.hashCode();
+ }
+
public Ice.LocatorPrx
getLocator()
{
diff --git a/java/src/IceInternal/RouterInfo.java b/java/src/IceInternal/RouterInfo.java
index 002c076d7f9..f9998d9cdd5 100644
--- a/java/src/IceInternal/RouterInfo.java
+++ b/java/src/IceInternal/RouterInfo.java
@@ -55,6 +55,12 @@ public final class RouterInfo
return false;
}
+ public int
+ hashCode()
+ {
+ return _router.hashCode();
+ }
+
public Ice.RouterPrx
getRouter()
{
diff --git a/java/src/IceInternal/ServantManager.java b/java/src/IceInternal/ServantManager.java
index 072f8c8bd84..ba3c1f80cac 100644
--- a/java/src/IceInternal/ServantManager.java
+++ b/java/src/IceInternal/ServantManager.java
@@ -250,20 +250,6 @@ public final class ServantManager
_adapterName = adapterName;
}
- protected void
- finalize()
- throws Throwable
- {
- //
- // Don't check whether destroy() has been called. It might have
- // not been called if the associated object adapter was not
- // properly deactivated.
- //
- //IceUtilInternal.Assert.FinalizerAssert(_instance == null);
-
- super.finalize();
- }
-
//
// Only for use by Ice.ObjectAdapterI.
//
diff --git a/java/src/IceInternal/Timer.java b/java/src/IceInternal/Timer.java
index 87050899976..c7840bd339a 100644
--- a/java/src/IceInternal/Timer.java
+++ b/java/src/IceInternal/Timer.java
@@ -286,6 +286,26 @@ public final class Timer extends Thread
return 0;
}
+ public boolean
+ equals(Object obj)
+ {
+ if(this == obj)
+ {
+ return true;
+ }
+ if(obj instanceof Token)
+ {
+ return compareTo((Token)obj) == 0;
+ }
+ return false;
+ }
+
+ public int
+ hashCode()
+ {
+ return id ^ (int)scheduledTime;
+ }
+
long scheduledTime;
int id; // Since we can't compare references, we need to use another id.
long delay;