private void initPartitions( final CompositeServiceBuilder baseLayerInstall, final SystemContext context) { final RaftPersistentConfigurationManagerService raftConfigurationManagerService = new RaftPersistentConfigurationManagerService(context.getBrokerConfiguration()); baseLayerInstall .createService(RAFT_CONFIGURATION_MANAGER, raftConfigurationManagerService) .install(); final BootstrapPartitions raftBootstrapService = new BootstrapPartitions(context.getBrokerConfiguration()); baseLayerInstall .createService(RAFT_BOOTSTRAP_SERVICE, raftBootstrapService) .dependency( RAFT_CONFIGURATION_MANAGER, raftBootstrapService.getConfigurationManagerInjector()) .install(); } }
private void initPartitions( final CompositeServiceBuilder baseLayerInstall, final SystemContext context) { final RaftPersistentConfigurationManagerService raftConfigurationManagerService = new RaftPersistentConfigurationManagerService(context.getBrokerConfiguration()); baseLayerInstall .createService(RAFT_CONFIGURATION_MANAGER, raftConfigurationManagerService) .install(); final BootstrapPartitions raftBootstrapService = new BootstrapPartitions(context.getBrokerConfiguration()); baseLayerInstall .createService(RAFT_BOOTSTRAP_SERVICE, raftBootstrapService) .dependency( RAFT_CONFIGURATION_MANAGER, raftBootstrapService.getConfigurationManagerInjector()) .install(); } }
private void initGossip( final CompositeServiceBuilder baseLayerInstall, final SystemContext context, final NodeInfo localMember) { final GossipService gossipService = new GossipService(context.getBrokerConfiguration()); baseLayerInstall .createService(GOSSIP_SERVICE, gossipService) .dependency( TransportServiceNames.clientTransport(TransportServiceNames.MANAGEMENT_API_CLIENT_NAME), gossipService.getClientTransportInjector()) .dependency( TransportServiceNames.bufferingServerTransport( TransportServiceNames.MANAGEMENT_API_SERVER_NAME), gossipService.getBufferingServerTransportInjector()) .install(); // TODO: decide whether failure to join gossip cluster should result in broker startup fail final GossipJoinService gossipJoinService = new GossipJoinService(context.getBrokerConfiguration().getCluster(), localMember); baseLayerInstall .createService(GOSSIP_JOIN_SERVICE, gossipJoinService) .dependency(GOSSIP_SERVICE, gossipJoinService.getGossipInjector()) .install(); final AtomixService atomixService = new AtomixService(context.getBrokerConfiguration()); baseLayerInstall.createService(ATOMIX_SERVICE, atomixService).install(); }
installOperation.createService(logStorageServiceName, logStorageService).install(); installOperation.createService(logBlockIndexServiceName, logBlockIndexService).install(); .createService(logBlockIndexWriterServiceName, logBlockIndexWriterService) .dependency(logStorageServiceName, logBlockIndexWriterService.getLogStorageInjector()) .dependency(logBlockIndexServiceName, logBlockIndexWriterService.getLogBlockIndexInjector()) .createService(logStreamServiceName, logStreamService) .dependency(logStorageServiceName, logStreamService.getLogStorageInjector()) .dependency(logBlockIndexServiceName, logStreamService.getLogBlockIndexInjector())
installOperation.createService(logStorageServiceName, logStorageService).install(); installOperation.createService(logBlockIndexServiceName, logBlockIndexService).install(); .createService(logBlockIndexWriterServiceName, logBlockIndexWriterService) .dependency(logStorageServiceName, logBlockIndexWriterService.getLogStorageInjector()) .dependency(logBlockIndexServiceName, logBlockIndexWriterService.getLogBlockIndexInjector()) .createService(logStreamServiceName, logStreamService) .dependency(logStorageServiceName, logStreamService.getLogStorageInjector()) .dependency(logBlockIndexServiceName, logStreamService.getLogBlockIndexInjector())
private void initGossip( final CompositeServiceBuilder baseLayerInstall, final SystemContext context, final NodeInfo localMember) { final GossipService gossipService = new GossipService(context.getBrokerConfiguration()); baseLayerInstall .createService(GOSSIP_SERVICE, gossipService) .dependency( TransportServiceNames.clientTransport(TransportServiceNames.MANAGEMENT_API_CLIENT_NAME), gossipService.getClientTransportInjector()) .dependency( TransportServiceNames.bufferingServerTransport( TransportServiceNames.MANAGEMENT_API_SERVER_NAME), gossipService.getBufferingServerTransportInjector()) .install(); // TODO: decide whether failure to join gossip cluster should result in broker startup fail final GossipJoinService gossipJoinService = new GossipJoinService(context.getBrokerConfiguration().getCluster(), localMember); baseLayerInstall .createService(GOSSIP_JOIN_SERVICE, gossipJoinService) .dependency(GOSSIP_SERVICE, gossipJoinService.getGossipInjector()) .install(); }
writeBufferFuture = installOperation .createService(logWriteBufferServiceName, writeBufferService) .dependency( logStorageInjector.getInjectedServiceName(), new LogWriteBufferSubscriptionService(APPENDER_SUBSCRIPTION_NAME); installOperation .createService(appenderSubscriptionServiceName, subscriptionService) .dependency(logWriteBufferServiceName, subscriptionService.getWritebufferInjector()) .install(); appenderFuture = installOperation .createService(logStorageAppenderServiceName, appenderService) .dependency( appenderSubscriptionServiceName, appenderService.getAppenderSubscriptionInjector())
.createService(openLogStreamServiceName, new LeaderOpenLogStreamAppenderService(logStream)) .install(); .createService(leaderServiceName, leaderState) .dependency(LogStreamServiceNames.logWriteBufferServiceName(logStream.getLogName())) .dependency(openLogStreamServiceName) new MemberReplicateLogController(this, raftMember, clientTransport); installOperation .createService(replicateLogControllerServiceName, replicationController) .dependency(leaderServiceName) .install();
writeBufferFuture = installOperation .createService(logWriteBufferServiceName, writeBufferService) .dependency( logStorageInjector.getInjectedServiceName(), new LogWriteBufferSubscriptionService(APPENDER_SUBSCRIPTION_NAME); installOperation .createService(appenderSubscriptionServiceName, subscriptionService) .dependency(logWriteBufferServiceName, subscriptionService.getWritebufferInjector()) .install(); appenderFuture = installOperation .createService(logStorageAppenderServiceName, appenderService) .dependency( appenderSubscriptionServiceName, appenderService.getAppenderSubscriptionInjector())
.createService(openLogStreamServiceName, new LeaderOpenLogStreamAppenderService(logStream)) .install(); .createService(leaderServiceName, leaderState) .dependency(LogStreamServiceNames.logWriteBufferServiceName(logStream.getLogName())) .dependency(openLogStreamServiceName) new MemberReplicateLogController(this, raftMember, clientTransport); installOperation .createService(replicateLogControllerServiceName, replicationController) .dependency(leaderServiceName) .install();
stateStorageFactoryServiceName = stateStorageFactoryServiceName(logName); partitionInstall .createService(stateStorageFactoryServiceName, stateStorageFactoryService) .install(); .createService(raftServiceName, raftService) .dependency(logStreamServiceName, raftService.getLogStreamInjector()) .dependency(stateStorageFactoryServiceName)
stateStorageFactoryServiceName = stateStorageFactoryServiceName(logName); partitionInstall .createService(stateStorageFactoryServiceName, stateStorageFactoryService) .install(); .createService(raftServiceName, raftService) .dependency(logStreamServiceName, raftService.getLogStreamInjector()) .dependency(stateStorageFactoryServiceName)
.createService(TOPOLOGY_MANAGER_SERVICE, topologyManagerService) .dependency(GOSSIP_SERVICE, topologyManagerService.getGossipInjector()) .groupReference(RAFT_SERVICE_GROUP, topologyManagerService.getRaftReference()) .createService(REMOTE_ADDRESS_MANAGER_SERVICE, remoteAddressManager) .dependency(TOPOLOGY_MANAGER_SERVICE, remoteAddressManager.getTopologyManagerInjector()) .dependency(
.createService(TOPOLOGY_MANAGER_SERVICE, topologyManagerService) .dependency(GOSSIP_SERVICE, topologyManagerService.getGossipInjector()) .groupReference(RAFT_SERVICE_GROUP, topologyManagerService.getRaftReference()) .createService(REMOTE_ADDRESS_MANAGER_SERVICE, remoteAddressManager) .dependency(TOPOLOGY_MANAGER_SERVICE, remoteAddressManager.getTopologyManagerInjector()) .dependency(