public ZooKeeperDiscovery(CuratorFramework curator, ZooKeeperDiscoveryFactory factory, SoaInfo soaInfo, Environment environment, Collection<String> instanceDeploymentGroups) { this.soaInfo = soaInfo; this.environment = environment; bindAddress = factory.getBindAddress(); providers = CacheBuilder.newBuilder() .expireAfterWrite(5, TimeUnit.MINUTES) // TODO config .removalListener(this) .build(this); try { HashMap<String, String> metaData = Maps.newHashMap(); Payload.addDeploymentGroups(metaData, instanceDeploymentGroups); Payload payload = new Payload(soaInfo.getAdminPort().getHostText(), soaInfo.getAdminPort().getPort(), metaData, ForcedState.CLEARED, HealthyState.UNHEALTHY); // initially unhealthy us.set(buildInstance(payload, null)); discovery = ServiceDiscoveryBuilder .builder(Payload.class) .basePath(factory.getZookeeperPath()) .client(curator) .watchInstances(true) .build(); } catch ( Exception e ) { log.error("Could not build discovery instance", e); throw new RuntimeException(e); } }
.basePath(basePath) .serializer(new JsonObjectSerializer()) .watchInstances(true) .build();
.basePath(basePath) .serializer(new JsonObjectSerializer()) .watchInstances(true) .build();
@Before public void startZookeeper() throws Exception { zkTestServer = new TestingServer(2181); cli = CuratorFrameworkFactory.newClient(zkTestServer.getConnectString(), new RetryOneTime(2000)); cli.start(); discovery = ServiceDiscoveryBuilder.builder(String.class) .client(cli) .basePath("/discovery") .watchInstances(true) .build(); discovery.start(); vertx = Vertx.vertx(); sd = io.vertx.servicediscovery.ServiceDiscovery.create(vertx); }
@Before public void startZookeeper() throws Exception { zkTestServer = new TestingServer(2181); cli = CuratorFrameworkFactory.newClient(zkTestServer.getConnectString(), new RetryOneTime(2000)); cli.start(); discovery = ServiceDiscoveryBuilder.builder(String.class) .client(cli) .basePath("/discovery") .watchInstances(true) .build(); discovery.start(); vertx = Vertx.vertx(); sd = io.vertx.servicediscovery.ServiceDiscovery.create(vertx); }