@Override public void start(final ServiceStartContext serviceContext) { this.startContext = serviceContext; this.managementApi = managementApiClientInjector.getValue(); this.clientApiTransport = clientApiTransportInjector.getValue(); this.streamProcessorServiceFactory = streamProcessorServiceFactoryInjector.getValue(); this.topologyManager = topologyManagerInjector.getValue(); controlMessageHandlerManager = controlMessageHandlerManagerServiceInjector.getValue(); }
@Override public void accept(ServiceEvent t) { if (t.getType() == ServiceEventType.SERVICE_STOPPED) { injectors.values().stream().flatMap(Collection::stream).forEach(i -> i.uninject()); fireEvent(ServiceEventType.SERVICE_REMOVED); state = removedState; } } }
public <S> S getService(final ServiceName<S> serviceName) { final ServiceContainer serviceContainer = broker.getBrokerContext().getServiceContainer(); final Injector<S> injector = new Injector<>(); final ServiceName<TestService> accessorServiceName = ServiceName.newServiceName("serviceAccess" + serviceName.getName(), TestService.class); try { serviceContainer .createService(accessorServiceName, new TestService()) .dependency(serviceName, injector) .install() .get(); } catch (final InterruptedException | ExecutionException e) { throw new RuntimeException(e); } serviceContainer.removeService(accessorServiceName); return injector.getValue(); }
public void onDependenciesAvailable(ServiceEvent evt) { resolvedDependencies = (List<ServiceController>) evt.getPayload(); // inject dependencies for (ServiceController serviceController : resolvedDependencies) { final Collection<Injector<?>> injectos = injectors.getOrDefault(serviceController.name, Collections.emptyList()); for (Injector injector : injectos) { injector.inject(serviceController.service.get()); injector.setInjectedServiceName(serviceController.name); } } // invoke start state = awaitStartState; startContext = new StartContextImpl(); try { service.start(startContext); if (startContext.action != null) { actor.runBlocking(startContext.action, startContext); } if (!startContext.isAsync()) { fireEvent(ServiceEventType.SERVICE_STARTED); } } catch (Exception e) { fireEvent(ServiceEventType.SERVICE_START_FAILED, e); } } }
.createService(logWriteBufferServiceName, writeBufferService) .dependency( logStorageInjector.getInjectedServiceName(), writeBufferService.getLogStorageInjector()) .dependency( logBlockIndexInjector.getInjectedServiceName(), writeBufferService.getLogBlockIndexInjector()) .install(); appenderSubscriptionServiceName, appenderService.getAppenderSubscriptionInjector()) .dependency( logStorageInjector.getInjectedServiceName(), appenderService.getLogStorageInjector()) .install();
public <S> S getService(final ServiceName<S> serviceName) { final ServiceContainer serviceContainer = broker.getBrokerContext().getServiceContainer(); final Injector<S> injector = new Injector<>(); final ServiceName<TestService> accessorServiceName = ServiceName.newServiceName("serviceAccess" + serviceName.getName(), TestService.class); try { serviceContainer .createService(accessorServiceName, new TestService()) .dependency(serviceName, injector) .install() .get(); } catch (final InterruptedException | ExecutionException e) { throw new RuntimeException(e); } serviceContainer.removeService(accessorServiceName); return injector.getValue(); }
public void onDependenciesAvailable(ServiceEvent evt) { resolvedDependencies = (List<ServiceController>) evt.getPayload(); // inject dependencies for (ServiceController serviceController : resolvedDependencies) { final Collection<Injector<?>> injectos = injectors.getOrDefault(serviceController.name, Collections.emptyList()); for (Injector injector : injectos) { injector.inject(serviceController.service.get()); injector.setInjectedServiceName(serviceController.name); } } // invoke start state = awaitStartState; startContext = new StartContextImpl(); try { service.start(startContext); if (startContext.action != null) { actor.runBlocking(startContext.action, startContext); } if (!startContext.isAsync()) { fireEvent(ServiceEventType.SERVICE_STARTED); } } catch (Exception e) { fireEvent(ServiceEventType.SERVICE_START_FAILED, e); } } }
.createService(logWriteBufferServiceName, writeBufferService) .dependency( logStorageInjector.getInjectedServiceName(), writeBufferService.getLogStorageInjector()) .dependency( logBlockIndexInjector.getInjectedServiceName(), writeBufferService.getLogBlockIndexInjector()) .install(); appenderSubscriptionServiceName, appenderService.getAppenderSubscriptionInjector()) .dependency( logStorageInjector.getInjectedServiceName(), appenderService.getLogStorageInjector()) .install();
public <S> S getService(final ServiceName<S> serviceName) { final ServiceContainer serviceContainer = broker.getBrokerContext().getServiceContainer(); final Injector<S> injector = new Injector<>(); final ServiceName<TestService> accessorServiceName = ServiceName.newServiceName("serviceAccess" + serviceName.getName(), TestService.class); try { serviceContainer .createService(accessorServiceName, new TestService()) .dependency(serviceName, injector) .install() .get(); } catch (final InterruptedException | ExecutionException e) { throw new RuntimeException(e); } serviceContainer.removeService(accessorServiceName); return injector.getValue(); }
@Override public void accept(ServiceEvent t) { if (t.getType() == ServiceEventType.SERVICE_STOPPED) { injectors.values().stream().flatMap(Collection::stream).forEach(i -> i.uninject()); fireEvent(ServiceEventType.SERVICE_REMOVED); state = removedState; } } }
public <S> S getService(final ServiceName<S> serviceName) { final ServiceContainer serviceContainer = broker.getBrokerContext().getServiceContainer(); final Injector<S> injector = new Injector<>(); final ServiceName<TestService> accessorServiceName = ServiceName.newServiceName("serviceAccess" + serviceName.getName(), TestService.class); try { serviceContainer .createService(accessorServiceName, new TestService()) .dependency(serviceName, injector) .install() .get(); } catch (final InterruptedException | ExecutionException e) { throw new RuntimeException(e); } serviceContainer.removeService(accessorServiceName); return injector.getValue(); }
@Override public void start(final ServiceStartContext serviceContext) { this.startContext = serviceContext; this.managementApi = managementApiClientInjector.getValue(); this.clientApiTransport = clientApiTransportInjector.getValue(); this.streamProcessorServiceFactory = streamProcessorServiceFactoryInjector.getValue(); this.topologyManager = topologyManagerInjector.getValue(); controlMessageHandlerManager = controlMessageHandlerManagerServiceInjector.getValue(); }
@Override public void start(ServiceStartContext startContext) { topologyManager = topologyManagerInjector.getValue(); managementClientTransport = managementClientTransportInjector.getValue(); replicationClientTransport = replicationClientTransportInjector.getValue(); subscriptionClientTransport = subscriptionClientTransportInjector.getValue(); topologyManager.addTopologyMemberListener(this); }
@Override public void start(ServiceStartContext startContext) { topologyManager = topologyManagerInjector.getValue(); managementClientTransport = managementClientTransportInjector.getValue(); replicationClientTransport = replicationClientTransportInjector.getValue(); subscriptionClientTransport = subscriptionClientTransportInjector.getValue(); topologyManager.addTopologyMemberListener(this); }
@Override public void start(final ServiceStartContext startContext) { commitPosition.setVolatile(INVALID_ADDRESS); serviceContext = startContext; logStorage = logStorageInjector.getValue(); logBlockIndex = logBlockIndexInjector.getValue(); logBlockIndexWriter = logBockIndexWriterInjector.getValue(); }
@Override public void start(final ServiceStartContext startContext) { commitPosition.setVolatile(INVALID_ADDRESS); serviceContext = startContext; logStorage = logStorageInjector.getValue(); logBlockIndex = logBlockIndexInjector.getValue(); logBlockIndexWriter = logBockIndexWriterInjector.getValue(); }
@Override public void start(ServiceStartContext startContext) { final Dispatcher controlMessageBuffer = controlMessageBufferInjector.getValue(); service = new ClientApiMessageHandler(controlMessageBuffer); }
@Override public void start(ServiceStartContext startContext) { this.streamProcessorServiceFactory = streamProcessorServiceFactoryInjector.getValue(); // load and validate exporters for (ExporterCfg exporterCfg : exporterCfgs) { try { exporterRepository.load(exporterCfg); } catch (ExporterLoadException | ExporterJarLoadException e) { throw new RuntimeException("Failed to load exporter with configuration: " + exporterCfg, e); } } }