Changeset 21014

Show
Ignore:
Timestamp:
02/09/08 20:10:24 (7 months ago)
Author:
patrick
Message:

Changed the remote run-time reconfiguration plug-in to take advantage of
Tweek 1.3.4 and its support for direct connections to Subject Manager
servants. Now, users need not run the CORBA Naming Service to be able to
connect VRJConfig to a running VR Juggler application. While this change
pertains only to a JCCL plug-in, I have bumped the JCCL version number to
1.3.5 to mark this rather significant change in the use of VRJConfig and
remote run-time reconfiguration.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • juggler/trunk/modules/jackal/ChangeLog

    r20760 r21014  
    11DATE        AUTHOR      CHANGE 
    22----------- ----------- ------------------------------------------------------- 
     3Feb-09-2008 patrick     Changed the remote run-time reconfiguration plug-in to 
     4                        use a direct connection for Subject Manager access 
     5                        instead of going through the CORBA Naming Service. 
     6                        NEW VERSION: 1.3.5 
    37Sep-04-2007 patrick     Use new environment variable JCCL_DATA_DIR as a way to 
    48                        look up files in JCCL_BASE_DIR/share/jccl. 
  • juggler/trunk/modules/jackal/VERSION

    r20760 r21014  
     11.3.5-0 @02/10/2008 02:10:00 UTC@ 
    121.3.4-0 @09/05/2007 02:45:00 UTC@ 
    231.3.3-0 @07/08/2007 21:15:00 UTC@ 
  • juggler/trunk/modules/jackal/plugins/configure.ac

    r20974 r21014  
    147147fi 
    148148 
    149 min_tweek_version='1.1.10
     149min_tweek_version='1.3.4
    150150if test "x$test_tweek_cxx" = "xY" ; then 
    151151   TWEEK_PATH_CXX([$min_tweek_version], [HAVE_TWEEK_CXX='Y'], 
  • juggler/trunk/modules/jackal/plugins/corba_rtrc/CorbaRemoteReconfig.cpp

    r20974 r21014  
    9999bool CorbaRemoteReconfig::configAdd(jccl::ConfigElementPtr element) 
    100100{ 
     101   const unsigned int min_def_version(2); 
     102 
     103   if ( element->getVersion() < min_def_version ) 
     104   { 
     105      vprDEBUG(jcclDBG_PLUGIN, vprDBG_WARNING_LVL) 
     106         << clrOutBOLD(clrYELLOW, "WARNING") << ": Element named '" 
     107         << element->getName() << "'" << std::endl; 
     108      vprDEBUG_NEXTnl(jcclDBG_PLUGIN, vprDBG_WARNING_LVL) 
     109         << "is version " << element->getVersion() 
     110         << ", but we expect at least version " << min_def_version << ".\n"; 
     111      vprDEBUG_NEXTnl(jcclDBG_PLUGIN, vprDBG_WARNING_LVL) 
     112         << "Default values will be used for some settings.\n" 
     113         << vprDEBUG_FLUSH; 
     114   } 
     115 
    101116   // If the ORB is already running, we need to shut it down first.  One big 
    102117   // reason for doing this is to release the resources (memory and so on) 
     
    112127   } 
    113128 
    114    const std::string ns_host = 
    115       element->getProperty<std::string>("naming_service_host"); 
    116    const vpr::Uint16 ns_port = 
    117       element->getProperty<vpr::Uint16>("naming_service_port"); 
    118    const std::string iiop_version = 
    119       element->getProperty<std::string>("iiop_version"); 
    120  
    121129   // We'll ignore the return value for now.  startCorba() prints out enough 
    122130   // warning information on its own if something goes wrong. 
    123    this->startCorba(ns_host, ns_port, iiop_version); 
     131   this->startCorba(element->getProperty<std::string>("endpoint_addr"), 
     132                    element->getProperty<vpr::Uint16>("endpoint_port")); 
    124133 
    125134   return true; 
     
    194203} 
    195204 
    196 bool CorbaRemoteReconfig::startCorba(const std::string& nsHost, 
    197                                      const vpr::Uint16 nsPort, 
    198                                      const std::string& iiopVer) 
     205bool CorbaRemoteReconfig::startCorba(const std::string& listenAddr, 
     206                                     const vpr::Uint16 listenPort) 
    199207{ 
    200208   // Create new CORBA Manager and initialize it. 
     
    208216 
    209217      // Attempt to initialize the CORBA Manager. 
    210       bool status = mCorbaManager->init("corba_rtrc", dummy_int, NULL, nsHost
    211                                         nsPort, iiopVer); 
    212  
    213       // Test to see if init() succeeded. 
     218      bool status = mCorbaManager->initDirect("corba_rtrc", dummy_int, NULL
     219                                              listenAddr, listenPort); 
     220 
     221      // Test to see if initDirect() succeeded. 
    214222      if ( status ) 
    215223      { 
  • juggler/trunk/modules/jackal/plugins/corba_rtrc/CorbaRemoteReconfig.h

    r20974 r21014  
    100100    * handling remote reconfiguration requests. 
    101101    * 
    102     * @param nsHost  The name of the host computer where the CORBA Naming 
    103     *                Service is running. 
    104     * @param nsport  The port number on which the CORBA Naming Service is 
    105     *                listening for incoming connections. 
    106     * @param iiopVer The version of IIOP the Naming Service is using.  This 
    107     *                is normally 1.0 or 1.2. 
     102    * @param listenAddr The address to which the CORBA endpoint will be bound. 
     103    *                   Using an empty string will result in binding to the 
     104    *                   default interface. 
     105    * @param listenPort The port number for the CORBA endpoint. This must be 
     106    *                   a valid port number. 
    108107    */ 
    109    bool startCorba(const std::string& nsHost, const vpr::Uint16 nsPort
    110                    const std::string& iiopVer); 
     108   bool startCorba(const std::string& listenAddr
     109                   const vpr::Uint16 listenPort); 
    111110 
    112111   /**