private Observable<ChangeNotification<InstanceInfo>> buildEurekaFullRegistryObservable() { return interestClient.forInterest(Interests.forFullRegistry()); }
@Override protected void after() { if (interestClient != null) { interestClient.shutdown(); interestClient = null; } }
.build(); interestClient.forInterest(forApplications("WriteServer", "ReadServer", "ServiceA")).subscribe( new Subscriber<ChangeNotification<InstanceInfo>>() { @Override interestClient.shutdown();
public void forInterest(Interest<InstanceInfo> interest) { if (mode == Mode.Write) { System.err.println("ERROR: registration-only session"); return; } String id = sessionId + "#" + streamIds.incrementAndGet(); InterestSubscriber subscriber = new InterestSubscriber(interest, id); subscriptions.put(id, subscriber); interestClient.forInterest(interest).subscribe(subscriber); System.out.println("Stream_" + id + ": Subscribing to Interest: " + interest); }
@Override public void call() { EurekaInterestClient interestClient = interestClientRef.getAndSet(null); if (interestClient != null) { interestClient.shutdown(); logger.info("Shutting down lite interestClient for eureka resolver"); } logger.info("Populating from remote eureka server took {} ms", (System.currentTimeMillis() - duration.get())); } });
@PostConstruct public void start() { eurekaClient = eureka2InterestClientProvider.get(); eurekaClient.forInterest(Interests.forFullRegistry()).retry().subscribe(new Action1<ChangeNotification<InstanceInfo>>() { @Override public void call(ChangeNotification<InstanceInfo> changeNotification) { final ChangeNotification.Kind notificationKind = changeNotification.getKind(); final InstanceInfo instInfo = changeNotification.getData(); if (notificationKind == ChangeNotification.Kind.Add || notificationKind == ChangeNotification.Kind.Modify) { registryCache.put(instInfo.getId(), instInfo); } else if (notificationKind == ChangeNotification.Kind.Delete) { registryCache.remove(instInfo.getId()); } } }); } }
public void close() { System.out.println("Closing session " + sessionId); if (registrationClient != null) { registrationClient.shutdown(); registrationClient = null; System.out.println("Shutdown registration client"); } if (interestClient != null) { interestClient.shutdown(); interestClient = null; System.out.println("Shutdown interest client"); } mode = null; }
interestClient.forInterest(Interests.forFullRegistry());
private void disconnect() { if (connectedFlag.compareAndSet(true, false)) { try { interestSubscription.unsubscribe(); interestClient.shutdown(); expectedNotificationsSubscriptions.unsubscribe(); notificationTracker.stop(); } finally { scoreBoard.subscribingActorDecrement(); lifecycleSubject.onCompleted(); } } } }
.forInterest(interest) .subscribe(new Subscriber<ChangeNotification<InstanceInfo>>() { @Override
public void shutdown() { for (EurekaInterestClient interestClient : connectedInterestClients) { interestClient.shutdown(); } connectedInterestClients.clear(); for (EurekaRegistrationClient registrationClient : connectedRegistrationClients) { registrationClient.shutdown(); } connectedRegistrationClients.clear(); writeCluster.shutdown(); readCluster.shutdown(); if (bridgeServer != null) { bridgeServer.shutdown(); } if (dashboardServer != null) { dashboardServer.shutdown(); } if (deploymentView != null) { deploymentView.shutdown(); } }