summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp')
-rw-r--r--cpp/CHANGES3
-rw-r--r--cpp/src/Glacier2/Glacier2Router.cpp4
-rw-r--r--cpp/src/Glacier2/RouterI.cpp12
-rw-r--r--cpp/src/Glacier2/RouterI.h7
-rw-r--r--cpp/src/Glacier2/SessionRouterI.cpp14
-rw-r--r--cpp/src/Glacier2/SessionRouterI.h3
-rwxr-xr-xcpp/test/Glacier2/filters/run.py1
-rwxr-xr-xcpp/test/Glacier2/sessionControl/run.py1
8 files changed, 23 insertions, 22 deletions
diff --git a/cpp/CHANGES b/cpp/CHANGES
index af7ecff4249..e3698c7bb70 100644
--- a/cpp/CHANGES
+++ b/cpp/CHANGES
@@ -1,6 +1,9 @@
Changes since version 3.1.1
---------------------------
+- The Glacier2 SessionControl object is now registered with the Server
+ adapter rather than the Admin adapter.
+
- Added destroy method to the ObjectAdapter interface. It is necessary
to call destroy to clean up the adapter resources and be able to
recreate a new adapter with the same name. Communicator destroy
diff --git a/cpp/src/Glacier2/Glacier2Router.cpp b/cpp/src/Glacier2/Glacier2Router.cpp
index aeac0ac4d27..83b737dfb60 100644
--- a/cpp/src/Glacier2/Glacier2Router.cpp
+++ b/cpp/src/Glacier2/Glacier2Router.cpp
@@ -367,8 +367,8 @@ Glacier2::RouterService::start(int argc, char* argv[])
// and all required servant locators, so no registration has to be
// done here.
//
- _sessionRouter = new SessionRouterI(clientAdapter, serverAdapter, adminAdapter, verifier, sessionManager,
- sslVerifier, sslSessionManager);
+ _sessionRouter = new SessionRouterI(clientAdapter, serverAdapter, verifier, sessionManager, sslVerifier,
+ sslSessionManager);
//
// If we have an admin adapter, we add an admin object.
diff --git a/cpp/src/Glacier2/RouterI.cpp b/cpp/src/Glacier2/RouterI.cpp
index af1275bd627..fd534990012 100644
--- a/cpp/src/Glacier2/RouterI.cpp
+++ b/cpp/src/Glacier2/RouterI.cpp
@@ -19,12 +19,12 @@ using namespace Ice;
using namespace Glacier2;
Glacier2::RouterI::RouterI(const ObjectAdapterPtr& clientAdapter, const ObjectAdapterPtr& serverAdapter,
- const ObjectAdapterPtr& adminAdapter, const ConnectionPtr& connection,
- const string& userId, const SessionPrx& session, const Identity& controlId,
- const FilterManagerPtr& filters, const Ice::Context& sslContext) :
+ const ConnectionPtr& connection, const string& userId, const SessionPrx& session,
+ const Identity& controlId, const FilterManagerPtr& filters,
+ const Ice::Context& sslContext) :
_communicator(clientAdapter->getCommunicator()),
_clientBlobject(new ClientBlobject(_communicator, filters, sslContext)),
- _adminAdapter(adminAdapter),
+ _serverAdapter(serverAdapter),
_connection(connection),
_userId(userId),
_session(session),
@@ -80,14 +80,14 @@ Glacier2::RouterI::destroy()
if(_session)
{
- if(_adminAdapter)
+ if(_serverAdapter)
{
try
{
//
// Remove the session control object.
//
- _adminAdapter->remove(_controlId);
+ _serverAdapter->remove(_controlId);
}
catch(const NotRegisteredException&)
{
diff --git a/cpp/src/Glacier2/RouterI.h b/cpp/src/Glacier2/RouterI.h
index d1277c47e8f..533f41a5aca 100644
--- a/cpp/src/Glacier2/RouterI.h
+++ b/cpp/src/Glacier2/RouterI.h
@@ -29,9 +29,8 @@ class RouterI : public Router, public IceUtil::Mutex
{
public:
- RouterI(const Ice::ObjectAdapterPtr&, const Ice::ObjectAdapterPtr&, const Ice::ObjectAdapterPtr&,
- const Ice::ConnectionPtr&, const std::string&, const SessionPrx&,
- const Ice::Identity&, const FilterManagerPtr&, const Ice::Context& sslContext);
+ RouterI(const Ice::ObjectAdapterPtr&, const Ice::ObjectAdapterPtr&, const Ice::ConnectionPtr&, const std::string&,
+ const SessionPrx&, const Ice::Identity&, const FilterManagerPtr&, const Ice::Context& sslContext);
virtual ~RouterI();
void destroy();
@@ -62,7 +61,7 @@ private:
const Ice::ObjectPrx _serverProxy;
const ClientBlobjectPtr _clientBlobject;
const ServerBlobjectPtr _serverBlobject;
- const Ice::ObjectAdapterPtr _adminAdapter;
+ const Ice::ObjectAdapterPtr _serverAdapter;
const Ice::ConnectionPtr _connection;
const std::string _userId;
const SessionPrx _session;
diff --git a/cpp/src/Glacier2/SessionRouterI.cpp b/cpp/src/Glacier2/SessionRouterI.cpp
index 44329296cd5..5046a0a2f47 100644
--- a/cpp/src/Glacier2/SessionRouterI.cpp
+++ b/cpp/src/Glacier2/SessionRouterI.cpp
@@ -238,7 +238,6 @@ using namespace Glacier2;
Glacier2::SessionRouterI::SessionRouterI(const ObjectAdapterPtr& clientAdapter,
const ObjectAdapterPtr& serverAdapter,
- const ObjectAdapterPtr& adminAdapter,
const PermissionsVerifierPrx& verifier,
const SessionManagerPrx& sessionManager,
const SSLPermissionsVerifierPrx& sslVerifier,
@@ -249,7 +248,6 @@ Glacier2::SessionRouterI::SessionRouterI(const ObjectAdapterPtr& clientAdapter,
_rejectTraceLevel(_properties->getPropertyAsInt("Glacier2.Client.Trace.Reject")),
_clientAdapter(clientAdapter),
_serverAdapter(serverAdapter),
- _adminAdapter(adminAdapter),
_verifier(verifier),
_sessionManager(sessionManager),
_sslVerifier(sslVerifier),
@@ -860,7 +858,7 @@ Glacier2::SessionRouterI::createSessionInternal(const string& userId, bool allow
// responsible for creating the filters and we want them to be
// accessible during session creation.
//
- FilterManagerPtr filterManager = FilterManager::create(_clientAdapter->getCommunicator(), _adminAdapter,
+ FilterManagerPtr filterManager = FilterManager::create(_clientAdapter->getCommunicator(), _serverAdapter,
userId, allowAddUserMode);
//
@@ -870,10 +868,10 @@ Glacier2::SessionRouterI::createSessionInternal(const string& userId, bool allow
if(factory)
{
SessionControlPrx control;
- if(_adminAdapter)
+ if(_serverAdapter)
{
control = SessionControlPrx::uncheckedCast(
- _adminAdapter->addWithUUID(
+ _serverAdapter->addWithUUID(
new SessionControlI(this, current.con, filterManager, _sessionTimeout)));
controlId = control->ice_getIdentity();
}
@@ -883,7 +881,7 @@ Glacier2::SessionRouterI::createSessionInternal(const string& userId, bool allow
//
// Add a new per-client router.
//
- router = new RouterI(_clientAdapter, _serverAdapter, _adminAdapter, current.con, userId,
+ router = new RouterI(_clientAdapter, _serverAdapter, current.con, userId,
session, controlId, filterManager, sslContext);
}
catch(const Exception& ex)
@@ -901,11 +899,11 @@ Glacier2::SessionRouterI::createSessionInternal(const string& userId, bool allow
if(session)
{
- if(_adminAdapter)
+ if(_serverAdapter)
{
try
{
- _adminAdapter->remove(controlId);
+ _serverAdapter->remove(controlId);
}
catch(const Exception&)
{
diff --git a/cpp/src/Glacier2/SessionRouterI.h b/cpp/src/Glacier2/SessionRouterI.h
index 24b28dd0327..9a65eedeb1d 100644
--- a/cpp/src/Glacier2/SessionRouterI.h
+++ b/cpp/src/Glacier2/SessionRouterI.h
@@ -47,7 +47,7 @@ class SessionRouterI : public Router, public IceUtil::Monitor<IceUtil::Mutex>
{
public:
- SessionRouterI(const Ice::ObjectAdapterPtr&, const Ice::ObjectAdapterPtr&, const Ice::ObjectAdapterPtr&,
+ SessionRouterI(const Ice::ObjectAdapterPtr&, const Ice::ObjectAdapterPtr&,
const PermissionsVerifierPrx&, const SessionManagerPrx&,
const SSLPermissionsVerifierPrx&, const SSLSessionManagerPrx&);
virtual ~SessionRouterI();
@@ -81,7 +81,6 @@ private:
const int _rejectTraceLevel;
const Ice::ObjectAdapterPtr _clientAdapter;
const Ice::ObjectAdapterPtr _serverAdapter;
- const Ice::ObjectAdapterPtr _adminAdapter;
const PermissionsVerifierPrx _verifier;
const SessionManagerPrx _sessionManager;
const SSLPermissionsVerifierPrx _sslVerifier;
diff --git a/cpp/test/Glacier2/filters/run.py b/cpp/test/Glacier2/filters/run.py
index bfa651a14d1..93d7564d9d6 100755
--- a/cpp/test/Glacier2/filters/run.py
+++ b/cpp/test/Glacier2/filters/run.py
@@ -36,6 +36,7 @@ router = os.path.join(toplevel, "bin", "glacier2router")
command = router + TestUtil.clientServerOptions + \
r' --Ice.OA.Glacier2.Client.Endpoints="default -p 12347 -t 10000"' + \
r' --Ice.OA.Glacier2.Admin.Endpoints="tcp -h 127.0.0.1 -p 12348 -t 10000"' + \
+ r' --Ice.OA.Glacier2.Server.Endpoints="default -p 12349 -t 10000"' + \
r' --Glacier2.SessionManager="SessionManager:tcp -h 127.0.0.1 -p 12010 -t 10000"' + \
r' --Glacier2.PermissionsVerifier="Glacier2/NullPermissionsVerifier"' + \
r' --Ice.Default.Locator="locator:default -h 127.0.0.1 -p 12012 -t 10000"'
diff --git a/cpp/test/Glacier2/sessionControl/run.py b/cpp/test/Glacier2/sessionControl/run.py
index edcb81d07e1..35d14334c52 100755
--- a/cpp/test/Glacier2/sessionControl/run.py
+++ b/cpp/test/Glacier2/sessionControl/run.py
@@ -36,6 +36,7 @@ router = os.path.join(toplevel, "bin", "glacier2router")
command = router + TestUtil.clientServerOptions + \
r' --Ice.OA.Glacier2.Client.Endpoints="default -p 12347 -t 10000"' + \
r' --Ice.OA.Glacier2.Admin.Endpoints="tcp -h 127.0.0.1 -p 12348 -t 10000"' \
+ r' --Ice.OA.Glacier2.Server.Endpoints="default -p 12349 -t 10000"' + \
r' --Glacier2.SessionManager="SessionManager:tcp -h 127.0.0.1 -p 12010 -t 10000"' \
r' --Glacier2.PermissionsVerifier="Glacier2/NullPermissionsVerifier"'