finishSetup method

void finishSetup()

Implementation

void finishSetup() {
  _state = State.activating;
  // plugins ...
  // Initialize the endpoint factories
  // Create Admin facets, if enabled.

  // thread pool
  // print process id

  // plugin init
  // admin
  //  adapter admin@Ice.Admin

  // Ice.Admin.InstanceName/admin
  // server/admin

  final adminIdentity = Identity(
      name: 'admin',
      category: initData.properties.getProperty('Ice.Admin.InstanceName'));

  // adminFacets: Logger->, Metrics->
  // _adminAdapter->addFacet(p->second, _adminIdentity, p->first);
  //                         0,         server/admin,   'Logger'

  // ServantManager::addServant(const ObjectPtr& object, const Identity& ident, const string& facet)

  // ObjectAdapterI::newProxy(const Identity& ident, const string& facet)
  //                                server/admin,              'Logger'

  // _instance->referenceFactory()->create(ident, facet, _reference, _publishedEndpoints);
  // ReferenceFactory::create('server/admin', 'Logger', )

  // _servantManager->addServant(object, ident, facet);

  String ep = initData.properties.getProperty('Ice.Admin.Endpoints');
  if (ep.isNotEmpty) {
    final adminAdapter = objectAdapterFactory.create('Ice.Admin');

    // Properties
    adminAdapter.addFacet(initData.properties, adminIdentity, 'Properties');

    // Metrics
    adminAdapter.addFacet(
        MetricsAdminI(initData.properties), adminIdentity, 'Metrics');

    // TODO: Logger, Process

    adminAdapter.activate();

    this.adminAdapter = adminAdapter;
  }

  _state = State.active;
}