/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.pinpoint.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Specifies the configuration and other settings for a message to send to all the endpoints that are associated with a * list of users. *
* * @see AWS * API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class SendUsersMessageRequest implements Serializable, Cloneable, StructuredPojo { /** ** A map of custom attribute-value pairs. For a push notification, Amazon Pinpoint adds these attributes to the * data.pinpoint object in the body of the notification payload. Amazon Pinpoint also provides these attributes in * the events that it generates for users-messages deliveries. *
*/ private java.util.Map* The settings and content for the default message and any default messages that you defined for specific channels. *
*/ private DirectMessageConfiguration messageConfiguration; /** ** The message template to use for the message. *
*/ private TemplateConfiguration templateConfiguration; /** ** The unique identifier for tracing the message. This identifier is visible to message recipients. *
*/ private String traceId; /** ** A map that associates user IDs with EndpointSendConfiguration objects. You can use an EndpointSendConfiguration object to tailor the message for a user by specifying settings such as content * overrides and message variables. *
*/ private java.util.Map* A map of custom attribute-value pairs. For a push notification, Amazon Pinpoint adds these attributes to the * data.pinpoint object in the body of the notification payload. Amazon Pinpoint also provides these attributes in * the events that it generates for users-messages deliveries. *
* * @return A map of custom attribute-value pairs. For a push notification, Amazon Pinpoint adds these attributes to * the data.pinpoint object in the body of the notification payload. Amazon Pinpoint also provides these * attributes in the events that it generates for users-messages deliveries. */ public java.util.Map* A map of custom attribute-value pairs. For a push notification, Amazon Pinpoint adds these attributes to the * data.pinpoint object in the body of the notification payload. Amazon Pinpoint also provides these attributes in * the events that it generates for users-messages deliveries. *
* * @param context * A map of custom attribute-value pairs. For a push notification, Amazon Pinpoint adds these attributes to * the data.pinpoint object in the body of the notification payload. Amazon Pinpoint also provides these * attributes in the events that it generates for users-messages deliveries. */ public void setContext(java.util.Map* A map of custom attribute-value pairs. For a push notification, Amazon Pinpoint adds these attributes to the * data.pinpoint object in the body of the notification payload. Amazon Pinpoint also provides these attributes in * the events that it generates for users-messages deliveries. *
* * @param context * A map of custom attribute-value pairs. For a push notification, Amazon Pinpoint adds these attributes to * the data.pinpoint object in the body of the notification payload. Amazon Pinpoint also provides these * attributes in the events that it generates for users-messages deliveries. * @return Returns a reference to this object so that method calls can be chained together. */ public SendUsersMessageRequest withContext(java.util.Map* The settings and content for the default message and any default messages that you defined for specific channels. *
* * @param messageConfiguration * The settings and content for the default message and any default messages that you defined for specific * channels. */ public void setMessageConfiguration(DirectMessageConfiguration messageConfiguration) { this.messageConfiguration = messageConfiguration; } /** ** The settings and content for the default message and any default messages that you defined for specific channels. *
* * @return The settings and content for the default message and any default messages that you defined for specific * channels. */ public DirectMessageConfiguration getMessageConfiguration() { return this.messageConfiguration; } /** ** The settings and content for the default message and any default messages that you defined for specific channels. *
* * @param messageConfiguration * The settings and content for the default message and any default messages that you defined for specific * channels. * @return Returns a reference to this object so that method calls can be chained together. */ public SendUsersMessageRequest withMessageConfiguration(DirectMessageConfiguration messageConfiguration) { setMessageConfiguration(messageConfiguration); return this; } /** ** The message template to use for the message. *
* * @param templateConfiguration * The message template to use for the message. */ public void setTemplateConfiguration(TemplateConfiguration templateConfiguration) { this.templateConfiguration = templateConfiguration; } /** ** The message template to use for the message. *
* * @return The message template to use for the message. */ public TemplateConfiguration getTemplateConfiguration() { return this.templateConfiguration; } /** ** The message template to use for the message. *
* * @param templateConfiguration * The message template to use for the message. * @return Returns a reference to this object so that method calls can be chained together. */ public SendUsersMessageRequest withTemplateConfiguration(TemplateConfiguration templateConfiguration) { setTemplateConfiguration(templateConfiguration); return this; } /** ** The unique identifier for tracing the message. This identifier is visible to message recipients. *
* * @param traceId * The unique identifier for tracing the message. This identifier is visible to message recipients. */ public void setTraceId(String traceId) { this.traceId = traceId; } /** ** The unique identifier for tracing the message. This identifier is visible to message recipients. *
* * @return The unique identifier for tracing the message. This identifier is visible to message recipients. */ public String getTraceId() { return this.traceId; } /** ** The unique identifier for tracing the message. This identifier is visible to message recipients. *
* * @param traceId * The unique identifier for tracing the message. This identifier is visible to message recipients. * @return Returns a reference to this object so that method calls can be chained together. */ public SendUsersMessageRequest withTraceId(String traceId) { setTraceId(traceId); return this; } /** ** A map that associates user IDs with EndpointSendConfiguration objects. You can use an EndpointSendConfiguration object to tailor the message for a user by specifying settings such as content * overrides and message variables. *
* * @return A map that associates user IDs with EndpointSendConfiguration objects. You can use an EndpointSendConfiguration object to tailor the message for a user by specifying settings such as * content overrides and message variables. */ public java.util.Map* A map that associates user IDs with EndpointSendConfiguration objects. You can use an EndpointSendConfiguration object to tailor the message for a user by specifying settings such as content * overrides and message variables. *
* * @param users * A map that associates user IDs with EndpointSendConfiguration objects. You can use an EndpointSendConfiguration object to tailor the message for a user by specifying settings such as * content overrides and message variables. */ public void setUsers(java.util.Map* A map that associates user IDs with EndpointSendConfiguration objects. You can use an EndpointSendConfiguration object to tailor the message for a user by specifying settings such as content * overrides and message variables. *
* * @param users * A map that associates user IDs with EndpointSendConfiguration objects. You can use an EndpointSendConfiguration object to tailor the message for a user by specifying settings such as * content overrides and message variables. * @return Returns a reference to this object so that method calls can be chained together. */ public SendUsersMessageRequest withUsers(java.util.Map