Search in sources :

Example 21 with GetResponse

use of io.etcd.jetcd.kv.GetResponse in project dubbo by alibaba.

the class EtcdMetadataReportTest method testStoreProvider.

@Test
public void testStoreProvider() throws Exception {
    String version = "1.0.0";
    String group = null;
    String application = "etcd-metdata-report-test";
    String r = etcdMetadataReport.getServiceDefinition(new MetadataIdentifier(TEST_SERVICE, version, group, "provider", application));
    Assertions.assertNull(r);
    MetadataIdentifier providerIdentifier = storeProvider(etcdMetadataReport, TEST_SERVICE, version, group, application);
    CompletableFuture<GetResponse> response = etcdClientForTest.getKVClient().get(ByteSequence.from(etcdMetadataReport.getNodeKey(providerIdentifier), StandardCharsets.UTF_8));
    String fileContent = response.get().getKvs().get(0).getValue().toString(StandardCharsets.UTF_8);
    Assertions.assertNotNull(fileContent);
    Gson gson = new Gson();
    FullServiceDefinition fullServiceDefinition = gson.fromJson(fileContent, FullServiceDefinition.class);
    Assertions.assertEquals(fullServiceDefinition.getParameters().get("paramTest"), "etcdTest");
    r = etcdMetadataReport.getServiceDefinition(new MetadataIdentifier(TEST_SERVICE, version, group, "provider", application));
    Assertions.assertNotNull(r);
}
Also used : MetadataIdentifier(org.apache.dubbo.metadata.report.identifier.MetadataIdentifier) ServiceMetadataIdentifier(org.apache.dubbo.metadata.report.identifier.ServiceMetadataIdentifier) SubscriberMetadataIdentifier(org.apache.dubbo.metadata.report.identifier.SubscriberMetadataIdentifier) FullServiceDefinition(org.apache.dubbo.metadata.definition.model.FullServiceDefinition) Gson(com.google.gson.Gson) GetResponse(io.etcd.jetcd.kv.GetResponse) Test(org.junit.jupiter.api.Test)

Aggregations

GetResponse (io.etcd.jetcd.kv.GetResponse)21 Test (org.junit.jupiter.api.Test)16 ByteSequence (io.etcd.jetcd.ByteSequence)7 TxnResponse (io.etcd.jetcd.kv.TxnResponse)4 Cmp (io.etcd.jetcd.op.Cmp)4 URL (org.apache.dubbo.common.URL)4 ServiceMetadataIdentifier (org.apache.dubbo.metadata.report.identifier.ServiceMetadataIdentifier)4 SubscriberMetadataIdentifier (org.apache.dubbo.metadata.report.identifier.SubscriberMetadataIdentifier)4 Gson (com.google.gson.Gson)3 Txn (io.etcd.jetcd.Txn)3 TestUtil.randomString (io.etcd.jetcd.impl.TestUtil.randomString)3 DeleteResponse (io.etcd.jetcd.kv.DeleteResponse)3 PutResponse (io.etcd.jetcd.kv.PutResponse)2 Op (io.etcd.jetcd.op.Op)2 GetOption (io.etcd.jetcd.options.GetOption)2 MetadataIdentifier (org.apache.dubbo.metadata.report.identifier.MetadataIdentifier)2 Client (io.etcd.jetcd.Client)1 KeyValue (io.etcd.jetcd.KeyValue)1 DeleteOption (io.etcd.jetcd.options.DeleteOption)1 Errors (io.etcd.jetcd.support.Errors)1