All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.location.model.CreateTrackerRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon Location module holds the client classes that are used for communicating with Amazon Location Service

There is a newer version: 1.12.780
Show newest version
/*
 * Copyright 2019-2024 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.location.model;

import java.io.Serializable;
import javax.annotation.Generated;

import com.amazonaws.AmazonWebServiceRequest;

/**
 * 
 * @see AWS API
 *      Documentation
 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreateTrackerRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {

    /**
     * 

* The name for the tracker resource. *

*

* Requirements: *

*
    *
  • *

    * Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_). *

    *
  • *
  • *

    * Must be a unique tracker resource name. *

    *
  • *
  • *

    * No spaces allowed. For example, ExampleTracker. *

    *
  • *
*/ private String trackerName; /** *

* No longer used. If included, the only allowed value is RequestBasedUsage. *

*/ @Deprecated private String pricingPlan; /** *

* A key identifier for an Amazon * Web Services KMS customer managed key. Enter a key ID, key ARN, alias name, or alias ARN. *

*/ private String kmsKeyId; /** *

* This parameter is no longer used. *

*/ @Deprecated private String pricingPlanDataSource; /** *

* An optional description for the tracker resource. *

*/ private String description; /** *

* Applies one or more tags to the tracker resource. A tag is a key-value pair helps manage, identify, search, and * filter your resources by labelling them. *

*

* Format: "key" : "value" *

*

* Restrictions: *

*
    *
  • *

    * Maximum 50 tags per resource *

    *
  • *
  • *

    * Each resource tag must be unique with a maximum of one value. *

    *
  • *
  • *

    * Maximum key length: 128 Unicode characters in UTF-8 *

    *
  • *
  • *

    * Maximum value length: 256 Unicode characters in UTF-8 *

    *
  • *
  • *

    * Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : / @. *

    *
  • *
  • *

    * Cannot use "aws:" as a prefix for a key. *

    *
  • *
*/ private java.util.Map tags; /** *

* Specifies the position filtering for the tracker resource. *

*

* Valid values: *

*
    *
  • *

    * TimeBased - Location updates are evaluated against linked geofence collections, but not every * location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 seconds * is stored for each unique device ID. *

    *
  • *
  • *

    * DistanceBased - If the device has moved less than 30 m (98.4 ft), location updates are ignored. * Location updates within this area are neither evaluated against linked geofence collections, nor stored. This * helps control costs by reducing the number of geofence evaluations and historical device positions to paginate * through. Distance-based filtering can also reduce the effects of GPS noise when displaying device trajectories on * a map. *

    *
  • *
  • *

    * AccuracyBased - If the device has moved less than the measured accuracy, location updates are * ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, the * second update is ignored if the device has moved less than 15 m. Ignored location updates are neither evaluated * against linked geofence collections, nor stored. This can reduce the effects of GPS noise when displaying device * trajectories on a map, and can help control your costs by reducing the number of geofence evaluations. *

    *
  • *
*

* This field is optional. If not specified, the default value is TimeBased. *

*/ private String positionFiltering; /** *

* Whether to enable position UPDATE events from this tracker to be sent to EventBridge. *

* *

* You do not need enable this feature to get ENTER and EXIT events for geofences with * this tracker. Those events are always sent to EventBridge. *

*
*/ private Boolean eventBridgeEnabled; /** *

* Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer * managed key. *

*

* This parameter is only used if you are using a KMS customer managed key. *

* *

* If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon Queries * feature will be disabled by default. This is because by using this feature, a representation of your device * positions will not be encrypted using the your KMS managed key. The exact device position, however; is still * encrypted using your managed key. *

*

* You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the * KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker. *

*
*/ private Boolean kmsKeyEnableGeospatialQueries; /** *

* The name for the tracker resource. *

*

* Requirements: *

*
    *
  • *

    * Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_). *

    *
  • *
  • *

    * Must be a unique tracker resource name. *

    *
  • *
  • *

    * No spaces allowed. For example, ExampleTracker. *

    *
  • *
* * @param trackerName * The name for the tracker resource.

*

* Requirements: *

*
    *
  • *

    * Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_). *

    *
  • *
  • *

    * Must be a unique tracker resource name. *

    *
  • *
  • *

    * No spaces allowed. For example, ExampleTracker. *

    *
  • */ public void setTrackerName(String trackerName) { this.trackerName = trackerName; } /** *

    * The name for the tracker resource. *

    *

    * Requirements: *

    *
      *
    • *

      * Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_). *

      *
    • *
    • *

      * Must be a unique tracker resource name. *

      *
    • *
    • *

      * No spaces allowed. For example, ExampleTracker. *

      *
    • *
    * * @return The name for the tracker resource.

    *

    * Requirements: *

    *
      *
    • *

      * Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_). *

      *
    • *
    • *

      * Must be a unique tracker resource name. *

      *
    • *
    • *

      * No spaces allowed. For example, ExampleTracker. *

      *
    • */ public String getTrackerName() { return this.trackerName; } /** *

      * The name for the tracker resource. *

      *

      * Requirements: *

      *
        *
      • *

        * Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_). *

        *
      • *
      • *

        * Must be a unique tracker resource name. *

        *
      • *
      • *

        * No spaces allowed. For example, ExampleTracker. *

        *
      • *
      * * @param trackerName * The name for the tracker resource.

      *

      * Requirements: *

      *
        *
      • *

        * Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_). *

        *
      • *
      • *

        * Must be a unique tracker resource name. *

        *
      • *
      • *

        * No spaces allowed. For example, ExampleTracker. *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. */ public CreateTrackerRequest withTrackerName(String trackerName) { setTrackerName(trackerName); return this; } /** *

        * No longer used. If included, the only allowed value is RequestBasedUsage. *

        * * @param pricingPlan * No longer used. If included, the only allowed value is RequestBasedUsage. * @see PricingPlan */ @Deprecated public void setPricingPlan(String pricingPlan) { this.pricingPlan = pricingPlan; } /** *

        * No longer used. If included, the only allowed value is RequestBasedUsage. *

        * * @return No longer used. If included, the only allowed value is RequestBasedUsage. * @see PricingPlan */ @Deprecated public String getPricingPlan() { return this.pricingPlan; } /** *

        * No longer used. If included, the only allowed value is RequestBasedUsage. *

        * * @param pricingPlan * No longer used. If included, the only allowed value is RequestBasedUsage. * @return Returns a reference to this object so that method calls can be chained together. * @see PricingPlan */ @Deprecated public CreateTrackerRequest withPricingPlan(String pricingPlan) { setPricingPlan(pricingPlan); return this; } /** *

        * No longer used. If included, the only allowed value is RequestBasedUsage. *

        * * @param pricingPlan * No longer used. If included, the only allowed value is RequestBasedUsage. * @return Returns a reference to this object so that method calls can be chained together. * @see PricingPlan */ @Deprecated public CreateTrackerRequest withPricingPlan(PricingPlan pricingPlan) { this.pricingPlan = pricingPlan.toString(); return this; } /** *

        * A key identifier for an Amazon * Web Services KMS customer managed key. Enter a key ID, key ARN, alias name, or alias ARN. *

        * * @param kmsKeyId * A key identifier for an Amazon Web Services KMS * customer managed key. Enter a key ID, key ARN, alias name, or alias ARN. */ public void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } /** *

        * A key identifier for an Amazon * Web Services KMS customer managed key. Enter a key ID, key ARN, alias name, or alias ARN. *

        * * @return A key identifier for an Amazon Web Services KMS * customer managed key. Enter a key ID, key ARN, alias name, or alias ARN. */ public String getKmsKeyId() { return this.kmsKeyId; } /** *

        * A key identifier for an Amazon * Web Services KMS customer managed key. Enter a key ID, key ARN, alias name, or alias ARN. *

        * * @param kmsKeyId * A key identifier for an Amazon Web Services KMS * customer managed key. Enter a key ID, key ARN, alias name, or alias ARN. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateTrackerRequest withKmsKeyId(String kmsKeyId) { setKmsKeyId(kmsKeyId); return this; } /** *

        * This parameter is no longer used. *

        * * @param pricingPlanDataSource * This parameter is no longer used. */ @Deprecated public void setPricingPlanDataSource(String pricingPlanDataSource) { this.pricingPlanDataSource = pricingPlanDataSource; } /** *

        * This parameter is no longer used. *

        * * @return This parameter is no longer used. */ @Deprecated public String getPricingPlanDataSource() { return this.pricingPlanDataSource; } /** *

        * This parameter is no longer used. *

        * * @param pricingPlanDataSource * This parameter is no longer used. * @return Returns a reference to this object so that method calls can be chained together. */ @Deprecated public CreateTrackerRequest withPricingPlanDataSource(String pricingPlanDataSource) { setPricingPlanDataSource(pricingPlanDataSource); return this; } /** *

        * An optional description for the tracker resource. *

        * * @param description * An optional description for the tracker resource. */ public void setDescription(String description) { this.description = description; } /** *

        * An optional description for the tracker resource. *

        * * @return An optional description for the tracker resource. */ public String getDescription() { return this.description; } /** *

        * An optional description for the tracker resource. *

        * * @param description * An optional description for the tracker resource. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateTrackerRequest withDescription(String description) { setDescription(description); return this; } /** *

        * Applies one or more tags to the tracker resource. A tag is a key-value pair helps manage, identify, search, and * filter your resources by labelling them. *

        *

        * Format: "key" : "value" *

        *

        * Restrictions: *

        *
          *
        • *

          * Maximum 50 tags per resource *

          *
        • *
        • *

          * Each resource tag must be unique with a maximum of one value. *

          *
        • *
        • *

          * Maximum key length: 128 Unicode characters in UTF-8 *

          *
        • *
        • *

          * Maximum value length: 256 Unicode characters in UTF-8 *

          *
        • *
        • *

          * Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : / @. *

          *
        • *
        • *

          * Cannot use "aws:" as a prefix for a key. *

          *
        • *
        * * @return Applies one or more tags to the tracker resource. A tag is a key-value pair helps manage, identify, * search, and filter your resources by labelling them.

        *

        * Format: "key" : "value" *

        *

        * Restrictions: *

        *
          *
        • *

          * Maximum 50 tags per resource *

          *
        • *
        • *

          * Each resource tag must be unique with a maximum of one value. *

          *
        • *
        • *

          * Maximum key length: 128 Unicode characters in UTF-8 *

          *
        • *
        • *

          * Maximum value length: 256 Unicode characters in UTF-8 *

          *
        • *
        • *

          * Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : / @. *

          *
        • *
        • *

          * Cannot use "aws:" as a prefix for a key. *

          *
        • */ public java.util.Map getTags() { return tags; } /** *

          * Applies one or more tags to the tracker resource. A tag is a key-value pair helps manage, identify, search, and * filter your resources by labelling them. *

          *

          * Format: "key" : "value" *

          *

          * Restrictions: *

          *
            *
          • *

            * Maximum 50 tags per resource *

            *
          • *
          • *

            * Each resource tag must be unique with a maximum of one value. *

            *
          • *
          • *

            * Maximum key length: 128 Unicode characters in UTF-8 *

            *
          • *
          • *

            * Maximum value length: 256 Unicode characters in UTF-8 *

            *
          • *
          • *

            * Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : / @. *

            *
          • *
          • *

            * Cannot use "aws:" as a prefix for a key. *

            *
          • *
          * * @param tags * Applies one or more tags to the tracker resource. A tag is a key-value pair helps manage, identify, * search, and filter your resources by labelling them.

          *

          * Format: "key" : "value" *

          *

          * Restrictions: *

          *
            *
          • *

            * Maximum 50 tags per resource *

            *
          • *
          • *

            * Each resource tag must be unique with a maximum of one value. *

            *
          • *
          • *

            * Maximum key length: 128 Unicode characters in UTF-8 *

            *
          • *
          • *

            * Maximum value length: 256 Unicode characters in UTF-8 *

            *
          • *
          • *

            * Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : / @. *

            *
          • *
          • *

            * Cannot use "aws:" as a prefix for a key. *

            *
          • */ public void setTags(java.util.Map tags) { this.tags = tags; } /** *

            * Applies one or more tags to the tracker resource. A tag is a key-value pair helps manage, identify, search, and * filter your resources by labelling them. *

            *

            * Format: "key" : "value" *

            *

            * Restrictions: *

            *
              *
            • *

              * Maximum 50 tags per resource *

              *
            • *
            • *

              * Each resource tag must be unique with a maximum of one value. *

              *
            • *
            • *

              * Maximum key length: 128 Unicode characters in UTF-8 *

              *
            • *
            • *

              * Maximum value length: 256 Unicode characters in UTF-8 *

              *
            • *
            • *

              * Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : / @. *

              *
            • *
            • *

              * Cannot use "aws:" as a prefix for a key. *

              *
            • *
            * * @param tags * Applies one or more tags to the tracker resource. A tag is a key-value pair helps manage, identify, * search, and filter your resources by labelling them.

            *

            * Format: "key" : "value" *

            *

            * Restrictions: *

            *
              *
            • *

              * Maximum 50 tags per resource *

              *
            • *
            • *

              * Each resource tag must be unique with a maximum of one value. *

              *
            • *
            • *

              * Maximum key length: 128 Unicode characters in UTF-8 *

              *
            • *
            • *

              * Maximum value length: 256 Unicode characters in UTF-8 *

              *
            • *
            • *

              * Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : / @. *

              *
            • *
            • *

              * Cannot use "aws:" as a prefix for a key. *

              *
            • * @return Returns a reference to this object so that method calls can be chained together. */ public CreateTrackerRequest withTags(java.util.Map tags) { setTags(tags); return this; } /** * Add a single Tags entry * * @see CreateTrackerRequest#withTags * @returns a reference to this object so that method calls can be chained together. */ public CreateTrackerRequest addTagsEntry(String key, String value) { if (null == this.tags) { this.tags = new java.util.HashMap(); } if (this.tags.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.tags.put(key, value); return this; } /** * Removes all the entries added into Tags. * * @return Returns a reference to this object so that method calls can be chained together. */ public CreateTrackerRequest clearTagsEntries() { this.tags = null; return this; } /** *

              * Specifies the position filtering for the tracker resource. *

              *

              * Valid values: *

              *
                *
              • *

                * TimeBased - Location updates are evaluated against linked geofence collections, but not every * location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 seconds * is stored for each unique device ID. *

                *
              • *
              • *

                * DistanceBased - If the device has moved less than 30 m (98.4 ft), location updates are ignored. * Location updates within this area are neither evaluated against linked geofence collections, nor stored. This * helps control costs by reducing the number of geofence evaluations and historical device positions to paginate * through. Distance-based filtering can also reduce the effects of GPS noise when displaying device trajectories on * a map. *

                *
              • *
              • *

                * AccuracyBased - If the device has moved less than the measured accuracy, location updates are * ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, the * second update is ignored if the device has moved less than 15 m. Ignored location updates are neither evaluated * against linked geofence collections, nor stored. This can reduce the effects of GPS noise when displaying device * trajectories on a map, and can help control your costs by reducing the number of geofence evaluations. *

                *
              • *
              *

              * This field is optional. If not specified, the default value is TimeBased. *

              * * @param positionFiltering * Specifies the position filtering for the tracker resource.

              *

              * Valid values: *

              *
                *
              • *

                * TimeBased - Location updates are evaluated against linked geofence collections, but not every * location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 * seconds is stored for each unique device ID. *

                *
              • *
              • *

                * DistanceBased - If the device has moved less than 30 m (98.4 ft), location updates are * ignored. Location updates within this area are neither evaluated against linked geofence collections, nor * stored. This helps control costs by reducing the number of geofence evaluations and historical device * positions to paginate through. Distance-based filtering can also reduce the effects of GPS noise when * displaying device trajectories on a map. *

                *
              • *
              • *

                * AccuracyBased - If the device has moved less than the measured accuracy, location updates are * ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, * the second update is ignored if the device has moved less than 15 m. Ignored location updates are neither * evaluated against linked geofence collections, nor stored. This can reduce the effects of GPS noise when * displaying device trajectories on a map, and can help control your costs by reducing the number of * geofence evaluations. *

                *
              • *
              *

              * This field is optional. If not specified, the default value is TimeBased. * @see PositionFiltering */ public void setPositionFiltering(String positionFiltering) { this.positionFiltering = positionFiltering; } /** *

              * Specifies the position filtering for the tracker resource. *

              *

              * Valid values: *

              *
                *
              • *

                * TimeBased - Location updates are evaluated against linked geofence collections, but not every * location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 seconds * is stored for each unique device ID. *

                *
              • *
              • *

                * DistanceBased - If the device has moved less than 30 m (98.4 ft), location updates are ignored. * Location updates within this area are neither evaluated against linked geofence collections, nor stored. This * helps control costs by reducing the number of geofence evaluations and historical device positions to paginate * through. Distance-based filtering can also reduce the effects of GPS noise when displaying device trajectories on * a map. *

                *
              • *
              • *

                * AccuracyBased - If the device has moved less than the measured accuracy, location updates are * ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, the * second update is ignored if the device has moved less than 15 m. Ignored location updates are neither evaluated * against linked geofence collections, nor stored. This can reduce the effects of GPS noise when displaying device * trajectories on a map, and can help control your costs by reducing the number of geofence evaluations. *

                *
              • *
              *

              * This field is optional. If not specified, the default value is TimeBased. *

              * * @return Specifies the position filtering for the tracker resource.

              *

              * Valid values: *

              *
                *
              • *

                * TimeBased - Location updates are evaluated against linked geofence collections, but not * every location update is stored. If your update frequency is more often than 30 seconds, only one update * per 30 seconds is stored for each unique device ID. *

                *
              • *
              • *

                * DistanceBased - If the device has moved less than 30 m (98.4 ft), location updates are * ignored. Location updates within this area are neither evaluated against linked geofence collections, nor * stored. This helps control costs by reducing the number of geofence evaluations and historical device * positions to paginate through. Distance-based filtering can also reduce the effects of GPS noise when * displaying device trajectories on a map. *

                *
              • *
              • *

                * AccuracyBased - If the device has moved less than the measured accuracy, location updates * are ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and * 10 m, the second update is ignored if the device has moved less than 15 m. Ignored location updates are * neither evaluated against linked geofence collections, nor stored. This can reduce the effects of GPS * noise when displaying device trajectories on a map, and can help control your costs by reducing the * number of geofence evaluations. *

                *
              • *
              *

              * This field is optional. If not specified, the default value is TimeBased. * @see PositionFiltering */ public String getPositionFiltering() { return this.positionFiltering; } /** *

              * Specifies the position filtering for the tracker resource. *

              *

              * Valid values: *

              *
                *
              • *

                * TimeBased - Location updates are evaluated against linked geofence collections, but not every * location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 seconds * is stored for each unique device ID. *

                *
              • *
              • *

                * DistanceBased - If the device has moved less than 30 m (98.4 ft), location updates are ignored. * Location updates within this area are neither evaluated against linked geofence collections, nor stored. This * helps control costs by reducing the number of geofence evaluations and historical device positions to paginate * through. Distance-based filtering can also reduce the effects of GPS noise when displaying device trajectories on * a map. *

                *
              • *
              • *

                * AccuracyBased - If the device has moved less than the measured accuracy, location updates are * ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, the * second update is ignored if the device has moved less than 15 m. Ignored location updates are neither evaluated * against linked geofence collections, nor stored. This can reduce the effects of GPS noise when displaying device * trajectories on a map, and can help control your costs by reducing the number of geofence evaluations. *

                *
              • *
              *

              * This field is optional. If not specified, the default value is TimeBased. *

              * * @param positionFiltering * Specifies the position filtering for the tracker resource.

              *

              * Valid values: *

              *
                *
              • *

                * TimeBased - Location updates are evaluated against linked geofence collections, but not every * location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 * seconds is stored for each unique device ID. *

                *
              • *
              • *

                * DistanceBased - If the device has moved less than 30 m (98.4 ft), location updates are * ignored. Location updates within this area are neither evaluated against linked geofence collections, nor * stored. This helps control costs by reducing the number of geofence evaluations and historical device * positions to paginate through. Distance-based filtering can also reduce the effects of GPS noise when * displaying device trajectories on a map. *

                *
              • *
              • *

                * AccuracyBased - If the device has moved less than the measured accuracy, location updates are * ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, * the second update is ignored if the device has moved less than 15 m. Ignored location updates are neither * evaluated against linked geofence collections, nor stored. This can reduce the effects of GPS noise when * displaying device trajectories on a map, and can help control your costs by reducing the number of * geofence evaluations. *

                *
              • *
              *

              * This field is optional. If not specified, the default value is TimeBased. * @return Returns a reference to this object so that method calls can be chained together. * @see PositionFiltering */ public CreateTrackerRequest withPositionFiltering(String positionFiltering) { setPositionFiltering(positionFiltering); return this; } /** *

              * Specifies the position filtering for the tracker resource. *

              *

              * Valid values: *

              *
                *
              • *

                * TimeBased - Location updates are evaluated against linked geofence collections, but not every * location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 seconds * is stored for each unique device ID. *

                *
              • *
              • *

                * DistanceBased - If the device has moved less than 30 m (98.4 ft), location updates are ignored. * Location updates within this area are neither evaluated against linked geofence collections, nor stored. This * helps control costs by reducing the number of geofence evaluations and historical device positions to paginate * through. Distance-based filtering can also reduce the effects of GPS noise when displaying device trajectories on * a map. *

                *
              • *
              • *

                * AccuracyBased - If the device has moved less than the measured accuracy, location updates are * ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, the * second update is ignored if the device has moved less than 15 m. Ignored location updates are neither evaluated * against linked geofence collections, nor stored. This can reduce the effects of GPS noise when displaying device * trajectories on a map, and can help control your costs by reducing the number of geofence evaluations. *

                *
              • *
              *

              * This field is optional. If not specified, the default value is TimeBased. *

              * * @param positionFiltering * Specifies the position filtering for the tracker resource.

              *

              * Valid values: *

              *
                *
              • *

                * TimeBased - Location updates are evaluated against linked geofence collections, but not every * location update is stored. If your update frequency is more often than 30 seconds, only one update per 30 * seconds is stored for each unique device ID. *

                *
              • *
              • *

                * DistanceBased - If the device has moved less than 30 m (98.4 ft), location updates are * ignored. Location updates within this area are neither evaluated against linked geofence collections, nor * stored. This helps control costs by reducing the number of geofence evaluations and historical device * positions to paginate through. Distance-based filtering can also reduce the effects of GPS noise when * displaying device trajectories on a map. *

                *
              • *
              • *

                * AccuracyBased - If the device has moved less than the measured accuracy, location updates are * ignored. For example, if two consecutive updates from a device have a horizontal accuracy of 5 m and 10 m, * the second update is ignored if the device has moved less than 15 m. Ignored location updates are neither * evaluated against linked geofence collections, nor stored. This can reduce the effects of GPS noise when * displaying device trajectories on a map, and can help control your costs by reducing the number of * geofence evaluations. *

                *
              • *
              *

              * This field is optional. If not specified, the default value is TimeBased. * @return Returns a reference to this object so that method calls can be chained together. * @see PositionFiltering */ public CreateTrackerRequest withPositionFiltering(PositionFiltering positionFiltering) { this.positionFiltering = positionFiltering.toString(); return this; } /** *

              * Whether to enable position UPDATE events from this tracker to be sent to EventBridge. *

              * *

              * You do not need enable this feature to get ENTER and EXIT events for geofences with * this tracker. Those events are always sent to EventBridge. *

              *
              * * @param eventBridgeEnabled * Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

              * *

              * You do not need enable this feature to get ENTER and EXIT events for geofences * with this tracker. Those events are always sent to EventBridge. *

              */ public void setEventBridgeEnabled(Boolean eventBridgeEnabled) { this.eventBridgeEnabled = eventBridgeEnabled; } /** *

              * Whether to enable position UPDATE events from this tracker to be sent to EventBridge. *

              * *

              * You do not need enable this feature to get ENTER and EXIT events for geofences with * this tracker. Those events are always sent to EventBridge. *

              *
              * * @return Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

              * *

              * You do not need enable this feature to get ENTER and EXIT events for geofences * with this tracker. Those events are always sent to EventBridge. *

              */ public Boolean getEventBridgeEnabled() { return this.eventBridgeEnabled; } /** *

              * Whether to enable position UPDATE events from this tracker to be sent to EventBridge. *

              * *

              * You do not need enable this feature to get ENTER and EXIT events for geofences with * this tracker. Those events are always sent to EventBridge. *

              *
              * * @param eventBridgeEnabled * Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

              * *

              * You do not need enable this feature to get ENTER and EXIT events for geofences * with this tracker. Those events are always sent to EventBridge. *

              * @return Returns a reference to this object so that method calls can be chained together. */ public CreateTrackerRequest withEventBridgeEnabled(Boolean eventBridgeEnabled) { setEventBridgeEnabled(eventBridgeEnabled); return this; } /** *

              * Whether to enable position UPDATE events from this tracker to be sent to EventBridge. *

              * *

              * You do not need enable this feature to get ENTER and EXIT events for geofences with * this tracker. Those events are always sent to EventBridge. *

              *
              * * @return Whether to enable position UPDATE events from this tracker to be sent to EventBridge.

              * *

              * You do not need enable this feature to get ENTER and EXIT events for geofences * with this tracker. Those events are always sent to EventBridge. *

              */ public Boolean isEventBridgeEnabled() { return this.eventBridgeEnabled; } /** *

              * Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer * managed key. *

              *

              * This parameter is only used if you are using a KMS customer managed key. *

              * *

              * If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon Queries * feature will be disabled by default. This is because by using this feature, a representation of your device * positions will not be encrypted using the your KMS managed key. The exact device position, however; is still * encrypted using your managed key. *

              *

              * You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the * KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker. *

              *
              * * @param kmsKeyEnableGeospatialQueries * Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS * customer managed key.

              *

              * This parameter is only used if you are using a KMS customer managed key. *

              * *

              * If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon * Queries feature will be disabled by default. This is because by using this feature, a representation of * your device positions will not be encrypted using the your KMS managed key. The exact device position, * however; is still encrypted using your managed key. *

              *

              * You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the * KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker. *

              */ public void setKmsKeyEnableGeospatialQueries(Boolean kmsKeyEnableGeospatialQueries) { this.kmsKeyEnableGeospatialQueries = kmsKeyEnableGeospatialQueries; } /** *

              * Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer * managed key. *

              *

              * This parameter is only used if you are using a KMS customer managed key. *

              * *

              * If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon Queries * feature will be disabled by default. This is because by using this feature, a representation of your device * positions will not be encrypted using the your KMS managed key. The exact device position, however; is still * encrypted using your managed key. *

              *

              * You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the * KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker. *

              *
              * * @return Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS * customer managed key.

              *

              * This parameter is only used if you are using a KMS customer managed key. *

              * *

              * If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon * Queries feature will be disabled by default. This is because by using this feature, a representation of * your device positions will not be encrypted using the your KMS managed key. The exact device position, * however; is still encrypted using your managed key. *

              *

              * You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the * KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker. *

              */ public Boolean getKmsKeyEnableGeospatialQueries() { return this.kmsKeyEnableGeospatialQueries; } /** *

              * Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer * managed key. *

              *

              * This parameter is only used if you are using a KMS customer managed key. *

              * *

              * If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon Queries * feature will be disabled by default. This is because by using this feature, a representation of your device * positions will not be encrypted using the your KMS managed key. The exact device position, however; is still * encrypted using your managed key. *

              *

              * You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the * KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker. *

              *
              * * @param kmsKeyEnableGeospatialQueries * Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS * customer managed key.

              *

              * This parameter is only used if you are using a KMS customer managed key. *

              * *

              * If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon * Queries feature will be disabled by default. This is because by using this feature, a representation of * your device positions will not be encrypted using the your KMS managed key. The exact device position, * however; is still encrypted using your managed key. *

              *

              * You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the * KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker. *

              * @return Returns a reference to this object so that method calls can be chained together. */ public CreateTrackerRequest withKmsKeyEnableGeospatialQueries(Boolean kmsKeyEnableGeospatialQueries) { setKmsKeyEnableGeospatialQueries(kmsKeyEnableGeospatialQueries); return this; } /** *

              * Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS customer * managed key. *

              *

              * This parameter is only used if you are using a KMS customer managed key. *

              * *

              * If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon Queries * feature will be disabled by default. This is because by using this feature, a representation of your device * positions will not be encrypted using the your KMS managed key. The exact device position, however; is still * encrypted using your managed key. *

              *

              * You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the * KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker. *

              *
              * * @return Enables GeospatialQueries for a tracker that uses a Amazon Web Services KMS * customer managed key.

              *

              * This parameter is only used if you are using a KMS customer managed key. *

              * *

              * If you wish to encrypt your data using your own KMS customer managed key, then the Bounding Polygon * Queries feature will be disabled by default. This is because by using this feature, a representation of * your device positions will not be encrypted using the your KMS managed key. The exact device position, * however; is still encrypted using your managed key. *

              *

              * You can choose to opt-in to the Bounding Polygon Quseries feature. This is done by setting the * KmsKeyEnableGeospatialQueries parameter to true when creating or updating a Tracker. *

              */ public Boolean isKmsKeyEnableGeospatialQueries() { return this.kmsKeyEnableGeospatialQueries; } /** * 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. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getTrackerName() != null) sb.append("TrackerName: ").append(getTrackerName()).append(","); if (getPricingPlan() != null) sb.append("PricingPlan: ").append(getPricingPlan()).append(","); if (getKmsKeyId() != null) sb.append("KmsKeyId: ").append(getKmsKeyId()).append(","); if (getPricingPlanDataSource() != null) sb.append("PricingPlanDataSource: ").append(getPricingPlanDataSource()).append(","); if (getDescription() != null) sb.append("Description: ").append(getDescription()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getPositionFiltering() != null) sb.append("PositionFiltering: ").append(getPositionFiltering()).append(","); if (getEventBridgeEnabled() != null) sb.append("EventBridgeEnabled: ").append(getEventBridgeEnabled()).append(","); if (getKmsKeyEnableGeospatialQueries() != null) sb.append("KmsKeyEnableGeospatialQueries: ").append(getKmsKeyEnableGeospatialQueries()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateTrackerRequest == false) return false; CreateTrackerRequest other = (CreateTrackerRequest) obj; if (other.getTrackerName() == null ^ this.getTrackerName() == null) return false; if (other.getTrackerName() != null && other.getTrackerName().equals(this.getTrackerName()) == false) return false; if (other.getPricingPlan() == null ^ this.getPricingPlan() == null) return false; if (other.getPricingPlan() != null && other.getPricingPlan().equals(this.getPricingPlan()) == false) return false; if (other.getKmsKeyId() == null ^ this.getKmsKeyId() == null) return false; if (other.getKmsKeyId() != null && other.getKmsKeyId().equals(this.getKmsKeyId()) == false) return false; if (other.getPricingPlanDataSource() == null ^ this.getPricingPlanDataSource() == null) return false; if (other.getPricingPlanDataSource() != null && other.getPricingPlanDataSource().equals(this.getPricingPlanDataSource()) == false) return false; if (other.getDescription() == null ^ this.getDescription() == null) return false; if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getPositionFiltering() == null ^ this.getPositionFiltering() == null) return false; if (other.getPositionFiltering() != null && other.getPositionFiltering().equals(this.getPositionFiltering()) == false) return false; if (other.getEventBridgeEnabled() == null ^ this.getEventBridgeEnabled() == null) return false; if (other.getEventBridgeEnabled() != null && other.getEventBridgeEnabled().equals(this.getEventBridgeEnabled()) == false) return false; if (other.getKmsKeyEnableGeospatialQueries() == null ^ this.getKmsKeyEnableGeospatialQueries() == null) return false; if (other.getKmsKeyEnableGeospatialQueries() != null && other.getKmsKeyEnableGeospatialQueries().equals(this.getKmsKeyEnableGeospatialQueries()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getTrackerName() == null) ? 0 : getTrackerName().hashCode()); hashCode = prime * hashCode + ((getPricingPlan() == null) ? 0 : getPricingPlan().hashCode()); hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode()); hashCode = prime * hashCode + ((getPricingPlanDataSource() == null) ? 0 : getPricingPlanDataSource().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getPositionFiltering() == null) ? 0 : getPositionFiltering().hashCode()); hashCode = prime * hashCode + ((getEventBridgeEnabled() == null) ? 0 : getEventBridgeEnabled().hashCode()); hashCode = prime * hashCode + ((getKmsKeyEnableGeospatialQueries() == null) ? 0 : getKmsKeyEnableGeospatialQueries().hashCode()); return hashCode; } @Override public CreateTrackerRequest clone() { return (CreateTrackerRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy