Search in sources :

Example 1 with PutComponentTemplateRequest

use of org.opensearch.client.indices.PutComponentTemplateRequest in project OpenSearch by opensearch-project.

the class ClusterClientDocumentationIT method testGetComponentTemplates.

public void testGetComponentTemplates() throws Exception {
    RestHighLevelClient client = highLevelClient();
    {
        Template template = new Template(Settings.builder().put("index.number_of_replicas", 3).build(), null, null);
        ComponentTemplate componentTemplate = new ComponentTemplate(template, null, null);
        PutComponentTemplateRequest putComponentTemplateRequest = new PutComponentTemplateRequest().name("ct1").componentTemplate(componentTemplate);
        client.cluster().putComponentTemplate(putComponentTemplateRequest, RequestOptions.DEFAULT);
        assertTrue(client.cluster().putComponentTemplate(putComponentTemplateRequest, RequestOptions.DEFAULT).isAcknowledged());
    }
    // tag::get-component-templates-request
    // <1>
    GetComponentTemplatesRequest request = new GetComponentTemplatesRequest("ct1");
    // end::get-component-templates-request
    // tag::get-component-templates-request-masterTimeout
    // <1>
    request.setMasterNodeTimeout(TimeValue.timeValueMinutes(1));
    // <2>
    request.setMasterNodeTimeout("1m");
    // end::get-component-templates-request-masterTimeout
    // tag::get-component-templates-execute
    GetComponentTemplatesResponse getTemplatesResponse = client.cluster().getComponentTemplate(request, RequestOptions.DEFAULT);
    // end::get-component-templates-execute
    // tag::get-component-templates-response
    // <1>
    Map<String, ComponentTemplate> templates = getTemplatesResponse.getComponentTemplates();
    // end::get-component-templates-response
    assertThat(templates.size(), is(1));
    assertThat(templates.get("ct1"), is(notNullValue()));
    // tag::get-component-templates-execute-listener
    ActionListener<GetComponentTemplatesResponse> listener = new ActionListener<GetComponentTemplatesResponse>() {

        @Override
        public void onResponse(GetComponentTemplatesResponse response) {
        // <1>
        }

        @Override
        public void onFailure(Exception e) {
        // <2>
        }
    };
    // end::get-component-templates-execute-listener
    // Replace the empty listener by a blocking listener in test
    final CountDownLatch latch = new CountDownLatch(1);
    listener = new LatchedActionListener<>(listener, latch);
    // tag::get-component-templates-execute-async
    // <1>
    client.cluster().getComponentTemplateAsync(request, RequestOptions.DEFAULT, listener);
    // end::get-component-templates-execute-async
    assertTrue(latch.await(30L, TimeUnit.SECONDS));
}
Also used : GetComponentTemplatesRequest(org.opensearch.client.indices.GetComponentTemplatesRequest) RestHighLevelClient(org.opensearch.client.RestHighLevelClient) CountDownLatch(java.util.concurrent.CountDownLatch) IOException(java.io.IOException) Template(org.opensearch.cluster.metadata.Template) ComponentTemplate(org.opensearch.cluster.metadata.ComponentTemplate) PutComponentTemplateRequest(org.opensearch.client.indices.PutComponentTemplateRequest) LatchedActionListener(org.opensearch.action.LatchedActionListener) ActionListener(org.opensearch.action.ActionListener) ComponentTemplate(org.opensearch.cluster.metadata.ComponentTemplate) GetComponentTemplatesResponse(org.opensearch.client.indices.GetComponentTemplatesResponse)

Example 2 with PutComponentTemplateRequest

use of org.opensearch.client.indices.PutComponentTemplateRequest in project OpenSearch by opensearch-project.

the class ClusterClientDocumentationIT method testDeleteComponentTemplate.

public void testDeleteComponentTemplate() throws Exception {
    RestHighLevelClient client = highLevelClient();
    {
        PutComponentTemplateRequest request = new PutComponentTemplateRequest().name("ct1");
        Settings settings = Settings.builder().put("index.number_of_shards", 3).put("index.number_of_replicas", 1).build();
        String mappingJson = "{\n" + "  \"properties\": {\n" + "    \"message\": {\n" + "      \"type\": \"text\"\n" + "    }\n" + "  }\n" + "}";
        AliasMetadata twitterAlias = AliasMetadata.builder("twitter_alias").build();
        Map<String, AliasMetadata> aliases = new HashMap<>();
        aliases.put("twitter_alias", twitterAlias);
        Template template = new Template(settings, new CompressedXContent(mappingJson), aliases);
        request.componentTemplate(new ComponentTemplate(template, null, null));
        assertTrue(client.cluster().putComponentTemplate(request, RequestOptions.DEFAULT).isAcknowledged());
    }
    // tag::delete-component-template-request
    // <1>
    DeleteComponentTemplateRequest deleteRequest = new DeleteComponentTemplateRequest("ct1");
    // end::delete-component-template-request
    // tag::delete-component-template-request-masterTimeout
    // <1>
    deleteRequest.setMasterTimeout(TimeValue.timeValueMinutes(1));
    // end::delete-component-template-request-masterTimeout
    // tag::delete-component-template-execute
    AcknowledgedResponse deleteTemplateAcknowledge = client.cluster().deleteComponentTemplate(deleteRequest, RequestOptions.DEFAULT);
    // end::delete-component-template-execute
    // tag::delete-component-template-response
    // <1>
    boolean acknowledged = deleteTemplateAcknowledge.isAcknowledged();
    // end::delete-component-template-response
    assertThat(acknowledged, equalTo(true));
    {
        PutComponentTemplateRequest request = new PutComponentTemplateRequest().name("ct1");
        Settings settings = Settings.builder().put("index.number_of_shards", 3).put("index.number_of_replicas", 1).build();
        Template template = new Template(settings, null, null);
        request.componentTemplate(new ComponentTemplate(template, null, null));
        assertTrue(client.cluster().putComponentTemplate(request, RequestOptions.DEFAULT).isAcknowledged());
    }
    // tag::delete-component-template-execute-listener
    ActionListener<AcknowledgedResponse> listener = new ActionListener<AcknowledgedResponse>() {

        @Override
        public void onResponse(AcknowledgedResponse response) {
        // <1>
        }

        @Override
        public void onFailure(Exception e) {
        // <2>
        }
    };
    // end::delete-component-template-execute-listener
    final CountDownLatch latch = new CountDownLatch(1);
    listener = new LatchedActionListener<>(listener, latch);
    // tag::delete-component-template-execute-async
    // <1>
    client.cluster().deleteComponentTemplateAsync(deleteRequest, RequestOptions.DEFAULT, listener);
    // end::delete-component-template-execute-async
    assertTrue(latch.await(30L, TimeUnit.SECONDS));
}
Also used : AliasMetadata(org.opensearch.cluster.metadata.AliasMetadata) AcknowledgedResponse(org.opensearch.action.support.master.AcknowledgedResponse) RestHighLevelClient(org.opensearch.client.RestHighLevelClient) CountDownLatch(java.util.concurrent.CountDownLatch) IOException(java.io.IOException) PutComponentTemplateRequest(org.opensearch.client.indices.PutComponentTemplateRequest) Template(org.opensearch.cluster.metadata.Template) ComponentTemplate(org.opensearch.cluster.metadata.ComponentTemplate) DeleteComponentTemplateRequest(org.opensearch.client.indices.DeleteComponentTemplateRequest) LatchedActionListener(org.opensearch.action.LatchedActionListener) ActionListener(org.opensearch.action.ActionListener) CompressedXContent(org.opensearch.common.compress.CompressedXContent) ComponentTemplate(org.opensearch.cluster.metadata.ComponentTemplate) HashMap(java.util.HashMap) Map(java.util.Map) RecoverySettings(org.opensearch.indices.recovery.RecoverySettings) Settings(org.opensearch.common.settings.Settings)

Example 3 with PutComponentTemplateRequest

use of org.opensearch.client.indices.PutComponentTemplateRequest in project OpenSearch by opensearch-project.

the class ClusterClientIT method testComponentTemplates.

public void testComponentTemplates() throws Exception {
    String templateName = "my-template";
    Settings settings = Settings.builder().put("index.number_of_shards", 1).build();
    CompressedXContent mappings = new CompressedXContent("{\"properties\":{\"host_name\":{\"type\":\"keyword\"}}}");
    AliasMetadata alias = AliasMetadata.builder("alias").writeIndex(true).build();
    Template template = new Template(settings, mappings, Collections.singletonMap("alias", alias));
    ComponentTemplate componentTemplate = new ComponentTemplate(template, 1L, new HashMap<>());
    PutComponentTemplateRequest putComponentTemplateRequest = new PutComponentTemplateRequest().name(templateName).create(true).componentTemplate(componentTemplate);
    AcknowledgedResponse response = execute(putComponentTemplateRequest, highLevelClient().cluster()::putComponentTemplate, highLevelClient().cluster()::putComponentTemplateAsync);
    assertThat(response.isAcknowledged(), equalTo(true));
    ComponentTemplatesExistRequest componentTemplatesExistRequest = new ComponentTemplatesExistRequest(templateName);
    boolean exist = execute(componentTemplatesExistRequest, highLevelClient().cluster()::existsComponentTemplate, highLevelClient().cluster()::existsComponentTemplateAsync);
    assertTrue(exist);
    GetComponentTemplatesRequest getComponentTemplatesRequest = new GetComponentTemplatesRequest(templateName);
    GetComponentTemplatesResponse getResponse = execute(getComponentTemplatesRequest, highLevelClient().cluster()::getComponentTemplate, highLevelClient().cluster()::getComponentTemplateAsync);
    assertThat(getResponse.getComponentTemplates().size(), equalTo(1));
    assertThat(getResponse.getComponentTemplates().containsKey(templateName), equalTo(true));
    assertThat(getResponse.getComponentTemplates().get(templateName), equalTo(componentTemplate));
    DeleteComponentTemplateRequest deleteComponentTemplateRequest = new DeleteComponentTemplateRequest(templateName);
    response = execute(deleteComponentTemplateRequest, highLevelClient().cluster()::deleteComponentTemplate, highLevelClient().cluster()::deleteComponentTemplateAsync);
    assertThat(response.isAcknowledged(), equalTo(true));
    OpenSearchStatusException statusException = expectThrows(OpenSearchStatusException.class, () -> execute(getComponentTemplatesRequest, highLevelClient().cluster()::getComponentTemplate, highLevelClient().cluster()::getComponentTemplateAsync));
    assertThat(statusException.status(), equalTo(RestStatus.NOT_FOUND));
    exist = execute(componentTemplatesExistRequest, highLevelClient().cluster()::existsComponentTemplate, highLevelClient().cluster()::existsComponentTemplateAsync);
    assertFalse(exist);
}
Also used : AliasMetadata(org.opensearch.cluster.metadata.AliasMetadata) ComponentTemplatesExistRequest(org.opensearch.client.indices.ComponentTemplatesExistRequest) GetComponentTemplatesRequest(org.opensearch.client.indices.GetComponentTemplatesRequest) AcknowledgedResponse(org.opensearch.action.support.master.AcknowledgedResponse) Template(org.opensearch.cluster.metadata.Template) ComponentTemplate(org.opensearch.cluster.metadata.ComponentTemplate) PutComponentTemplateRequest(org.opensearch.client.indices.PutComponentTemplateRequest) DeleteComponentTemplateRequest(org.opensearch.client.indices.DeleteComponentTemplateRequest) CompressedXContent(org.opensearch.common.compress.CompressedXContent) ComponentTemplate(org.opensearch.cluster.metadata.ComponentTemplate) GetComponentTemplatesResponse(org.opensearch.client.indices.GetComponentTemplatesResponse) RecoverySettings(org.opensearch.indices.recovery.RecoverySettings) Settings(org.opensearch.common.settings.Settings) OpenSearchStatusException(org.opensearch.OpenSearchStatusException)

Example 4 with PutComponentTemplateRequest

use of org.opensearch.client.indices.PutComponentTemplateRequest in project OpenSearch by opensearch-project.

the class ClusterRequestConverters method putComponentTemplate.

static Request putComponentTemplate(PutComponentTemplateRequest putComponentTemplateRequest) throws IOException {
    String endpoint = new RequestConverters.EndpointBuilder().addPathPartAsIs("_component_template").addPathPart(putComponentTemplateRequest.name()).build();
    Request request = new Request(HttpPut.METHOD_NAME, endpoint);
    RequestConverters.Params params = new RequestConverters.Params();
    params.withMasterTimeout(putComponentTemplateRequest.masterNodeTimeout());
    if (putComponentTemplateRequest.create()) {
        params.putParam("create", Boolean.TRUE.toString());
    }
    if (Strings.hasText(putComponentTemplateRequest.cause())) {
        params.putParam("cause", putComponentTemplateRequest.cause());
    }
    request.addParameters(params.asMap());
    request.setEntity(RequestConverters.createEntity(putComponentTemplateRequest, RequestConverters.REQUEST_BODY_CONTENT_TYPE));
    return request;
}
Also used : ClusterUpdateSettingsRequest(org.opensearch.action.admin.cluster.settings.ClusterUpdateSettingsRequest) PutComponentTemplateRequest(org.opensearch.client.indices.PutComponentTemplateRequest) ComponentTemplatesExistRequest(org.opensearch.client.indices.ComponentTemplatesExistRequest) GetComponentTemplatesRequest(org.opensearch.client.indices.GetComponentTemplatesRequest) ClusterGetSettingsRequest(org.opensearch.action.admin.cluster.settings.ClusterGetSettingsRequest) DeleteComponentTemplateRequest(org.opensearch.client.indices.DeleteComponentTemplateRequest) RemoteInfoRequest(org.opensearch.client.cluster.RemoteInfoRequest) ClusterHealthRequest(org.opensearch.action.admin.cluster.health.ClusterHealthRequest)

Aggregations

PutComponentTemplateRequest (org.opensearch.client.indices.PutComponentTemplateRequest)4 DeleteComponentTemplateRequest (org.opensearch.client.indices.DeleteComponentTemplateRequest)3 GetComponentTemplatesRequest (org.opensearch.client.indices.GetComponentTemplatesRequest)3 ComponentTemplate (org.opensearch.cluster.metadata.ComponentTemplate)3 Template (org.opensearch.cluster.metadata.Template)3 IOException (java.io.IOException)2 CountDownLatch (java.util.concurrent.CountDownLatch)2 ActionListener (org.opensearch.action.ActionListener)2 LatchedActionListener (org.opensearch.action.LatchedActionListener)2 AcknowledgedResponse (org.opensearch.action.support.master.AcknowledgedResponse)2 RestHighLevelClient (org.opensearch.client.RestHighLevelClient)2 ComponentTemplatesExistRequest (org.opensearch.client.indices.ComponentTemplatesExistRequest)2 GetComponentTemplatesResponse (org.opensearch.client.indices.GetComponentTemplatesResponse)2 AliasMetadata (org.opensearch.cluster.metadata.AliasMetadata)2 CompressedXContent (org.opensearch.common.compress.CompressedXContent)2 Settings (org.opensearch.common.settings.Settings)2 RecoverySettings (org.opensearch.indices.recovery.RecoverySettings)2 HashMap (java.util.HashMap)1 Map (java.util.Map)1 OpenSearchStatusException (org.opensearch.OpenSearchStatusException)1