code: protected void gotBootstrap (BootstrapData data, DObjectManager omgr)
      {
          if (debugLogMessages()) {
              log.info("Got bootstrap " + data + ".");
          }
  
          // keep these around for interested parties
          _bstrap = data;
          _omgr = omgr;
  
          // extract bootstrap information
          _connectionId = data.connectionId;
          _cloid = data.clientOid;
  
          // notify the communicator that we got our bootstrap data (if we have one)
          if (_comm != null) {
              _comm.gotBootstrap();
          }
  
          // initialize our invocation director
          _invdir.init(omgr, _cloid, this);
  
          // send a few pings to the server to establish the clock offset between this client and
          // server standard time
          establishClockDelta(System.currentTimeMillis());
  
          // we can't quite call initialization completed at this point because we need for the
          // invocation director to fully initialize (which requires a round trip to the server)
          // before turning the client loose to do things like request invocation services
      }
docs: Called by the {@link ClientDObjectMgr} when our bootstrap notification arrives. If the
  client and server are being run in "merged" mode in a single JVM, this is how the client is
  configured with the server's distributed object manager and provided with bootstrap data.