diff options
author | Phil Mesnier <mesnier_p@ociweb.com> | 2007-08-17 14:39:27 +0000 |
---|---|---|
committer | Phil Mesnier <mesnier_p@ociweb.com> | 2007-08-17 14:39:27 +0000 |
commit | eb73c227aa998bc9111238551f4fd6d1e4e09681 (patch) | |
tree | 5f88cb7a4cc07ddd33b0c2327d0e3969b0054764 | |
parent | b19c129d515debb8ae58478b076db4ca9c5b071b (diff) | |
download | ATCD-eb73c227aa998bc9111238551f4fd6d1e4e09681.tar.gz |
Fri Aug 17 14:38:15 UTC 2007 Phil Mesnier <mesnier_p@ociweb.com>
-rw-r--r-- | TAO/ChangeLog | 8 | ||||
-rw-r--r-- | TAO/docs/Options.html | 16 | ||||
-rw-r--r-- | TAO/tao/ORB.cpp | 9 |
3 files changed, 29 insertions, 4 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog index 7aeebeb90f2..8ebb43f5c1c 100644 --- a/TAO/ChangeLog +++ b/TAO/ChangeLog @@ -1,3 +1,11 @@ +Fri Aug 17 14:38:15 UTC 2007 Phil Mesnier <mesnier_p@ociweb.com> + + * docs/Options.html: + Add description of the -ORBGestalt option. + + * tao/ORB.cpp: + Fix ACE_TEXT consistency. + Fri Aug 17 08:24:00 UTC 2007 Johnny Willemsen <jwillemsen@remedy.nl> * orbsvcs/orbsvcs/CosPropertyService.idl: diff --git a/TAO/docs/Options.html b/TAO/docs/Options.html index fbe483bc500..f76ac046f84 100644 --- a/TAO/docs/Options.html +++ b/TAO/docs/Options.html @@ -264,6 +264,22 @@ options on the same command-line. </td> side-effect of not initializing the ACE Service Configurator framework or registering the SIGHUP signal. </td> + </tr> + <tr> + <td><code>-ORBSGestalt Local|ORB:<i>orbid</i></CODE> </td> + <TD>Instruct the ORB to create a local configuration "gestalt" or + context. By default, all ORBs share a common configuration context. This + is defined by a Service Repository that contains service objects, such + as the resource factory. In some cases multiple ORBs may be dynamically + loaded and as such may wish to have distinct configurations. Passing the + <code>Local</code> argument achieves this. Service objects loaded by an + ORB with a local configuration context will be used by that ORB in place + of any default service object. The final variation is that of shared + contexts. Passing the argument <code>ORB:<i>orbid</i></code> will cause + the ORB to share the local configuration of another ORB as identified with + the supplied id. <i>The shared context feature is not yet implemented.</i> + </td> + </tr> </tbody> </table> </p> diff --git a/TAO/tao/ORB.cpp b/TAO/tao/ORB.cpp index 370ae906eef..df76fb3cdb5 100644 --- a/TAO/tao/ORB.cpp +++ b/TAO/tao/ORB.cpp @@ -1220,10 +1220,12 @@ CORBA::ORB_init (int &argc, char *argv[], const char *orbid) ACE_TEXT("-ORBGestalt"), orbconfig_string)) { + const ACE_TCHAR *arg = ACE_TEXT_CHAR_TO_TCHAR(orbconfig_string.c_str ()); + const ACE_TCHAR *local = ACE_TEXT("LOCAL"); + const ACE_TCHAR *shared = ACE_TEXT("ORB:"); // Need a local repo? Make one which typically should not be as // big as the default repository - if (ACE_OS::strcasecmp (orbconfig_string.c_str (), - ACE_TEXT("LOCAL")) == 0) + if (ACE_OS::strcasecmp (arg,local) == 0) { ACE_NEW_THROW_EX (gestalt, ACE_Service_Gestalt @@ -1234,8 +1236,7 @@ CORBA::ORB_init (int &argc, char *argv[], const char *orbid) CORBA::COMPLETED_NO)); guard_gestalt.reset(gestalt); } - else if (ACE_OS::strncmp (orbconfig_string.c_str (), - ACE_TEXT ("ORB:"), 4) == 0) + else if (ACE_OS::strncmp (arg, shared, sizeof (shared) - 1) == 0) { // @TODO: At some point, we need to implement a lookup of an // existing configuration context based on the orbid |