Search in sources :

Example 1 with EndpointBatchRequest

use of software.amazon.awssdk.services.pinpoint.model.EndpointBatchRequest in project aws-doc-sdk-examples by awsdocs.

the class AddExampleEndpoints method updateEndpointsViaBatch.

// snippet-start:[pinpoint.java2.update_batch.main]
public static void updateEndpointsViaBatch(PinpointClient pinpoint, String applicationId) {
    try {
        List<String> myList = new ArrayList<String>();
        myList.add("music");
        myList.add("books");
        Map myMap = new HashMap<String, List>();
        myMap.put("attributes", myList);
        List<String> myNames = new ArrayList<String>();
        myList.add("Richard");
        myList.add("Roe");
        Map myMap2 = new HashMap<String, List>();
        myMap2.put("name", myNames);
        EndpointUser richardRoe = EndpointUser.builder().userId("example_user_1").userAttributes(myMap2).build();
        // Create an EndpointBatchItem object for Richard Roe.
        EndpointBatchItem richardRoesEmailEndpoint = EndpointBatchItem.builder().channelType(ChannelType.EMAIL).address("richard_roe@example.com").id("example_endpoint_1").attributes(myMap).user(richardRoe).build();
        List<String> myListMary = new ArrayList<String>();
        myListMary.add("cooking");
        myListMary.add("politics");
        myListMary.add("finance");
        Map myMapMary = new HashMap<String, List>();
        myMapMary.put("interests", myListMary);
        List<String> myNameMary = new ArrayList<String>();
        myNameMary.add("Mary ");
        myNameMary.add("Major");
        Map maryName = new HashMap<String, List>();
        myMapMary.put("name", myNameMary);
        EndpointUser maryMajor = EndpointUser.builder().userId("example_user_2").userAttributes(maryName).build();
        // Create an EndpointBatchItem object for Mary Major.
        EndpointBatchItem maryMajorsSmsEndpoint = EndpointBatchItem.builder().channelType(ChannelType.SMS).address("+16145550100").id("example_endpoint_2").attributes(myMapMary).user(maryMajor).build();
        // Adds multiple endpoint definitions to a single request object.
        EndpointBatchRequest endpointList = EndpointBatchRequest.builder().item(richardRoesEmailEndpoint).item(maryMajorsSmsEndpoint).build();
        // Create the UpdateEndpointsBatchRequest.
        UpdateEndpointsBatchRequest batchRequest = UpdateEndpointsBatchRequest.builder().applicationId(applicationId).endpointBatchRequest(endpointList).build();
        // Updates the endpoints with Amazon Pinpoint.
        UpdateEndpointsBatchResponse result = pinpoint.updateEndpointsBatch(batchRequest);
        System.out.format("Update endpoints batch result: %s\n", result.messageBody().message());
    } catch (PinpointException e) {
        System.err.println(e.awsErrorDetails().errorMessage());
        System.exit(1);
    }
}
Also used : UpdateEndpointsBatchRequest(software.amazon.awssdk.services.pinpoint.model.UpdateEndpointsBatchRequest) HashMap(java.util.HashMap) EndpointBatchRequest(software.amazon.awssdk.services.pinpoint.model.EndpointBatchRequest) UpdateEndpointsBatchResponse(software.amazon.awssdk.services.pinpoint.model.UpdateEndpointsBatchResponse) EndpointUser(software.amazon.awssdk.services.pinpoint.model.EndpointUser) PinpointException(software.amazon.awssdk.services.pinpoint.model.PinpointException) ArrayList(java.util.ArrayList) EndpointBatchItem(software.amazon.awssdk.services.pinpoint.model.EndpointBatchItem) HashMap(java.util.HashMap) Map(java.util.Map)

Aggregations

ArrayList (java.util.ArrayList)1 HashMap (java.util.HashMap)1 Map (java.util.Map)1 EndpointBatchItem (software.amazon.awssdk.services.pinpoint.model.EndpointBatchItem)1 EndpointBatchRequest (software.amazon.awssdk.services.pinpoint.model.EndpointBatchRequest)1 EndpointUser (software.amazon.awssdk.services.pinpoint.model.EndpointUser)1 PinpointException (software.amazon.awssdk.services.pinpoint.model.PinpointException)1 UpdateEndpointsBatchRequest (software.amazon.awssdk.services.pinpoint.model.UpdateEndpointsBatchRequest)1 UpdateEndpointsBatchResponse (software.amazon.awssdk.services.pinpoint.model.UpdateEndpointsBatchResponse)1