Class RegisterTypeRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<RegisterTypeRequest.Builder,RegisterTypeRequest>

@Generated("software.amazon.awssdk:codegen") public final class RegisterTypeRequest extends CloudFormationRequest implements ToCopyableBuilder<RegisterTypeRequest.Builder,RegisterTypeRequest>
  • Method Details

    • type

      public final RegistryType type()

      The kind of extension.

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

      Returns:
      The kind of extension.
      See Also:
    • typeAsString

      public final String typeAsString()

      The kind of extension.

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

      Returns:
      The kind of extension.
      See Also:
    • typeName

      public final String typeName()

      The name of the extension being registered.

      We suggest that extension names adhere to the following patterns:

      • For resource types, company_or_organization::service::type.

      • For modules, company_or_organization::service::type::MODULE.

      • For hooks, MyCompany::Testing::MyTestHook.

      The following organization namespaces are reserved and can't be used in your extension names:

      • Alexa

      • AMZN

      • Amazon

      • AWS

      • Custom

      • Dev

      Returns:
      The name of the extension being registered.

      We suggest that extension names adhere to the following patterns:

      • For resource types, company_or_organization::service::type.

      • For modules, company_or_organization::service::type::MODULE.

      • For hooks, MyCompany::Testing::MyTestHook.

      The following organization namespaces are reserved and can't be used in your extension names:

      • Alexa

      • AMZN

      • Amazon

      • AWS

      • Custom

      • Dev

    • schemaHandlerPackage

      public final String schemaHandlerPackage()

      A URL to the S3 bucket containing the extension project package that contains the necessary files for the extension you want to register.

      For information about generating a schema handler package for the extension you want to register, see submit in the CloudFormation CLI User Guide.

      The user registering the extension must be able to access the package in the S3 bucket. That's, the user needs to have GetObject permissions for the schema handler package. For more information, see Actions, Resources, and Condition Keys for Amazon S3 in the Identity and Access Management User Guide.

      Returns:
      A URL to the S3 bucket containing the extension project package that contains the necessary files for the extension you want to register.

      For information about generating a schema handler package for the extension you want to register, see submit in the CloudFormation CLI User Guide.

      The user registering the extension must be able to access the package in the S3 bucket. That's, the user needs to have GetObject permissions for the schema handler package. For more information, see Actions, Resources, and Condition Keys for Amazon S3 in the Identity and Access Management User Guide.

    • loggingConfig

      public final LoggingConfig loggingConfig()

      Specifies logging configuration information for an extension.

      Returns:
      Specifies logging configuration information for an extension.
    • executionRoleArn

      public final String executionRoleArn()

      The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the extension.

      For CloudFormation to assume the specified execution role, the role must contain a trust relationship with the CloudFormation service principal (resources.cloudformation.amazonaws.com). For more information about adding trust relationships, see Modifying a role trust policy in the Identity and Access Management User Guide.

      If your extension calls Amazon Web Services APIs in any of its handlers, you must create an IAM execution role that includes the necessary permissions to call those Amazon Web Services APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.

      Returns:
      The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the extension.

      For CloudFormation to assume the specified execution role, the role must contain a trust relationship with the CloudFormation service principal (resources.cloudformation.amazonaws.com). For more information about adding trust relationships, see Modifying a role trust policy in the Identity and Access Management User Guide.

      If your extension calls Amazon Web Services APIs in any of its handlers, you must create an IAM execution role that includes the necessary permissions to call those Amazon Web Services APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.

    • clientRequestToken

      public final String clientRequestToken()

      A unique identifier that acts as an idempotency key for this registration request. Specifying a client request token prevents CloudFormation from generating more than one version of an extension from the same registration request, even if the request is submitted multiple times.

      Returns:
      A unique identifier that acts as an idempotency key for this registration request. Specifying a client request token prevents CloudFormation from generating more than one version of an extension from the same registration request, even if the request is submitted multiple times.
    • toBuilder

      public RegisterTypeRequest.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<RegisterTypeRequest.Builder,RegisterTypeRequest>
      Specified by:
      toBuilder in class CloudFormationRequest
      Returns:
      a builder for type T
    • builder

      public static RegisterTypeRequest.Builder builder()
    • serializableBuilderClass

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

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

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • 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)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • 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.