/* * Copyright 2010-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.iot.model; import java.io.Serializable; import com.amazonaws.AmazonWebServiceRequest; /** *
* Creates a provisioning template. *
** Requires permission to access the CreateProvisioningTemplate action. *
*/ public class CreateProvisioningTemplateRequest extends AmazonWebServiceRequest implements Serializable { /** ** The name of the provisioning template. *
*
* Constraints:
* Length: 1 - 36
* Pattern: ^[0-9A-Za-z_-]+$
*/
private String templateName;
/**
*
* The description of the provisioning template. *
*
* Constraints:
* Length: 0 - 500
* Pattern: [^\p{C}]*
*/
private String description;
/**
*
* The JSON formatted contents of the provisioning template. *
*
* Constraints:
* Length: 0 - 10240
* Pattern: [\s\S]*
*/
private String templateBody;
/**
*
* True to enable the provisioning template, otherwise false. *
*/ private Boolean enabled; /** ** The role ARN for the role associated with the provisioning template. This * IoT role grants permission to provision a device. *
*
* Constraints:
* Length: 20 - 2048
*/
private String provisioningRoleArn;
/**
*
* Creates a pre-provisioning hook template. Only supports template of type
* FLEET_PROVISIONING
. For more information about provisioning
* template types, see type.
*
* Metadata which can be used to manage the provisioning template. *
** For URI Request parameters use format: ...key1=value1&key2=value2... *
** For the CLI command-line parameter use format: &&tags * "key1=value1&key2=value2..." *
** For the cli-input-json file use format: "tags": * "key1=value1&key2=value2..." *
*
* The type you define in a provisioning template. You can create a template
* with only one type. You can't change the template type after its
* creation. The default value is FLEET_PROVISIONING
. For more
* information about provisioning template, see: Provisioning template.
*
* Constraints:
* Allowed Values: FLEET_PROVISIONING, JITP
*/
private String type;
/**
*
* The name of the provisioning template. *
*
* Constraints:
* Length: 1 - 36
* Pattern: ^[0-9A-Za-z_-]+$
*
* @return
* The name of the provisioning template. *
*/ public String getTemplateName() { return templateName; } /** ** The name of the provisioning template. *
*
* Constraints:
* Length: 1 - 36
* Pattern: ^[0-9A-Za-z_-]+$
*
* @param templateName
* The name of the provisioning template. *
*/ public void setTemplateName(String templateName) { this.templateName = templateName; } /** ** The name of the provisioning template. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 1 - 36
* Pattern: ^[0-9A-Za-z_-]+$
*
* @param templateName
* The name of the provisioning template. *
* @return A reference to this updated object so that method calls can be * chained together. */ public CreateProvisioningTemplateRequest withTemplateName(String templateName) { this.templateName = templateName; return this; } /** ** The description of the provisioning template. *
*
* Constraints:
* Length: 0 - 500
* Pattern: [^\p{C}]*
*
* @return
* The description of the provisioning template. *
*/ public String getDescription() { return description; } /** ** The description of the provisioning template. *
*
* Constraints:
* Length: 0 - 500
* Pattern: [^\p{C}]*
*
* @param description
* The description of the provisioning template. *
*/ public void setDescription(String description) { this.description = description; } /** ** The description of the provisioning template. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 0 - 500
* Pattern: [^\p{C}]*
*
* @param description
* The description of the provisioning template. *
* @return A reference to this updated object so that method calls can be * chained together. */ public CreateProvisioningTemplateRequest withDescription(String description) { this.description = description; return this; } /** ** The JSON formatted contents of the provisioning template. *
*
* Constraints:
* Length: 0 - 10240
* Pattern: [\s\S]*
*
* @return
* The JSON formatted contents of the provisioning template. *
*/ public String getTemplateBody() { return templateBody; } /** ** The JSON formatted contents of the provisioning template. *
*
* Constraints:
* Length: 0 - 10240
* Pattern: [\s\S]*
*
* @param templateBody
* The JSON formatted contents of the provisioning template. *
*/ public void setTemplateBody(String templateBody) { this.templateBody = templateBody; } /** ** The JSON formatted contents of the provisioning template. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 0 - 10240
* Pattern: [\s\S]*
*
* @param templateBody
* The JSON formatted contents of the provisioning template. *
* @return A reference to this updated object so that method calls can be * chained together. */ public CreateProvisioningTemplateRequest withTemplateBody(String templateBody) { this.templateBody = templateBody; return this; } /** ** True to enable the provisioning template, otherwise false. *
* * @return* True to enable the provisioning template, otherwise false. *
*/ public Boolean isEnabled() { return enabled; } /** ** True to enable the provisioning template, otherwise false. *
* * @return* True to enable the provisioning template, otherwise false. *
*/ public Boolean getEnabled() { return enabled; } /** ** True to enable the provisioning template, otherwise false. *
* * @param enabled* True to enable the provisioning template, otherwise false. *
*/ public void setEnabled(Boolean enabled) { this.enabled = enabled; } /** ** True to enable the provisioning template, otherwise false. *
** Returns a reference to this object so that method calls can be chained * together. * * @param enabled
* True to enable the provisioning template, otherwise false. *
* @return A reference to this updated object so that method calls can be * chained together. */ public CreateProvisioningTemplateRequest withEnabled(Boolean enabled) { this.enabled = enabled; return this; } /** ** The role ARN for the role associated with the provisioning template. This * IoT role grants permission to provision a device. *
*
* Constraints:
* Length: 20 - 2048
*
* @return
* The role ARN for the role associated with the provisioning * template. This IoT role grants permission to provision a device. *
*/ public String getProvisioningRoleArn() { return provisioningRoleArn; } /** ** The role ARN for the role associated with the provisioning template. This * IoT role grants permission to provision a device. *
*
* Constraints:
* Length: 20 - 2048
*
* @param provisioningRoleArn
* The role ARN for the role associated with the provisioning * template. This IoT role grants permission to provision a * device. *
*/ public void setProvisioningRoleArn(String provisioningRoleArn) { this.provisioningRoleArn = provisioningRoleArn; } /** ** The role ARN for the role associated with the provisioning template. This * IoT role grants permission to provision a device. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 20 - 2048
*
* @param provisioningRoleArn
* The role ARN for the role associated with the provisioning * template. This IoT role grants permission to provision a * device. *
* @return A reference to this updated object so that method calls can be * chained together. */ public CreateProvisioningTemplateRequest withProvisioningRoleArn(String provisioningRoleArn) { this.provisioningRoleArn = provisioningRoleArn; return this; } /** *
* Creates a pre-provisioning hook template. Only supports template of type
* FLEET_PROVISIONING
. For more information about provisioning
* template types, see type.
*
* Creates a pre-provisioning hook template. Only supports template
* of type FLEET_PROVISIONING
. For more information
* about provisioning template types, see type.
*
* Creates a pre-provisioning hook template. Only supports template of type
* FLEET_PROVISIONING
. For more information about provisioning
* template types, see type.
*
* Creates a pre-provisioning hook template. Only supports
* template of type FLEET_PROVISIONING
. For more
* information about provisioning template types, see type.
*
* Creates a pre-provisioning hook template. Only supports template of type
* FLEET_PROVISIONING
. For more information about provisioning
* template types, see type.
*
* Returns a reference to this object so that method calls can be chained * together. * * @param preProvisioningHook
* Creates a pre-provisioning hook template. Only supports
* template of type FLEET_PROVISIONING
. For more
* information about provisioning template types, see type.
*
* Metadata which can be used to manage the provisioning template. *
** For URI Request parameters use format: ...key1=value1&key2=value2... *
** For the CLI command-line parameter use format: &&tags * "key1=value1&key2=value2..." *
** For the cli-input-json file use format: "tags": * "key1=value1&key2=value2..." *
** Metadata which can be used to manage the provisioning template. *
** For URI Request parameters use format: * ...key1=value1&key2=value2... *
** For the CLI command-line parameter use format: &&tags * "key1=value1&key2=value2..." *
** For the cli-input-json file use format: "tags": * "key1=value1&key2=value2..." *
** Metadata which can be used to manage the provisioning template. *
** For URI Request parameters use format: ...key1=value1&key2=value2... *
** For the CLI command-line parameter use format: &&tags * "key1=value1&key2=value2..." *
** For the cli-input-json file use format: "tags": * "key1=value1&key2=value2..." *
** Metadata which can be used to manage the provisioning * template. *
** For URI Request parameters use format: * ...key1=value1&key2=value2... *
** For the CLI command-line parameter use format: &&tags * "key1=value1&key2=value2..." *
** For the cli-input-json file use format: "tags": * "key1=value1&key2=value2..." *
** Metadata which can be used to manage the provisioning template. *
** For URI Request parameters use format: ...key1=value1&key2=value2... *
** For the CLI command-line parameter use format: &&tags * "key1=value1&key2=value2..." *
** For the cli-input-json file use format: "tags": * "key1=value1&key2=value2..." *
** Returns a reference to this object so that method calls can be chained * together. * * @param tags
* Metadata which can be used to manage the provisioning * template. *
** For URI Request parameters use format: * ...key1=value1&key2=value2... *
** For the CLI command-line parameter use format: &&tags * "key1=value1&key2=value2..." *
** For the cli-input-json file use format: "tags": * "key1=value1&key2=value2..." *
** Metadata which can be used to manage the provisioning template. *
** For URI Request parameters use format: ...key1=value1&key2=value2... *
** For the CLI command-line parameter use format: &&tags * "key1=value1&key2=value2..." *
** For the cli-input-json file use format: "tags": * "key1=value1&key2=value2..." *
** Returns a reference to this object so that method calls can be chained * together. * * @param tags
* Metadata which can be used to manage the provisioning * template. *
** For URI Request parameters use format: * ...key1=value1&key2=value2... *
** For the CLI command-line parameter use format: &&tags * "key1=value1&key2=value2..." *
** For the cli-input-json file use format: "tags": * "key1=value1&key2=value2..." *
*
* The type you define in a provisioning template. You can create a template
* with only one type. You can't change the template type after its
* creation. The default value is FLEET_PROVISIONING
. For more
* information about provisioning template, see: Provisioning template.
*
* Constraints:
* Allowed Values: FLEET_PROVISIONING, JITP
*
* @return
* The type you define in a provisioning template. You can create a
* template with only one type. You can't change the template type
* after its creation. The default value is
* FLEET_PROVISIONING
. For more information about
* provisioning template, see: Provisioning template.
*
* The type you define in a provisioning template. You can create a template
* with only one type. You can't change the template type after its
* creation. The default value is FLEET_PROVISIONING
. For more
* information about provisioning template, see: Provisioning template.
*
* Constraints:
* Allowed Values: FLEET_PROVISIONING, JITP
*
* @param type
* The type you define in a provisioning template. You can create
* a template with only one type. You can't change the template
* type after its creation. The default value is
* FLEET_PROVISIONING
. For more information about
* provisioning template, see: Provisioning template.
*
* The type you define in a provisioning template. You can create a template
* with only one type. You can't change the template type after its
* creation. The default value is FLEET_PROVISIONING
. For more
* information about provisioning template, see: Provisioning template.
*
* Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: FLEET_PROVISIONING, JITP
*
* @param type
* The type you define in a provisioning template. You can create
* a template with only one type. You can't change the template
* type after its creation. The default value is
* FLEET_PROVISIONING
. For more information about
* provisioning template, see: Provisioning template.
*
* The type you define in a provisioning template. You can create a template
* with only one type. You can't change the template type after its
* creation. The default value is FLEET_PROVISIONING
. For more
* information about provisioning template, see: Provisioning template.
*
* Constraints:
* Allowed Values: FLEET_PROVISIONING, JITP
*
* @param type
* The type you define in a provisioning template. You can create
* a template with only one type. You can't change the template
* type after its creation. The default value is
* FLEET_PROVISIONING
. For more information about
* provisioning template, see: Provisioning template.
*
* The type you define in a provisioning template. You can create a template
* with only one type. You can't change the template type after its
* creation. The default value is FLEET_PROVISIONING
. For more
* information about provisioning template, see: Provisioning template.
*
* Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: FLEET_PROVISIONING, JITP
*
* @param type
* The type you define in a provisioning template. You can create
* a template with only one type. You can't change the template
* type after its creation. The default value is
* FLEET_PROVISIONING
. For more information about
* provisioning template, see: Provisioning template.
*