private static void updateConnectorIdAnnouncement(Announcer announcer, ConnectorId connectorId, InternalNodeManager nodeManager) { // // This code was copied from PrestoServer, and is a hack that should be removed when the connectorId property is removed // // get existing announcement ServiceAnnouncement announcement = getPrestoAnnouncement(announcer.getServiceAnnouncements()); // update connectorIds property Map<String, String> properties = new LinkedHashMap<>(announcement.getProperties()); String property = nullToEmpty(properties.get("connectorIds")); Set<String> connectorIds = new LinkedHashSet<>(Splitter.on(',').trimResults().omitEmptyStrings().splitToList(property)); connectorIds.add(connectorId.toString()); properties.put("connectorIds", Joiner.on(',').join(connectorIds)); // update announcement announcer.removeServiceAnnouncement(announcement.getId()); announcer.addServiceAnnouncement(serviceAnnouncement(announcement.getType()).addProperties(properties).build()); announcer.forceAnnounce(); nodeManager.refreshNodes(); }
announcer.addServiceAnnouncement(builder.build());
@Test public void testToString() { assertNotNull(serviceAnnouncement("foo").build()); }
@Test public void testToString() { assertNotNull(new Announcement("environment", "node", "pool", "location", ImmutableSet.of( serviceAnnouncement("foo") .addProperty("http", "http://localhost:8080") .addProperty("jmx", "jmx://localhost:1234") .build()))); }
@Override public ServiceAnnouncement get() { if (httpServerInfo.getHttpUri() != null) { builder.addProperty("http", httpServerInfo.getHttpUri().toString()); builder.addProperty("http-external", httpServerInfo.getHttpExternalUri().toString()); } if (httpServerInfo.getHttpsUri() != null) { builder.addProperty("https", httpServerInfo.getHttpsUri().toString()); builder.addProperty("https-external", httpServerInfo.getHttpsExternalUri().toString()); } return builder.build(); } }
@Test public void testToString() { assertNotNull(new Announcement("environment", "node", "pool", "location", ImmutableSet.of( serviceAnnouncement("foo") .addProperty("http", "http://localhost:8080") .addProperty("jmx", "jmx://localhost:1234") .build()))); }
@Test public void testHttpsSelector() { Injector injector = Guice.createInjector( new ConfigurationModule(new ConfigurationFactory(ImmutableMap.<String, String>of())), new TestingNodeModule(), new TestingDiscoveryModule(), binder -> discoveryBinder(binder).bindHttpSelector("apple")); InMemoryDiscoveryClient discoveryClient = injector.getInstance(InMemoryDiscoveryClient.class); discoveryClient.announce(ImmutableSet.of(serviceAnnouncement("apple").addProperty("https", "fake://server-https").build())); HttpServiceSelector selector = injector.getInstance(Key.get(HttpServiceSelector.class, serviceType("apple"))); assertEquals(getOnlyElement(selector.selectHttpService()), URI.create("fake://server-https")); }
@Override public ServiceAnnouncement get() { return serviceAnnouncement("jmx") .addProperty("jmx", jmxAgent.getUrl().toString()) .build(); } }
@Test public void testToString() { assertNotNull(serviceAnnouncement("foo").build()); }
@Test public void addAnnouncementAfterStart() throws Exception { assertAnnounced(); announcer.start(); ServiceAnnouncement newAnnouncement = ServiceAnnouncement.serviceAnnouncement(serviceType.value()).addProperty("a", "apple").build(); announcer.addServiceAnnouncement(newAnnouncement); Thread.sleep(100); assertAnnounced(serviceAnnouncement, newAnnouncement); }
@BeforeMethod protected void setUp() throws Exception { nodeInfo = new NodeInfo(new NodeConfig().setEnvironment("test").setPool("pool")); discoveryClient = new InMemoryDiscoveryClient(nodeInfo, MAX_AGE); serviceAnnouncement = ServiceAnnouncement.serviceAnnouncement(serviceType.value()).addProperty("a", "apple").build(); announcer = new Announcer(discoveryClient, ImmutableSet.of(serviceAnnouncement)); }
@Test public void testBuilder() { assertAnnouncement(serviceAnnouncement("foo").build(), "foo", ImmutableMap.<String, String>of()); assertAnnouncement(serviceAnnouncement("foo").build(), "foo", ImmutableMap.<String, String>of()); assertAnnouncement(serviceAnnouncement("foo").addProperty("a", "apple").build(), "foo", ImmutableMap.of("a", "apple")); assertAnnouncement(serviceAnnouncement("foo").addProperties(ImmutableMap.of("a", "apple", "b", "banana")).build(), "foo", ImmutableMap.of("a", "apple", "b", "banana")); }
@Test public void testToString() { assertNotNull(new Announcement("environment", "node", "pool", "location", ImmutableSet.of( serviceAnnouncement("foo") .addProperty("http", "http://localhost:8080") .addProperty("jmx", "jmx://localhost:1234") .build()) )); }
@BeforeMethod protected void setUp() throws Exception { nodeInfo = new NodeInfo(new NodeConfig().setEnvironment("test").setPool("pool")); discoveryClient = new InMemoryDiscoveryClient(nodeInfo, MAX_AGE); serviceAnnouncement = ServiceAnnouncement.serviceAnnouncement(serviceType.value()).addProperty("a", "apple").build(); announcer = new Announcer(discoveryClient, ImmutableSet.of(serviceAnnouncement)); }
@Test public void testBuilder() { assertAnnouncement(serviceAnnouncement("foo").build(), "foo", ImmutableMap.<String, String>of()); assertAnnouncement(serviceAnnouncement("foo").build(), "foo", ImmutableMap.<String, String>of()); assertAnnouncement(serviceAnnouncement("foo").addProperty("a", "apple").build(), "foo", ImmutableMap.of("a", "apple")); assertAnnouncement(serviceAnnouncement("foo").addProperties(ImmutableMap.of("a", "apple", "b", "banana")).build(), "foo", ImmutableMap.of("a", "apple", "b", "banana")); }
@Test public void addAnnouncementAfterStart() throws Exception { assertAnnounced(); announcer.start(); ServiceAnnouncement newAnnouncement = ServiceAnnouncement.serviceAnnouncement(serviceType.value()).addProperty("a", "apple").build(); announcer.addServiceAnnouncement(newAnnouncement); Thread.sleep(100); assertAnnounced(serviceAnnouncement, newAnnouncement); }
@BeforeMethod protected void setUp() throws Exception { nodeInfo = new NodeInfo(new NodeConfig().setEnvironment("test").setPool("pool")); discoveryClient = new InMemoryDiscoveryClient(nodeInfo, MAX_AGE); serviceAnnouncement = ServiceAnnouncement.serviceAnnouncement(serviceType.value()).addProperty("a", "apple").build(); announcer = new Announcer(discoveryClient, ImmutableSet.of(serviceAnnouncement)); }
@Test public void testBuilder() { assertAnnouncement(serviceAnnouncement("foo").build(), "foo", ImmutableMap.<String, String>of()); assertAnnouncement(serviceAnnouncement("foo").build(), "foo", ImmutableMap.<String, String>of()); assertAnnouncement(serviceAnnouncement("foo").addProperty("a", "apple").build(), "foo", ImmutableMap.of("a", "apple")); assertAnnouncement(serviceAnnouncement("foo").addProperties(ImmutableMap.of("a", "apple", "b", "banana")).build(), "foo", ImmutableMap.of("a", "apple", "b", "banana")); }
@Test public void addAnnouncementAfterStart() throws Exception { assertAnnounced(); announcer.start(); ServiceAnnouncement newAnnouncement = ServiceAnnouncement.serviceAnnouncement(serviceType.value()).addProperty("a", "apple").build(); announcer.addServiceAnnouncement(newAnnouncement); Thread.sleep(100); assertAnnounced(serviceAnnouncement, newAnnouncement); }
@Override public ServiceAnnouncement get() { return serviceAnnouncement("jmx") .addProperty("jmx", jmxAgent.getUrl().toString()) .build(); } }