diff options
author | brunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-04-04 23:16:50 +0000 |
---|---|---|
committer | brunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-04-04 23:16:50 +0000 |
commit | f5a9579c4383ac0276a4586c51bc86342f5f6e2c (patch) | |
tree | e0e803b54adaebb891b285c9d414517bc55aea8e /TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp | |
parent | 6e00e4df6943e1f7050d9e7746350d5cbf5421c1 (diff) | |
download | ATCD-f5a9579c4383ac0276a4586c51bc86342f5f6e2c.tar.gz |
ChangeLogTag:Wed Apr 4 16:11:46 2001 Darrell Brunsch <brunsch@uci.edu>
Diffstat (limited to 'TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp')
-rw-r--r-- | TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp b/TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp index 7537b9245f2..6f622d99735 100644 --- a/TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp +++ b/TAO/orbsvcs/ImplRepo_Service/ImplRepo_i.cpp @@ -501,7 +501,12 @@ ImplRepo_i::register_server (const char *server, ACE_THROW_SPEC ((CORBA::SystemException, ImplementationRepository::Administration::AlreadyRegistered)) { - if (OPTIONS::instance()->debug () >= 2) + if (OPTIONS::instance ()->readonly ()) + { + ACE_THROW (CORBA::NO_PERMISSION ()); + } + + if (OPTIONS::instance ()->debug () >= 2) { ACE_DEBUG ((LM_DEBUG, "Server: %s\n" "Command Line: %s\n" @@ -564,9 +569,14 @@ ImplRepo_i::register_server (const char *server, void ImplRepo_i::reregister_server (const char *server, const ImplementationRepository::StartupOptions &options, - CORBA::Environment &) + CORBA::Environment &ACE_TRY_ENV) ACE_THROW_SPEC ((CORBA::SystemException)) { + if (OPTIONS::instance ()->readonly ()) + { + ACE_THROW (CORBA::NO_PERMISSION ()); + } + // Get current starting up value int starting_up = this->repository_.starting_up (server); @@ -615,6 +625,11 @@ ImplRepo_i::remove_server (const char *server, ACE_THROW_SPEC ((CORBA::SystemException, ImplementationRepository::Administration::NotFound)) { + if (OPTIONS::instance ()->readonly ()) + { + ACE_THROW (CORBA::NO_PERMISSION ()); + } + if (this->repository_.remove (server) == 0) { if (OPTIONS::instance()->debug () >= 1) |