func ExampleLambda_CreateFunction() { svc := lambda.New(nil) params := &lambda.CreateFunctionInput{ Code: &lambda.FunctionCode{ // Required ZipFile: []byte("PAYLOAD"), }, FunctionName: aws.String("FunctionName"), // Required Handler: aws.String("Handler"), // Required Role: aws.String("RoleArn"), // Required Runtime: aws.String("Runtime"), // Required Description: aws.String("Description"), MemorySize: aws.Long(1), Timeout: aws.Long(1), } resp, err := svc.CreateFunction(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func dequeueMessage() ([]Message, error) { req := &sqs.ReceiveMessageInput{ MaxNumberOfMessages: aws.Long(10), QueueURL: aws.String(MessageQueueUrl), WaitTimeSeconds: aws.Long(10), } res, err := SQS().ReceiveMessage(req) if err != nil { return nil, err } messages := make([]Message, len(res.Messages)) var message Message for i, m := range res.Messages { err = json.Unmarshal([]byte(*m.Body), &message) if err != nil { return nil, err } message.MessageID = m.MessageID message.ReceiptHandle = m.ReceiptHandle messages[i] = message } return messages, nil }
func ExampleCloudWatch_PutMetricAlarm() { svc := cloudwatch.New(nil) params := &cloudwatch.PutMetricAlarmInput{ AlarmName: aws.String("AlarmName"), // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required EvaluationPeriods: aws.Long(1), // Required MetricName: aws.String("MetricName"), // Required Namespace: aws.String("Namespace"), // Required Period: aws.Long(1), // Required Statistic: aws.String("Statistic"), // Required Threshold: aws.Double(1.0), // Required ActionsEnabled: aws.Boolean(true), AlarmActions: []*string{ aws.String("ResourceName"), // Required // More values... }, AlarmDescription: aws.String("AlarmDescription"), Dimensions: []*cloudwatch.Dimension{ &cloudwatch.Dimension{ // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, InsufficientDataActions: []*string{ aws.String("ResourceName"), // Required // More values... }, OKActions: []*string{ aws.String("ResourceName"), // Required // More values... }, Unit: aws.String("StandardUnit"), } resp, err := svc.PutMetricAlarm(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ECSServiceCreate(req Request) (string, map[string]string, error) { count, err := strconv.Atoi(req.ResourceProperties["DesiredCount"].(string)) if err != nil { return "", nil, err } r := &ecs.CreateServiceInput{ Cluster: aws.String(req.ResourceProperties["Cluster"].(string)), DesiredCount: aws.Long(int64(count)), ServiceName: aws.String(req.ResourceProperties["Name"].(string) + "-" + generateId("S", 10)), TaskDefinition: aws.String(req.ResourceProperties["TaskDefinition"].(string)), } balancers := req.ResourceProperties["LoadBalancers"].([]interface{}) if len(balancers) > 0 { r.Role = aws.String(req.ResourceProperties["Role"].(string)) } for _, balancer := range balancers { parts := strings.SplitN(balancer.(string), ":", 3) if len(parts) != 3 { return "", nil, fmt.Errorf("invalid load balancer specification: %s", balancer.(string)) } name := parts[0] ps := parts[1] port, _ := strconv.Atoi(parts[2]) r.LoadBalancers = append(r.LoadBalancers, &ecs.LoadBalancer{ LoadBalancerName: aws.String(name), ContainerName: aws.String(ps), ContainerPort: aws.Long(int64(port)), }) break } res, err := ECS(req).CreateService(r) if err != nil { return "", nil, err } return *res.Service.ServiceARN, nil, nil }
func ExampleLambda_CreateEventSourceMapping() { svc := lambda.New(nil) params := &lambda.CreateEventSourceMappingInput{ EventSourceARN: aws.String("Arn"), // Required FunctionName: aws.String("FunctionName"), // Required StartingPosition: aws.String("EventSourcePosition"), // Required BatchSize: aws.Long(1), Enabled: aws.Boolean(true), } resp, err := svc.CreateEventSourceMapping(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ExampleLambda_ListEventSourceMappings() { svc := lambda.New(nil) params := &lambda.ListEventSourceMappingsInput{ EventSourceARN: aws.String("Arn"), FunctionName: aws.String("FunctionName"), Marker: aws.String("String"), MaxItems: aws.Long(1), } resp, err := svc.ListEventSourceMappings(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func (c *Crypt) Encrypt(keyArn string, dec []byte) ([]byte, error) { req := &kms.GenerateDataKeyInput{ KeyID: aws.String(keyArn), NumberOfBytes: aws.Long(KeyLength), } res, err := KMS(c).GenerateDataKey(req) if err != nil { return nil, err } var key [KeyLength]byte copy(key[:], res.Plaintext[0:KeyLength]) rand, err := c.generateNonce() if err != nil { return nil, err } var nonce [NonceLength]byte copy(nonce[:], rand[0:NonceLength]) var enc []byte enc = secretbox.Seal(enc, dec, &nonce, &key) e := &Envelope{ Ciphertext: enc, EncryptedKey: res.CiphertextBlob, Nonce: nonce[:], } return json.Marshal(e) }
func ExampleCloudWatch_DescribeAlarms() { svc := cloudwatch.New(nil) params := &cloudwatch.DescribeAlarmsInput{ ActionPrefix: aws.String("ActionPrefix"), AlarmNamePrefix: aws.String("AlarmNamePrefix"), AlarmNames: []*string{ aws.String("AlarmName"), // Required // More values... }, MaxRecords: aws.Long(1), NextToken: aws.String("NextToken"), StateValue: aws.String("StateValue"), } resp, err := svc.DescribeAlarms(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ExampleCloudWatch_DescribeAlarmHistory() { svc := cloudwatch.New(nil) params := &cloudwatch.DescribeAlarmHistoryInput{ AlarmName: aws.String("AlarmName"), EndDate: aws.Time(time.Now()), HistoryItemType: aws.String("HistoryItemType"), MaxRecords: aws.Long(1), NextToken: aws.String("NextToken"), StartDate: aws.Time(time.Now()), } resp, err := svc.DescribeAlarmHistory(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ExampleKinesis_CreateStream() { svc := kinesis.New(nil) params := &kinesis.CreateStreamInput{ ShardCount: aws.Long(1), // Required StreamName: aws.String("StreamName"), // Required } resp, err := svc.CreateStream(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ExampleKMS_ListKeys() { svc := kms.New(nil) params := &kms.ListKeysInput{ Limit: aws.Long(1), Marker: aws.String("MarkerType"), } resp, err := svc.ListKeys(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ExampleECS_ListTasks() { svc := ecs.New(nil) params := &ecs.ListTasksInput{ Cluster: aws.String("String"), ContainerInstance: aws.String("String"), Family: aws.String("String"), MaxResults: aws.Long(1), NextToken: aws.String("String"), ServiceName: aws.String("String"), StartedBy: aws.String("String"), } resp, err := svc.ListTasks(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ExampleSQS_ChangeMessageVisibilityBatch() { svc := sqs.New(nil) params := &sqs.ChangeMessageVisibilityBatchInput{ Entries: []*sqs.ChangeMessageVisibilityBatchRequestEntry{ // Required &sqs.ChangeMessageVisibilityBatchRequestEntry{ // Required ID: aws.String("String"), // Required ReceiptHandle: aws.String("String"), // Required VisibilityTimeout: aws.Long(1), }, // More values... }, QueueURL: aws.String("String"), // Required } resp, err := svc.ChangeMessageVisibilityBatch(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func BenchmarkCodegenIterator(b *testing.B) { reqNum := 0 db := benchDb() db.Handlers.Unmarshal.PushBack(func(r *aws.Request) { r.Data = benchResps[reqNum] reqNum++ }) input := &dynamodb.ListTablesInput{Limit: aws.Long(2)} iter := func(fn func(*dynamodb.ListTablesOutput, bool) bool) error { page, _ := db.ListTablesRequest(input) for ; page != nil; page = page.NextPage() { page.Send() out := page.Data.(*dynamodb.ListTablesOutput) if result := fn(out, !page.HasNextPage()); page.Error != nil || !result { return page.Error } } return nil } for i := 0; i < b.N; i++ { reqNum = 0 iter(func(p *dynamodb.ListTablesOutput, last bool) bool { return true }) } }
func ExampleECS_UpdateService() { svc := ecs.New(nil) params := &ecs.UpdateServiceInput{ Service: aws.String("String"), // Required Cluster: aws.String("String"), DesiredCount: aws.Long(1), TaskDefinition: aws.String("String"), } resp, err := svc.UpdateService(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ListChanges(app string) (Changes, error) { req := &dynamodb.QueryInput{ KeyConditions: &map[string]*dynamodb.Condition{ "app": &dynamodb.Condition{ AttributeValueList: []*dynamodb.AttributeValue{ &dynamodb.AttributeValue{S: aws.String(app)}, }, ComparisonOperator: aws.String("EQ"), }, }, Limit: aws.Long(10), ScanIndexForward: aws.Boolean(false), TableName: aws.String(changesTable(app)), } res, err := DynamoDB().Query(req) if err != nil { return nil, err } changes := make(Changes, len(res.Items)) for i, item := range res.Items { changes[i] = *changeFromItem(*item) } return changes, nil }
func ExampleECS_RegisterContainerInstance() { svc := ecs.New(nil) params := &ecs.RegisterContainerInstanceInput{ Cluster: aws.String("String"), InstanceIdentityDocument: aws.String("String"), InstanceIdentityDocumentSignature: aws.String("String"), TotalResources: []*ecs.Resource{ &ecs.Resource{ // Required DoubleValue: aws.Double(1.0), IntegerValue: aws.Long(1), LongValue: aws.Long(1), Name: aws.String("String"), StringSetValue: []*string{ aws.String("String"), // Required // More values... }, Type: aws.String("String"), }, // More values... }, VersionInfo: &ecs.VersionInfo{ AgentHash: aws.String("String"), AgentVersion: aws.String("String"), DockerVersion: aws.String("String"), }, } resp, err := svc.RegisterContainerInstance(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func (c *Crypt) generateNonce() ([]byte, error) { res, err := KMS(c).GenerateRandom(&kms.GenerateRandomInput{NumberOfBytes: aws.Long(NonceLength)}) if err != nil { return nil, err } return res.Plaintext, nil }
func ExampleCloudFormation_CreateStack() { svc := cloudformation.New(nil) params := &cloudformation.CreateStackInput{ StackName: aws.String("StackName"), // Required Capabilities: []*string{ aws.String("Capability"), // Required // More values... }, DisableRollback: aws.Boolean(true), NotificationARNs: []*string{ aws.String("NotificationARN"), // Required // More values... }, OnFailure: aws.String("OnFailure"), Parameters: []*cloudformation.Parameter{ &cloudformation.Parameter{ // Required ParameterKey: aws.String("ParameterKey"), ParameterValue: aws.String("ParameterValue"), UsePreviousValue: aws.Boolean(true), }, // More values... }, StackPolicyBody: aws.String("StackPolicyBody"), StackPolicyURL: aws.String("StackPolicyURL"), Tags: []*cloudformation.Tag{ &cloudformation.Tag{ // Required Key: aws.String("TagKey"), Value: aws.String("TagValue"), }, // More values... }, TemplateBody: aws.String("TemplateBody"), TemplateURL: aws.String("TemplateURL"), TimeoutInMinutes: aws.Long(1), } resp, err := svc.CreateStack(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func LambdaFunctionCreate(req Request) (string, error) { bres, err := http.Get(req.ResourceProperties["ZipFile"].(string)) if err != nil { return "", err } defer bres.Body.Close() body, err := ioutil.ReadAll(bres.Body) memory := 128 timeout := 5 if m, ok := req.ResourceProperties["Memory"].(string); ok && m != "" { memory, _ = strconv.Atoi(m) } if t, ok := req.ResourceProperties["Timeout"].(string); ok && t != "" { timeout, _ = strconv.Atoi(t) } role := fmt.Sprintf("arn:aws:iam::%s:role/%s", req.ResourceProperties["AccountId"].(string), req.ResourceProperties["Role"].(string)) res, err := Lambda(req).CreateFunction(&lambda.CreateFunctionInput{ FunctionName: aws.String(req.ResourceProperties["Name"].(string)), Handler: aws.String(req.ResourceProperties["Handler"].(string)), MemorySize: aws.Long(int64(memory)), Timeout: aws.Long(int64(timeout)), Role: aws.String(role), Runtime: aws.String(req.ResourceProperties["Runtime"].(string)), Code: &lambda.FunctionCode{ ZipFile: body, }, }) if err != nil { return "", err } return *res.FunctionARN, nil }
func ClusterTop(rw http.ResponseWriter, r *http.Request) { name := aws.String(os.Getenv("RACK")) res, err := models.CloudFormation().DescribeStacks(&cloudformation.DescribeStacksInput{StackName: name}) if err != nil { RenderError(rw, err) return } if len(res.Stacks) == 0 { RenderError(rw, fmt.Errorf("Stack %s does not exist", os.Getenv("RACK"))) return } stack := res.Stacks[0] outputs := make(map[string]string) for _, output := range stack.Outputs { outputs[*output.OutputKey] = *output.OutputValue } cluster := outputs["Cluster"] params := &cloudwatch.GetMetricStatisticsInput{ MetricName: aws.String(mux.Vars(r)["metric"]), StartTime: aws.Time(time.Now().Add(-2 * time.Minute)), EndTime: aws.Time(time.Now()), Period: aws.Long(60), Namespace: aws.String("AWS/ECS"), Statistics: []*string{ // Required aws.String("Maximum"), aws.String("Average"), aws.String("Minimum"), }, Dimensions: []*cloudwatch.Dimension{ { Name: aws.String("ClusterName"), Value: aws.String(cluster), }, }, } resp, err := models.CloudWatch().GetMetricStatistics(params) if err != nil { RenderError(rw, err) return } RenderJson(rw, resp) }
func ExampleECS_SubmitContainerStateChange() { svc := ecs.New(nil) params := &ecs.SubmitContainerStateChangeInput{ Cluster: aws.String("String"), ContainerName: aws.String("String"), ExitCode: aws.Long(1), NetworkBindings: []*ecs.NetworkBinding{ &ecs.NetworkBinding{ // Required BindIP: aws.String("String"), ContainerPort: aws.Long(1), HostPort: aws.Long(1), }, // More values... }, Reason: aws.String("String"), Status: aws.String("String"), Task: aws.String("String"), } resp, err := svc.SubmitContainerStateChange(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
// Use DynamoDB methods for simplicity func TestPaginationEachPage(t *testing.T) { db := dynamodb.New(nil) tokens, pages, numPages, gotToEnd := []string{}, []string{}, 0, false reqNum := 0 resps := []*dynamodb.ListTablesOutput{ &dynamodb.ListTablesOutput{TableNames: []*string{aws.String("Table1"), aws.String("Table2")}, LastEvaluatedTableName: aws.String("Table2")}, &dynamodb.ListTablesOutput{TableNames: []*string{aws.String("Table3"), aws.String("Table4")}, LastEvaluatedTableName: aws.String("Table4")}, &dynamodb.ListTablesOutput{TableNames: []*string{aws.String("Table5")}}, } db.Handlers.Send.Clear() // mock sending db.Handlers.Unmarshal.Clear() db.Handlers.UnmarshalMeta.Clear() db.Handlers.ValidateResponse.Clear() db.Handlers.Build.PushBack(func(r *aws.Request) { in := r.Params.(*dynamodb.ListTablesInput) if in == nil { tokens = append(tokens, "") } else if in.ExclusiveStartTableName != nil { tokens = append(tokens, *in.ExclusiveStartTableName) } }) db.Handlers.Unmarshal.PushBack(func(r *aws.Request) { r.Data = resps[reqNum] reqNum++ }) params := &dynamodb.ListTablesInput{Limit: aws.Long(2)} req, _ := db.ListTablesRequest(params) err := req.EachPage(func(p *dynamodb.ListTablesOutput, last bool) bool { numPages++ for _, t := range p.TableNames { pages = append(pages, *t) } if last { if gotToEnd { assert.Fail(t, "last=true happened twice") } gotToEnd = true } return true }) assert.Equal(t, []string{"Table2", "Table4"}, tokens) assert.Equal(t, []string{"Table1", "Table2", "Table3", "Table4", "Table5"}, pages) assert.Equal(t, 3, numPages) assert.True(t, gotToEnd) assert.Nil(t, err) }
func ExampleSQS_SendMessageBatch() { svc := sqs.New(nil) params := &sqs.SendMessageBatchInput{ Entries: []*sqs.SendMessageBatchRequestEntry{ // Required &sqs.SendMessageBatchRequestEntry{ // Required ID: aws.String("String"), // Required MessageBody: aws.String("String"), // Required DelaySeconds: aws.Long(1), MessageAttributes: &map[string]*sqs.MessageAttributeValue{ "Key": &sqs.MessageAttributeValue{ // Required DataType: aws.String("String"), // Required BinaryListValues: [][]byte{ []byte("PAYLOAD"), // Required // More values... }, BinaryValue: []byte("PAYLOAD"), StringListValues: []*string{ aws.String("String"), // Required // More values... }, StringValue: aws.String("String"), }, // More values... }, }, // More values... }, QueueURL: aws.String("String"), // Required } resp, err := svc.SendMessageBatch(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ExampleSQS_ReceiveMessage() { svc := sqs.New(nil) params := &sqs.ReceiveMessageInput{ QueueURL: aws.String("String"), // Required AttributeNames: []*string{ aws.String("QueueAttributeName"), // Required // More values... }, MaxNumberOfMessages: aws.Long(1), MessageAttributeNames: []*string{ aws.String("MessageAttributeName"), // Required // More values... }, VisibilityTimeout: aws.Long(1), WaitTimeSeconds: aws.Long(1), } resp, err := svc.ReceiveMessage(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func s3Put(bucket, key string, data []byte, public bool) error { req := &s3.PutObjectInput{ Body: bytes.NewReader(data), Bucket: aws.String(bucket), ContentLength: aws.Long(int64(len(data))), Key: aws.String(key), } if public { req.ACL = aws.String("public-read") } _, err := S3().PutObject(req) return err }
func BenchmarkEachPageIterator(b *testing.B) { reqNum := 0 db := benchDb() db.Handlers.Unmarshal.PushBack(func(r *aws.Request) { r.Data = benchResps[reqNum] reqNum++ }) input := &dynamodb.ListTablesInput{Limit: aws.Long(2)} for i := 0; i < b.N; i++ { reqNum = 0 req, _ := db.ListTablesRequest(input) req.EachPage(func(p *dynamodb.ListTablesOutput, last bool) bool { return true }) } }
func ExampleCloudWatch_GetMetricStatistics() { svc := cloudwatch.New(nil) params := &cloudwatch.GetMetricStatisticsInput{ EndTime: aws.Time(time.Now()), // Required MetricName: aws.String("MetricName"), // Required Namespace: aws.String("Namespace"), // Required Period: aws.Long(1), // Required StartTime: aws.Time(time.Now()), // Required Statistics: []*string{ // Required aws.String("Statistic"), // Required // More values... }, Dimensions: []*cloudwatch.Dimension{ &cloudwatch.Dimension{ // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, Unit: aws.String("StandardUnit"), } resp, err := svc.GetMetricStatistics(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }
func ECSServiceUpdate(req Request) (string, map[string]string, error) { count, _ := strconv.Atoi(req.ResourceProperties["DesiredCount"].(string)) // arn:aws:ecs:us-east-1:922560784203:service/sinatra-SZXTRXEMYEY parts := strings.Split(req.PhysicalResourceId, "/") name := parts[1] res, err := ECS(req).UpdateService(&ecs.UpdateServiceInput{ Cluster: aws.String(req.ResourceProperties["Cluster"].(string)), Service: aws.String(name), DesiredCount: aws.Long(int64(count)), TaskDefinition: aws.String(req.ResourceProperties["TaskDefinition"].(string)), }) if err != nil { return "", nil, err } return *res.Service.ServiceARN, nil, nil }
func ExampleECS_RunTask() { svc := ecs.New(nil) params := &ecs.RunTaskInput{ TaskDefinition: aws.String("String"), // Required Cluster: aws.String("String"), Count: aws.Long(1), Overrides: &ecs.TaskOverride{ ContainerOverrides: []*ecs.ContainerOverride{ &ecs.ContainerOverride{ // Required Command: []*string{ aws.String("String"), // Required // More values... }, Name: aws.String("String"), }, // More values... }, }, StartedBy: aws.String("String"), } resp, err := svc.RunTask(params) if err != nil { if awsErr, ok := err.(awserr.Error); ok { // Generic AWS Error with Code, Message, and original error (if any) fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr()) if reqErr, ok := err.(awserr.RequestFailure); ok { // A service error occurred fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID()) } } else { // This case should never be hit, The SDK should alwsy return an // error which satisfies the awserr.Error interface. fmt.Println(err.Error()) } } // Pretty-print the response data. fmt.Println(awsutil.StringValue(resp)) }