Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

 It's possible to instantiate network manager when local configuration manager with vault underneath it is ready.

Code Block
languagejava
titleNetwork Manager
NetworkView netConfigurationView =
	locConfigurationMgr.configurationRegistry().getConfiguration(NetworkConfiguration.KEY).value();

// Network startup.
Network net = new Network(
	new ScaleCubeNetworkClusterFactory(
    	localMemberName,
        netConfigurationView.port(),
        Arrays.asList(netConfigurationView.networkMembersNames()),
        new ScaleCubeMemberResolver()));

NetworkCluster netMember = net.start();

...

At this point it's possible to start business logic components like Baseline Manager, Affinity Manager, Schema Manager and Table Manager. Exact The exact set of such components it is undefined.

Code Block
languagejava
titleTop Level Managers
// Baseline manager startup.
BaselineManager baselineMgr = new BaselineManager(configurationMgr, metaStorageMgr, netMember);

// Affinity manager startup.
AffinityManager affinityMgr = new AffinityManager(configurationMgr, metaStorageMgr, baselineMgr);

SchemaManager schemaManager = new SchemaManager(configurationMgr);

// Distributed table manager startup.
TableManager distributedTblMgr = new TableManagerImpl(
	configurationMgr,
    netMember,
    metaStorageMgr,
	affinityMgr,
    schemaManager);


// Rest manager also goes here.

...

ManagerDepends OnUsed By
BaselineManager
  • ConfigurationManager
  • MetaStorageManager
  • NetworkManager
AffinityManager in order to retrieve the current baseline.
AffinityManager
  • ConfigurationManager
  • MetaStorageManager
  • BaselineManager
TableManager strictly or indirectly through corresponding private distributed affinityAssignment key.
SchemaManager
  • ConfigurationManager
  • Probabaly Probably MetaStorageManager
TableManager in order to handle corresponding schema changes.
TableManager
  • ConfigurationManager
  • MetaStorageManager
  • NetworkManager
  • AffinityManager
  • SchemaManager
IgniteImpl

...

Deploying watches and preparing IgnitionImpl

Finally, it's possible to deploy registered watches and create IgniteImpl that will inject top-level managers in order to provide table and data manipulation logic to the user.

...