diff options
author | Benoit Foucher <benoit@zeroc.com> | 2005-10-12 17:21:02 +0000 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2005-10-12 17:21:02 +0000 |
commit | aac841a43441f7911056ddbc6fc8c21aa6126431 (patch) | |
tree | 8dcad281655b53155e9c10e72b07d436208787a8 /java/src | |
parent | changing getLogger to return a custom Python impl (diff) | |
download | ice-aac841a43441f7911056ddbc6fc8c21aa6126431.tar.bz2 ice-aac841a43441f7911056ddbc6fc8c21aa6126431.tar.xz ice-aac841a43441f7911056ddbc6fc8c21aa6126431.zip |
Added support for replica groups and removed replicated adapters.
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/Ice/ObjectAdapterI.java | 63 | ||||
-rw-r--r-- | java/src/IceInternal/PropertyNames.java | 30 |
2 files changed, 59 insertions, 34 deletions
diff --git a/java/src/Ice/ObjectAdapterI.java b/java/src/Ice/ObjectAdapterI.java index a704ecb4f9c..691a4212226 100644 --- a/java/src/Ice/ObjectAdapterI.java +++ b/java/src/Ice/ObjectAdapterI.java @@ -34,7 +34,6 @@ public final class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapt Ice.LocatorRegistryPrx locatorRegistry = null; boolean registerProcess = false; String serverId = ""; - String replicaId = ""; Communicator communicator = null; boolean printAdapterReady = false; @@ -51,7 +50,6 @@ public final class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapt registerProcess = _instance.properties().getPropertyAsInt(_name + ".RegisterProcess") > 0; serverId = _instance.properties().getProperty("Ice.ServerId"); - replicaId = _instance.properties().getPropertyWithDefault(_name + ".ReplicaId", serverId); printAdapterReady = _instance.properties().getPropertyAsInt("Ice.PrintAdapterReady") > 0; if(registerProcess && locatorRegistry == null) @@ -97,7 +95,7 @@ public final class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapt Identity ident = new Identity(); ident.category = ""; ident.name = "dummy"; - locatorRegistry.setAdapterDirectProxy(_id, replicaId, createDirectProxy(ident)); + locatorRegistry.setAdapterDirectProxy(_id, _replicaGroupId, createDirectProxy(ident)); } catch(ObjectAdapterDeactivatedException ex) { @@ -107,7 +105,14 @@ public final class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapt { NotRegisteredException ex1 = new NotRegisteredException(); ex1.kindOfObject = "object adapter"; - ex1.id = ex.replica ? _id + " (replica = " + replicaId + ")" : _id; + ex1.id = _id; + throw ex1; + } + catch(InvalidReplicaGroupIdException ex) + { + NotRegisteredException ex1 = new NotRegisteredException(); + ex1.kindOfObject = "replica group"; + ex1.id = _replicaGroupId; throw ex1; } catch(AdapterAlreadyActiveException ex) @@ -450,6 +455,15 @@ public final class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapt } public synchronized ObjectPrx + createIndirectProxy(Identity ident) + { + checkForDeactivation(); + checkIdentity(ident); + + return newIndirectProxy(ident, "", _id); + } + + public synchronized ObjectPrx createReverseProxy(Identity ident) { checkForDeactivation(); @@ -778,6 +792,7 @@ public final class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapt _printAdapterReadyDone = false; _name = name; _id = instance.properties().getProperty(name + ".AdapterId"); + _replicaGroupId = instance.properties().getProperty(name + ".ReplicaGroupId"); _directCount = 0; _waitForDeactivate = false; @@ -898,20 +913,13 @@ public final class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapt { return newDirectProxy(ident, facet); } - else + else if(_replicaGroupId.length() == 0) { - // - // Create a reference with the adapter id and return a - // proxy for the reference. - // - IceInternal.EndpointI[] endpoints = new IceInternal.EndpointI[0]; - ConnectionI[] connections = new ConnectionI[0]; - IceInternal.Reference reference = - _instance.referenceFactory().create(ident, new java.util.HashMap(), facet, - IceInternal.Reference.ModeTwoway, false, _id, null, - _locatorInfo, - _instance.defaultsAndOverrides().defaultCollocationOptimization); - return _instance.proxyFactory().referenceToProxy(reference); + return newIndirectProxy(ident, facet, _id); + } + else + { + return newIndirectProxy(ident, facet, _replicaGroupId); } } @@ -939,12 +947,28 @@ public final class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapt // ConnectionI[] connections = new ConnectionI[0]; IceInternal.Reference reference = - _instance.referenceFactory().create(ident, new java.util.HashMap(), facet, IceInternal.Reference.ModeTwoway, - false, endpoints, null, + _instance.referenceFactory().create(ident, new java.util.HashMap(), facet, + IceInternal.Reference.ModeTwoway, false, endpoints, null, _instance.defaultsAndOverrides().defaultCollocationOptimization); return _instance.proxyFactory().referenceToProxy(reference); } + private ObjectPrx + newIndirectProxy(Identity ident, String facet, String id) + { + // + // Create a reference with the adapter id and return a proxy + // for the reference. + // + IceInternal.EndpointI[] endpoints = new IceInternal.EndpointI[0]; + ConnectionI[] connections = new ConnectionI[0]; + IceInternal.Reference reference = + _instance.referenceFactory().create(ident, new java.util.HashMap(), facet, + IceInternal.Reference.ModeTwoway, false, _id, null, _locatorInfo, + _instance.defaultsAndOverrides().defaultCollocationOptimization); + return _instance.proxyFactory().referenceToProxy(reference); + } + private void checkForDeactivation() { @@ -1062,6 +1086,7 @@ public final class ObjectAdapterI extends LocalObjectImpl implements ObjectAdapt private boolean _printAdapterReadyDone; final private String _name; final private String _id; + final private String _replicaGroupId; private java.util.ArrayList _incomingConnectionFactories = new java.util.ArrayList(); private java.util.ArrayList _routerEndpoints = new java.util.ArrayList(); private java.util.ArrayList _routerInfos = new java.util.ArrayList(); diff --git a/java/src/IceInternal/PropertyNames.java b/java/src/IceInternal/PropertyNames.java index 249086f5345..ac45280cf03 100644 --- a/java/src/IceInternal/PropertyNames.java +++ b/java/src/IceInternal/PropertyNames.java @@ -7,7 +7,7 @@ // // ********************************************************************** -// Generated by makeprops.py from file `../config/PropertyNames.def', Wed Oct 12 11:03:32 2005 +// Generated by makeprops.py from file `../config/PropertyNames.def', Wed Oct 12 16:57:50 2005 // IMPORTANT: Do not edit this file -- any edits made here will be lost! @@ -83,7 +83,7 @@ public final class PropertyNames "^IceBox\\.PrintServicesReady$", "^IceBox\\.Service\\.[^\\s.]+$", "^IceBox\\.ServiceManager\\.AdapterId$", - "^IceBox\\.ServiceManager\\.ReplicaId$", + "^IceBox\\.ServiceManager\\.ReplicaGroupId$", "^IceBox\\.ServiceManager\\.Endpoints$", "^IceBox\\.ServiceManager\\.Identity$", "^IceBox\\.ServiceManager\\.PublishedEndpoints$", @@ -100,7 +100,7 @@ public final class PropertyNames { "^IceGrid\\.InstanceName$", "^IceGrid\\.Node\\.AdapterId$", - "^IceGrid\\.Node\\.ReplicaId$", + "^IceGrid\\.Node\\.ReplicaGroupId$", "^IceGrid\\.Node\\.RegisterProcess$", "^IceGrid\\.Node\\.CollocateRegistry$", "^IceGrid\\.Node\\.Data$", @@ -122,7 +122,7 @@ public final class PropertyNames "^IceGrid\\.Node\\.Trace\\.Patch$", "^IceGrid\\.Node\\.WaitTime$", "^IceGrid\\.Registry\\.Admin\\.AdapterId$", - "^IceGrid\\.Registry\\.Admin\\.ReplicaId$", + "^IceGrid\\.Registry\\.Admin\\.ReplicaGroupId$", "^IceGrid\\.Registry\\.Admin\\.Endpoints$", "^IceGrid\\.Registry\\.Admin\\.PublishedEndpoints$", "^IceGrid\\.Registry\\.Admin\\.ThreadPool\\.Size$", @@ -131,7 +131,7 @@ public final class PropertyNames "^IceGrid\\.Registry\\.Admin\\.ThreadPool\\.StackSize$", "^IceGrid\\.Registry\\.AdminIdentity$", "^IceGrid\\.Registry\\.Client\\.AdapterId$", - "^IceGrid\\.Registry\\.Client\\.ReplicaId$", + "^IceGrid\\.Registry\\.Client\\.ReplicaGroupId$", "^IceGrid\\.Registry\\.Client\\.Endpoints$", "^IceGrid\\.Registry\\.Client\\.PublishedEndpoints$", "^IceGrid\\.Registry\\.Client\\.ThreadPool\\.Size$", @@ -142,7 +142,7 @@ public final class PropertyNames "^IceGrid\\.Registry\\.DefaultTemplates$", "^IceGrid\\.Registry\\.DynamicRegistration$", "^IceGrid\\.Registry\\.Internal\\.AdapterId$", - "^IceGrid\\.Registry\\.Internal\\.ReplicaId$", + "^IceGrid\\.Registry\\.Internal\\.ReplicaGroupId$", "^IceGrid\\.Registry\\.Internal\\.Endpoints$", "^IceGrid\\.Registry\\.Internal\\.PublishedEndpoints$", "^IceGrid\\.Registry\\.Internal\\.ThreadPool\\.Size$", @@ -153,7 +153,7 @@ public final class PropertyNames "^IceGrid\\.Registry\\.NodeSessionTimeout$", "^IceGrid\\.Registry\\.QueryIdentity$", "^IceGrid\\.Registry\\.Server\\.AdapterId$", - "^IceGrid\\.Registry\\.Server\\.ReplicaId$", + "^IceGrid\\.Registry\\.Server\\.ReplicaGroupId$", "^IceGrid\\.Registry\\.Server\\.Endpoints$", "^IceGrid\\.Registry\\.Server\\.PublishedEndpoints$", "^IceGrid\\.Registry\\.Server\\.ThreadPool\\.Size$", @@ -187,9 +187,9 @@ public final class PropertyNames public static final String IcePatch2Props[] = { "^IcePatch2\\.AdapterId$", - "^IcePatch2\\.ReplicaId$", + "^IcePatch2\\.ReplicaGroupId$", "^IcePatch2\\.Admin\\.AdapterId$", - "^IcePatch2\\.Admin\\.ReplicaId$", + "^IcePatch2\\.Admin\\.ReplicaGroupId$", "^IcePatch2\\.Admin\\.Endpoints$", "^IcePatch2\\.Admin\\.PublishedEndpoints$", "^IcePatch2\\.Admin\\.ThreadPool\\.Size$", @@ -254,7 +254,7 @@ public final class PropertyNames "^IceStorm\\.Flush\\.Timeout$", "^IceStorm\\.InstanceName$", "^IceStorm\\.Publish\\.AdapterId$", - "^IceStorm\\.Publish\\.ReplicaId$", + "^IceStorm\\.Publish\\.ReplicaGroupId$", "^IceStorm\\.Publish\\.Endpoints$", "^IceStorm\\.Publish\\.PublishedEndpoints$", "^IceStorm\\.Publish\\.RegisterProcess$", @@ -263,7 +263,7 @@ public final class PropertyNames "^IceStorm\\.Publish\\.ThreadPool\\.SizeWarn$", "^IceStorm\\.Publish\\.ThreadPool\\.StackSize$", "^IceStorm\\.TopicManagerIdentity$", - "^IceStorm\\.TopicManager\\.ReplicaId$", + "^IceStorm\\.TopicManager\\.ReplicaGroupId$", "^IceStorm\\.TopicManager\\.Endpoints$", "^IceStorm\\.TopicManager\\.Proxy$", "^IceStorm\\.TopicManager\\.PublishedEndpoints$", @@ -283,10 +283,10 @@ public final class PropertyNames { "^Glacier\\.Router\\.AcceptCert$", "^Glacier\\.Router\\.AdapterId$", - "^Glacier\\.Router\\.ReplicaId$", + "^Glacier\\.Router\\.ReplicaGroupId$", "^Glacier\\.Router\\.AllowCategories$", "^Glacier\\.Router\\.Client\\.AdapterId$", - "^Glacier\\.Router\\.Client\\.ReplicaId$", + "^Glacier\\.Router\\.Client\\.ReplicaGroupId$", "^Glacier\\.Router\\.Client\\.Endpoints$", "^Glacier\\.Router\\.Client\\.ForwardContext$", "^Glacier\\.Router\\.Client\\.PublishedEndpoints$", @@ -301,7 +301,7 @@ public final class PropertyNames "^Glacier\\.Router\\.PrintProxyOnFd$", "^Glacier\\.Router\\.PublishedEndpoints$", "^Glacier\\.Router\\.Server\\.AdapterId$", - "^Glacier\\.Router\\.Server\\.ReplicaId$", + "^Glacier\\.Router\\.Server\\.ReplicaGroupId$", "^Glacier\\.Router\\.Server\\.Endpoints$", "^Glacier\\.Router\\.Server\\.ForwardContext$", "^Glacier\\.Router\\.Server\\.PublishedEndpoints$", @@ -322,7 +322,7 @@ public final class PropertyNames "^Glacier\\.Router\\.Trace\\.Throttle$", "^Glacier\\.Router\\.UserId$", "^Glacier\\.Starter\\.AdapterId$", - "^Glacier\\.Starter\\.ReplicaId$", + "^Glacier\\.Starter\\.ReplicaGroupId$", "^Glacier\\.Starter\\.AddUserToAllowCategories$", "^Glacier\\.Starter\\.Certificate\\.BitStrength$", "^Glacier\\.Starter\\.Certificate\\.CommonName$", |