diff options
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/Freeze/BackgroundSaveEvictorI.java | 1 | ||||
-rw-r--r-- | java/src/Freeze/EvictorI.java | 13 | ||||
-rw-r--r-- | java/src/Freeze/TransactionalEvictorI.java | 1 | ||||
-rw-r--r-- | java/src/Ice/ObjectAdapterI.java | 15 |
4 files changed, 24 insertions, 6 deletions
diff --git a/java/src/Freeze/BackgroundSaveEvictorI.java b/java/src/Freeze/BackgroundSaveEvictorI.java index da633b450f1..adb128e3c87 100644 --- a/java/src/Freeze/BackgroundSaveEvictorI.java +++ b/java/src/Freeze/BackgroundSaveEvictorI.java @@ -198,6 +198,7 @@ class BackgroundSaveEvictorI extends EvictorI implements BackgroundSaveEvictor, addFacet(Ice.Object servant, Ice.Identity ident, String facet) { checkIdentity(ident); + checkServant(servant); if(facet == null) { diff --git a/java/src/Freeze/EvictorI.java b/java/src/Freeze/EvictorI.java index 24575082d7e..86284eef996 100644 --- a/java/src/Freeze/EvictorI.java +++ b/java/src/Freeze/EvictorI.java @@ -561,9 +561,16 @@ abstract class EvictorI implements Evictor { if(ident.name == null || ident.name.length() == 0) { - Ice.IllegalIdentityException e = new Ice.IllegalIdentityException(); - e.id = ident; - throw e; + throw new Ice.IllegalIdentityException(ident); + } + } + + static void + checkServant(Ice.Object servant) + { + if(servant == null) + { + throw new Ice.IllegalServantException("cannot add null servant to Freeze Evictor"); } } diff --git a/java/src/Freeze/TransactionalEvictorI.java b/java/src/Freeze/TransactionalEvictorI.java index 5d92342b61d..1e24e8a6319 100644 --- a/java/src/Freeze/TransactionalEvictorI.java +++ b/java/src/Freeze/TransactionalEvictorI.java @@ -52,6 +52,7 @@ class TransactionalEvictorI extends EvictorI implements TransactionalEvictor addFacet(Ice.Object servant, Ice.Identity ident, String facet) { checkIdentity(ident); + checkServant(servant); if(facet == null) { diff --git a/java/src/Ice/ObjectAdapterI.java b/java/src/Ice/ObjectAdapterI.java index c8760a558d7..05f79565a9d 100644 --- a/java/src/Ice/ObjectAdapterI.java +++ b/java/src/Ice/ObjectAdapterI.java @@ -423,6 +423,7 @@ public final class ObjectAdapterI implements ObjectAdapter { checkForDeactivation(); checkIdentity(ident); + checkServant(object); // // Create a copy of the Identity argument, in case the caller @@ -456,6 +457,7 @@ public final class ObjectAdapterI implements ObjectAdapter public synchronized void addDefaultServant(Ice.Object servant, String category) { + checkServant(servant); checkForDeactivation(); _servantManager.addDefaultServant(servant, category); @@ -1150,9 +1152,7 @@ public final class ObjectAdapterI implements ObjectAdapter { if(ident.name == null || ident.name.length() == 0) { - IllegalIdentityException e = new IllegalIdentityException(); - e.id = (Identity)ident.clone(); - throw e; + throw new IllegalIdentityException(ident); } if(ident.category == null) @@ -1161,6 +1161,15 @@ public final class ObjectAdapterI implements ObjectAdapter } } + private static void + checkServant(Ice.Object servant) + { + if(servant == null) + { + throw new IllegalServantException("cannot add null servant to Object Adapter"); + } + } + private java.util.List<IceInternal.EndpointI> parseEndpoints(String endpts, boolean oaEndpoints) { |