cloudformation/Amazon_S3_triggered_import.yaml [244:302]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  PinpointImportNotificationTopic:
    Type: AWS::SNS::Topic
    Properties:
      DisplayName: 'PinpointImportNotifications'
      KmsMasterKeyId: alias/aws/sns


  ImportStateMachine:
    Type: AWS::StepFunctions::StateMachine
    Properties:
      RoleArn: !GetAtt ImportStateMachineRole.Arn
      DefinitionString:
        !Sub
          - |-
            {
              "StartAt": "SendStartNotification",
              "States": {
                "SendStartNotification": {
                  "Type": "Task",
                  "Resource": "arn:aws:states:::sns:publish",
                  "Parameters": {
                    "TopicArn": "${SNSTopicArn}",
                    "Message": {
                      "Message": "Import Started",
                      "Input.$": "$"
                    },
                    "Subject": "Amazon Pinpoint Import Started",
                    "MessageAttributes": {
                        "notification_type": {
                            "DataType": "String",
                            "StringValue": "started"
                        }
                    }
                  },
                  "ResultPath": null,
                  "Next": "ImportSegment"
                },
                "ImportSegment": {
                  "Type": "Task",
                  "Resource": "${ImportSegmentArn}",
                  "Next": "ImportSegmentWait"
                },
                "ImportSegmentWait": {
                  "Type": "Wait",
                  "Seconds": 5,
                  "Next": "ImportSegmentStatus"
                },
                "ImportSegmentStatus": {
                  "Type": "Task",
                  "Resource": "${ImportSegmentStatusArn}",
                  "Next": "IsImportSegmentFinished"
                },
                "IsImportSegmentFinished": {
                  "Type": "Choice",
                  "Default": "ImportSegmentWait",
                  "Choices": [
                    {
                      "Variable": "$.Status",
                      "StringEquals": "FAILED",
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



cloudformation/S3_triggered_import.yaml [713:771]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  PinpointImportNotificationTopic:
    Type: AWS::SNS::Topic
    Properties:
      DisplayName: 'PinpointImportNotifications'
      KmsMasterKeyId: alias/aws/sns


  ImportStateMachine:
    Type: AWS::StepFunctions::StateMachine
    Properties:
      RoleArn: !GetAtt ImportStateMachineRole.Arn
      DefinitionString:
        !Sub
          - |-
            {
              "StartAt": "SendStartNotification",
              "States": {
                "SendStartNotification": {
                  "Type": "Task",
                  "Resource": "arn:aws:states:::sns:publish",
                  "Parameters": {
                    "TopicArn": "${SNSTopicArn}",
                    "Message": {
                      "Message": "Import Started",
                      "Input.$": "$"
                    },
                    "Subject": "Amazon Pinpoint Import Started",
                    "MessageAttributes": {
                      "notification_type": {
                        "DataType": "String",
                        "StringValue": "started"
                      }
                    }
                  },
                  "ResultPath": null,
                  "Next": "ImportSegment"
                },
                "ImportSegment": {
                  "Type": "Task",
                  "Resource": "${ImportSegmentArn}",
                  "Next": "ImportSegmentWait"
                },
                "ImportSegmentWait": {
                  "Type": "Wait",
                  "Seconds": 5,
                  "Next": "ImportSegmentStatus"
                },
                "ImportSegmentStatus": {
                  "Type": "Task",
                  "Resource": "${ImportSegmentStatusArn}",
                  "Next": "IsImportSegmentFinished"
                },
                "IsImportSegmentFinished": {
                  "Type": "Choice",
                  "Default": "ImportSegmentWait",
                  "Choices": [
                    {
                      "Variable": "$.Status",
                      "StringEquals": "FAILED",
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



