Class PublicEndpoint

java.lang.Object
software.amazon.awssdk.services.pinpoint.model.PublicEndpoint
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<PublicEndpoint.Builder,PublicEndpoint>

@Generated("software.amazon.awssdk:codegen") public final class PublicEndpoint extends Object implements SdkPojo, Serializable, ToCopyableBuilder<PublicEndpoint.Builder,PublicEndpoint>

Specifies the properties and attributes of an endpoint that's associated with an event.

See Also:
  • Method Details

    • address

      public final String address()

      The unique identifier for the recipient, such as a device token, email address, or mobile phone number.

      Returns:
      The unique identifier for the recipient, such as a device token, email address, or mobile phone number.
    • hasAttributes

      public final boolean hasAttributes()
      For responses, this returns true if the service returned a value for the Attributes property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • attributes

      public final Map<String,List<String>> attributes()

      One or more custom attributes that describe the endpoint by associating a name with an array of values. You can use these attributes as filter criteria when you create segments.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasAttributes() method.

      Returns:
      One or more custom attributes that describe the endpoint by associating a name with an array of values. You can use these attributes as filter criteria when you create segments.
    • channelType

      public final ChannelType channelType()

      The channel that's used when sending messages or push notifications to the endpoint.

      If the service returns an enum value that is not available in the current SDK version, channelType will return ChannelType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from channelTypeAsString().

      Returns:
      The channel that's used when sending messages or push notifications to the endpoint.
      See Also:
    • channelTypeAsString

      public final String channelTypeAsString()

      The channel that's used when sending messages or push notifications to the endpoint.

      If the service returns an enum value that is not available in the current SDK version, channelType will return ChannelType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from channelTypeAsString().

      Returns:
      The channel that's used when sending messages or push notifications to the endpoint.
      See Also:
    • demographic

      public final EndpointDemographic demographic()

      The demographic information for the endpoint, such as the time zone and platform.

      Returns:
      The demographic information for the endpoint, such as the time zone and platform.
    • effectiveDate

      public final String effectiveDate()

      The date and time, in ISO 8601 format, when the endpoint was last updated.

      Returns:
      The date and time, in ISO 8601 format, when the endpoint was last updated.
    • endpointStatus

      public final String endpointStatus()

      Specifies whether to send messages or push notifications to the endpoint. Valid values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

      Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

      Returns:
      Specifies whether to send messages or push notifications to the endpoint. Valid values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

      Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

    • location

      public final EndpointLocation location()

      The geographic information for the endpoint.

      Returns:
      The geographic information for the endpoint.
    • hasMetrics

      public final boolean hasMetrics()
      For responses, this returns true if the service returned a value for the Metrics property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • metrics

      public final Map<String,Double> metrics()

      One or more custom metrics that your app reports to Amazon Pinpoint for the endpoint.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasMetrics() method.

      Returns:
      One or more custom metrics that your app reports to Amazon Pinpoint for the endpoint.
    • optOut

      public final String optOut()

      Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.

      Returns:
      Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.
    • requestId

      public final String requestId()

      A unique identifier that's generated each time the endpoint is updated.

      Returns:
      A unique identifier that's generated each time the endpoint is updated.
    • user

      public final EndpointUser user()

      One or more custom user attributes that your app reports to Amazon Pinpoint for the user who's associated with the endpoint.

      Returns:
      One or more custom user attributes that your app reports to Amazon Pinpoint for the user who's associated with the endpoint.
    • toBuilder

      public PublicEndpoint.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<PublicEndpoint.Builder,PublicEndpoint>
      Returns:
      a builder for type T
    • builder

      public static PublicEndpoint.Builder builder()
    • serializableBuilderClass

      public static Class<? extends PublicEndpoint.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.