summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/IceGridNode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceGrid/IceGridNode.cpp')
-rw-r--r--cpp/src/IceGrid/IceGridNode.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/cpp/src/IceGrid/IceGridNode.cpp b/cpp/src/IceGrid/IceGridNode.cpp
index 90cba70148b..1cfef3fab8e 100644
--- a/cpp/src/IceGrid/IceGridNode.cpp
+++ b/cpp/src/IceGrid/IceGridNode.cpp
@@ -97,7 +97,7 @@ class CollocatedRegistry : public RegistryI
{
public:
- CollocatedRegistry(const CommunicatorPtr&, const ActivatorPtr&, bool);
+ CollocatedRegistry(const CommunicatorPtr&, const ActivatorPtr&, bool, bool);
virtual void shutdown();
private:
@@ -135,8 +135,11 @@ private:
}
-CollocatedRegistry::CollocatedRegistry(const CommunicatorPtr& com, const ActivatorPtr& activator, bool nowarn) :
- RegistryI(com, new TraceLevels(com, "IceGrid.Registry"), nowarn),
+CollocatedRegistry::CollocatedRegistry(const CommunicatorPtr& com,
+ const ActivatorPtr& activator,
+ bool nowarn,
+ bool readonly) :
+ RegistryI(com, new TraceLevels(com, "IceGrid.Registry"), nowarn, readonly),
_activator(activator)
{
}
@@ -182,6 +185,7 @@ bool
NodeService::start(int argc, char* argv[])
{
bool nowarn = false;
+ bool readonly = false;
string desc;
vector<string> targets;
for(int i = 1; i < argc; ++i)
@@ -200,6 +204,10 @@ NodeService::start(int argc, char* argv[])
{
nowarn = true;
}
+ else if(strcmp(argv[i], "--readonly") == 0)
+ {
+ readonly = true;
+ }
else if(strcmp(argv[i], "--deploy") == 0)
{
if(i + 1 >= argc)
@@ -300,7 +308,7 @@ NodeService::start(int argc, char* argv[])
//
if(properties->getPropertyAsInt("IceGrid.Node.CollocateRegistry") > 0)
{
- _registry = new CollocatedRegistry(communicator(), _activator, nowarn);
+ _registry = new CollocatedRegistry(communicator(), _activator, nowarn, readonly);
if(!_registry->start())
{
return false;
@@ -770,6 +778,7 @@ NodeService::usage(const string& appName)
"-h, --help Show this message.\n"
"-v, --version Display the Ice version.\n"
"--nowarn Don't print any security warnings.\n"
+ "--readonly Start the collocated master registry in read-only mode."
"\n"
"--deploy DESCRIPTOR [TARGET1 [TARGET2 ...]]\n"
" Add or update descriptor in file DESCRIPTOR, with\n"