class Aws::KinesisAnalyticsV2::Types::UpdateApplicationRequest

@note When making an API call, you may pass UpdateApplicationRequest

data as a hash:

    {
      application_name: "ApplicationName", # required
      current_application_version_id: 1,
      application_configuration_update: {
        sql_application_configuration_update: {
          input_updates: [
            {
              input_id: "Id", # required
              name_prefix_update: "InAppStreamName",
              input_processing_configuration_update: {
                input_lambda_processor_update: { # required
                  resource_arn_update: "ResourceARN", # required
                },
              },
              kinesis_streams_input_update: {
                resource_arn_update: "ResourceARN", # required
              },
              kinesis_firehose_input_update: {
                resource_arn_update: "ResourceARN", # required
              },
              input_schema_update: {
                record_format_update: {
                  record_format_type: "JSON", # required, accepts JSON, CSV
                  mapping_parameters: {
                    json_mapping_parameters: {
                      record_row_path: "RecordRowPath", # required
                    },
                    csv_mapping_parameters: {
                      record_row_delimiter: "RecordRowDelimiter", # required
                      record_column_delimiter: "RecordColumnDelimiter", # required
                    },
                  },
                },
                record_encoding_update: "RecordEncoding",
                record_column_updates: [
                  {
                    name: "RecordColumnName", # required
                    mapping: "RecordColumnMapping",
                    sql_type: "RecordColumnSqlType", # required
                  },
                ],
              },
              input_parallelism_update: {
                count_update: 1, # required
              },
            },
          ],
          output_updates: [
            {
              output_id: "Id", # required
              name_update: "InAppStreamName",
              kinesis_streams_output_update: {
                resource_arn_update: "ResourceARN", # required
              },
              kinesis_firehose_output_update: {
                resource_arn_update: "ResourceARN", # required
              },
              lambda_output_update: {
                resource_arn_update: "ResourceARN", # required
              },
              destination_schema_update: {
                record_format_type: "JSON", # required, accepts JSON, CSV
              },
            },
          ],
          reference_data_source_updates: [
            {
              reference_id: "Id", # required
              table_name_update: "InAppTableName",
              s3_reference_data_source_update: {
                bucket_arn_update: "BucketARN",
                file_key_update: "FileKey",
              },
              reference_schema_update: {
                record_format: { # required
                  record_format_type: "JSON", # required, accepts JSON, CSV
                  mapping_parameters: {
                    json_mapping_parameters: {
                      record_row_path: "RecordRowPath", # required
                    },
                    csv_mapping_parameters: {
                      record_row_delimiter: "RecordRowDelimiter", # required
                      record_column_delimiter: "RecordColumnDelimiter", # required
                    },
                  },
                },
                record_encoding: "RecordEncoding",
                record_columns: [ # required
                  {
                    name: "RecordColumnName", # required
                    mapping: "RecordColumnMapping",
                    sql_type: "RecordColumnSqlType", # required
                  },
                ],
              },
            },
          ],
        },
        application_code_configuration_update: {
          code_content_type_update: "PLAINTEXT", # accepts PLAINTEXT, ZIPFILE
          code_content_update: {
            text_content_update: "TextContent",
            zip_file_content_update: "data",
            s3_content_location_update: {
              bucket_arn_update: "BucketARN",
              file_key_update: "FileKey",
              object_version_update: "ObjectVersion",
            },
          },
        },
        flink_application_configuration_update: {
          checkpoint_configuration_update: {
            configuration_type_update: "DEFAULT", # accepts DEFAULT, CUSTOM
            checkpointing_enabled_update: false,
            checkpoint_interval_update: 1,
            min_pause_between_checkpoints_update: 1,
          },
          monitoring_configuration_update: {
            configuration_type_update: "DEFAULT", # accepts DEFAULT, CUSTOM
            metrics_level_update: "APPLICATION", # accepts APPLICATION, TASK, OPERATOR, PARALLELISM
            log_level_update: "INFO", # accepts INFO, WARN, ERROR, DEBUG
          },
          parallelism_configuration_update: {
            configuration_type_update: "DEFAULT", # accepts DEFAULT, CUSTOM
            parallelism_update: 1,
            parallelism_per_kpu_update: 1,
            auto_scaling_enabled_update: false,
          },
        },
        environment_property_updates: {
          property_groups: [ # required
            {
              property_group_id: "Id", # required
              property_map: { # required
                "PropertyKey" => "PropertyValue",
              },
            },
          ],
        },
        application_snapshot_configuration_update: {
          snapshots_enabled_update: false, # required
        },
        vpc_configuration_updates: [
          {
            vpc_configuration_id: "Id", # required
            subnet_id_updates: ["SubnetId"],
            security_group_id_updates: ["SecurityGroupId"],
          },
        ],
        zeppelin_application_configuration_update: {
          monitoring_configuration_update: {
            log_level_update: "INFO", # required, accepts INFO, WARN, ERROR, DEBUG
          },
          catalog_configuration_update: {
            glue_data_catalog_configuration_update: { # required
              database_arn_update: "DatabaseARN",
            },
          },
          deploy_as_application_configuration_update: {
            s3_content_location_update: { # required
              bucket_arn_update: "BucketARN", # required
              base_path_update: "BasePath",
            },
          },
          custom_artifacts_configuration_update: [
            {
              artifact_type: "UDF", # required, accepts UDF, DEPENDENCY_JAR
              s3_content_location: {
                bucket_arn: "BucketARN", # required
                file_key: "FileKey", # required
                object_version: "ObjectVersion",
              },
              maven_reference: {
                group_id: "MavenGroupId", # required
                artifact_id: "MavenArtifactId", # required
                version: "MavenVersion", # required
              },
            },
          ],
        },
      },
      service_execution_role_update: "RoleARN",
      run_configuration_update: {
        flink_run_configuration: {
          allow_non_restored_state: false,
        },
        application_restore_configuration: {
          application_restore_type: "SKIP_RESTORE_FROM_SNAPSHOT", # required, accepts SKIP_RESTORE_FROM_SNAPSHOT, RESTORE_FROM_LATEST_SNAPSHOT, RESTORE_FROM_CUSTOM_SNAPSHOT
          snapshot_name: "SnapshotName",
        },
      },
      cloud_watch_logging_option_updates: [
        {
          cloud_watch_logging_option_id: "Id", # required
          log_stream_arn_update: "LogStreamARN",
        },
      ],
      conditional_token: "ConditionalToken",
    }

@!attribute [rw] application_name

The name of the application to update.
@return [String]

@!attribute [rw] current_application_version_id

The current application version ID. You must provide the
`CurrentApplicationVersionId` or the `ConditionalToken`.You can
retrieve the application version ID using DescribeApplication. For
better concurrency support, use the `ConditionalToken` parameter
instead of `CurrentApplicationVersionId`.
@return [Integer]

@!attribute [rw] application_configuration_update

Describes application configuration updates.
@return [Types::ApplicationConfigurationUpdate]

@!attribute [rw] service_execution_role_update

Describes updates to the service execution role.
@return [String]

@!attribute [rw] run_configuration_update

Describes updates to the application's starting parameters.
@return [Types::RunConfigurationUpdate]

@!attribute [rw] cloud_watch_logging_option_updates

Describes application Amazon CloudWatch logging option updates. You
can only update existing CloudWatch logging options with this
action. To add a new CloudWatch logging option, use
AddApplicationCloudWatchLoggingOption.
@return [Array<Types::CloudWatchLoggingOptionUpdate>]

@!attribute [rw] conditional_token

A value you use to implement strong concurrency for application
updates. You must provide the `CurrentApplicationVersionId` or the
`ConditionalToken`. You get the application's current
`ConditionalToken` using DescribeApplication. For better concurrency
support, use the `ConditionalToken` parameter instead of
`CurrentApplicationVersionId`.
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/kinesisanalyticsv2-2018-05-23/UpdateApplicationRequest AWS API Documentation

Constants

SENSITIVE