diff options
author | Dwayne Boone <dwayne@zeroc.com> | 2006-12-13 14:34:57 +0000 |
---|---|---|
committer | Dwayne Boone <dwayne@zeroc.com> | 2006-12-13 14:34:57 +0000 |
commit | 769e22f35e9d21344639a36e07ec90ee2656140c (patch) | |
tree | 36ac09ee40ddf18d408736ceaa59ee9f8e05e414 /java/src/IceInternal/ObjectAdapterFactory.java | |
parent | Added support for server logs (diff) | |
download | ice-769e22f35e9d21344639a36e07ec90ee2656140c.tar.bz2 ice-769e22f35e9d21344639a36e07ec90ee2656140c.tar.xz ice-769e22f35e9d21344639a36e07ec90ee2656140c.zip |
Bug 1570 - object adapter configuration
Diffstat (limited to 'java/src/IceInternal/ObjectAdapterFactory.java')
-rw-r--r-- | java/src/IceInternal/ObjectAdapterFactory.java | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/java/src/IceInternal/ObjectAdapterFactory.java b/java/src/IceInternal/ObjectAdapterFactory.java index 060201bbb68..f9dda51e09f 100644 --- a/java/src/IceInternal/ObjectAdapterFactory.java +++ b/java/src/IceInternal/ObjectAdapterFactory.java @@ -127,8 +127,24 @@ public final class ObjectAdapterFactory throw new Ice.AlreadyRegisteredException("object adapter", name); } - adapter = new Ice.ObjectAdapterI(_instance, _communicator, this, name, endpoints, router); - _adapters.put(name, adapter); + if(name.length() == 0 && (endpoints.length() != 0 || router != null)) + { + Ice.InitializationException ex = new Ice.InitializationException(); + ex.reason = "Cannot configure endpoints or router with nameless object adapter"; + throw ex; + } + + if(name.length() == 0) + { + String uuid = Ice.Util.generateUUID(); + adapter = new Ice.ObjectAdapterI(_instance, _communicator, this, uuid, "", null, true); + _adapters.put(uuid, adapter); + } + else + { + adapter = new Ice.ObjectAdapterI(_instance, _communicator, this, name, endpoints, router, false); + _adapters.put(name, adapter); + } return adapter; } |