public <T> void register( String method, Class<T> eventType, BiPredicate<T, Map<String, String>> biPredicate) { eventService.subscribe( event -> remoteSubscriptionStorage .getByMethod(method) .stream() .filter(context -> biPredicate.test(event, context.getScope())) .forEach(context -> transmit(context.getEndpointId(), method, event)), eventType); }
@PostConstruct private void postConstruct() { remoteSubscriptionManager.register( "runtime/statusChanged", RuntimeStatusEvent.class, this::predicate); }
@PostConstruct private void postConstruct() { remoteSubscriptionManager.register( SERVER_STATUS_CHANGED_METHOD, ServerStatusEvent.class, this::predicate); }
@PostConstruct private void postConstruct() { remoteSubscriptionManager.register( MACHINE_STATUS_CHANGED_METHOD, MachineStatusEvent.class, this::predicate); }
@PostConstruct private void postConstruct() { remoteSubscriptionManager.register( INSTALLER_STATUS_CHANGED_METHOD, InstallerStatusEvent.class, this::predicate); }
@PostConstruct private void postConstruct() { subscriptionManager.register(INSTALLER_LOG_METHOD, InstallerLogEvent.class, this::predicate); }
@PostConstruct private void postConstruct() { remoteSubscriptionManager.register( WORKSPACE_STATUS_CHANGED_METHOD, WorkspaceStatusEvent.class, this::predicate); }
@PostConstruct @VisibleForTesting void subscribe() { remoteSubscriptionManager.register( SYSTEM_STATE_METHOD_NAME, SystemEvent.class, (systemEvent, stringStringMap) -> true); } }