private String getID(final Record record) { final JsonObject metadata = record.getMetadata(); return metadata.getString(Origin.ID); }
private String getID(final Record record) { final JsonObject metadata = record.getMetadata(); return metadata.getString(Origin.ID); }
/** * Gets the name of the publisher that registered the schema, {@code null} if published independently. * * @return the publisher name, or null */ public Optional<String> getPublisherId() { return Optional.ofNullable(record.getMetadata().getString("publisherId")); }
private boolean areTheSameService(Record record1, Record record2) { String uuid = record1.getMetadata().getString(KUBERNETES_UUID, ""); String uuid2 = record2.getMetadata().getString(KUBERNETES_UUID, ""); String endpoint = record1.getLocation().getString(Record.ENDPOINT, ""); String endpoint2 = record2.getLocation().getString(Record.ENDPOINT, ""); // Check the uuid and location return uuid.equals(uuid2) && endpoint.equals(endpoint2); }
private void successLog(final Record record) { final String key = this.getID(record); final String id = record.getRegistration(); final String endpoint = MessageFormat.format("http://{0}:{1}{2}", record.getLocation().getString(Origin.HOST), String.valueOf(record.getLocation().getInteger(Origin.PORT)), record.getMetadata().getString(Origin.PATH)); LOGGER.debug(Info.REG_SUCCESS, record.getStatus(), record.getType(), record.getName(), endpoint, key, id); }
private void successLog(final Record record) { final String key = this.getID(record); final String id = record.getRegistration(); final String endpoint = MessageFormat.format("http://{0}:{1}{2}", record.getLocation().getString(Origin.HOST), String.valueOf(record.getLocation().getInteger(Origin.PORT)), record.getMetadata().getString(Origin.PATH)); LOGGER.debug(Info.REG_SUCCESS, record.getStatus(), record.getType(), record.getName(), endpoint, key, id); }
@Test public void testHttpRecordCreation() { Service service = getHttpService(); Record record = KubernetesServiceImporter.createRecord(new JsonObject(Json.encodeToBuffer(service))); assertThat(record).isNotNull(); assertThat(record.getName()).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.name")).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.namespace")).isEqualTo("my-project"); assertThat(record.getMetadata().getString("kubernetes.uuid")).isEqualTo("uuid"); assertThat(record.getType()).isEqualTo(HttpEndpoint.TYPE); assertThat(record.getLocation().getInteger("port")).isEqualTo(8080); assertThat(record.getLocation().getBoolean("ssl")).isFalse(); }
@Test public void testHttpRecordCreation() { Service service = getHttpService(); Record record = KubernetesServiceImporter.createRecord(new JsonObject(Json.encodeToBuffer(service))); assertThat(record).isNotNull(); assertThat(record.getName()).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.name")).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.namespace")).isEqualTo("my-project"); assertThat(record.getMetadata().getString("kubernetes.uuid")).isEqualTo("uuid"); assertThat(record.getType()).isEqualTo(HttpEndpoint.TYPE); assertThat(record.getLocation().getInteger("port")).isEqualTo(8080); assertThat(record.getLocation().getBoolean("ssl")).isFalse(); }
private void assertRedis(Record record) { assertThat(record.getName()).isEqualTo("DISCOVERY_REDIS"); assertThat(record.getLocation().getString("endpoint")).isEqualToIgnoringCase("tcp://172.17.0.2:6379"); assertThat(record.getMetadata().getString("PORT_6379_TCP_PORT")).isEqualToIgnoringCase("6379"); }
@Test public void testUnknownExternalServiceRecordCreation() { // JDBC Example int servicePort = 5432; Service service = getExternalService(servicePort); Record record = KubernetesServiceImporter.createRecord(new JsonObject(Json.encodeToBuffer(service))); assertThat(record).isNotNull(); assertThat(record.getName()).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.name")).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.namespace")).isEqualTo("my-project"); assertThat(record.getMetadata().getString("kubernetes.uuid")).isEqualTo("uuid"); assertThat(record.getType()).isEqualTo(JDBCDataSource.TYPE); assertThat(record.getLocation().getString("host")).isEqualTo("my-external-service"); assertThat(record.getLocation().getInteger("port")).isEqualTo(servicePort); }
@Test public void testHttpWithSSLExternalServiceRecordCreation() { int servicePort = 443; Service service = getExternalService(servicePort); Record record = KubernetesServiceImporter.createRecord(new JsonObject(Json.encodeToBuffer(service))); assertThat(record).isNotNull(); assertThat(record.getName()).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.name")).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.namespace")).isEqualTo("my-project"); assertThat(record.getMetadata().getString("kubernetes.uuid")).isEqualTo("uuid"); assertThat(record.getType()).isEqualTo(HttpEndpoint.TYPE); assertThat(record.getLocation().getString("host")).isEqualTo("my-external-service"); assertThat(record.getLocation().getInteger("port")).isEqualTo(servicePort); assertThat(record.getLocation().getBoolean("ssl")).isTrue(); assertThat(record.getLocation().getString("endpoint")).isEqualTo("https://my-external-service:" + servicePort); }
private void assertRedis(Record record) { assertThat(record.getName()).isEqualTo("DISCOVERY_REDIS"); assertThat(record.getLocation().getString("endpoint")).isEqualToIgnoringCase("tcp://172.17.0.2:6379"); assertThat(record.getMetadata().getString("PORT_6379_TCP_PORT")).isEqualToIgnoringCase("6379"); }
@Test public void testHttpWithSSLExternalServiceRecordCreation() { int servicePort = 443; Service service = getExternalService(servicePort); Record record = KubernetesServiceImporter.createRecord(new JsonObject(Json.encodeToBuffer(service))); assertThat(record).isNotNull(); assertThat(record.getName()).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.name")).isEqualTo("my-service"); assertThat(record.getMetadata().getString("kubernetes.namespace")).isEqualTo("my-project"); assertThat(record.getMetadata().getString("kubernetes.uuid")).isEqualTo("uuid"); assertThat(record.getType()).isEqualTo(HttpEndpoint.TYPE); assertThat(record.getLocation().getString("host")).isEqualTo("my-external-service"); assertThat(record.getLocation().getInteger("port")).isEqualTo(servicePort); assertThat(record.getLocation().getBoolean("ssl")).isTrue(); assertThat(record.getLocation().getString("endpoint")).isEqualTo("https://my-external-service:" + servicePort); }
@Test public void testNoUriSpec() throws Exception { ServiceInstance<JsonObject> instance = ServiceInstance.<JsonObject>builder() .name("foo-service") .payload(new JsonObject().put("foo", "bar")) .sslPort(42406) .address("localhost") .build(); Record record = ZookeeperServiceImporter.createRecordForInstance(instance); assertThat(record.getName()).isEqualTo("foo-service"); assertThat(record.getType()).isEqualTo("unknown"); assertThat(record.getMetadata().getString("foo")).isEqualTo("bar"); assertThat(record.getMetadata().getString("zookeeper-id")).isNotEmpty(); assertThat(record.getLocation()) .contains(entry("endpoint", "https://localhost:42406")) .contains(entry("ssl-port", 42406)); }
/** * Creates a Redis client for the service. * * @return the Redis client, configured to access the service */ @Override protected RedisClient retrieve() { JsonObject result = record().getMetadata().copy(); result.mergeIn(record().getLocation()); if (config != null) { result.mergeIn(config); } return RedisClient.create(vertx, new RedisOptions(result)); }
/** * Creates a Redis client for the service. * * @return the Redis client, configured to access the service */ @Override protected RedisClient retrieve() { JsonObject result = record().getMetadata().copy(); result.mergeIn(record().getLocation()); if (config != null) { result.mergeIn(config); } return RedisClient.create(vertx, new RedisOptions(result)); }
@Override public JDBCClient retrieve() { JsonObject result = record().getMetadata().copy(); result.mergeIn(record().getLocation()); if (config != null) { result.mergeIn(config); } if (result.getBoolean("shared", false)) { return JDBCClient.createShared(vertx, result); } else { return JDBCClient.createNonShared(vertx, result); } }
@Override public MongoClient retrieve() { JsonObject result = record().getMetadata().copy(); result.mergeIn(record().getLocation()); if (config != null) { result.mergeIn(config); } if (result.getBoolean("shared", false)) { return MongoClient.createShared(vertx, result); } else { return MongoClient.createNonShared(vertx, result); } }
@Override public JDBCClient retrieve() { JsonObject result = record().getMetadata().copy(); result.mergeIn(record().getLocation()); if (config != null) { result.mergeIn(config); } if (result.getBoolean("shared", false)) { return JDBCClient.createShared(vertx, result); } else { return JDBCClient.createNonShared(vertx, result); } }
@Override public MongoClient retrieve() { JsonObject result = record().getMetadata().copy(); result.mergeIn(record().getLocation()); if (config != null) { result.mergeIn(config); } if (result.getBoolean("shared", false)) { return MongoClient.createShared(vertx, result); } else { return MongoClient.createNonShared(vertx, result); } }