models

package
v0.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 1, 2024 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AvailableQueueAttributes = map[string]bool{
	"DelaySeconds":                          true,
	"MaximumMessageSize":                    true,
	"MessageRetentionPeriod":                true,
	"Policy":                                true,
	"ReceiveMessageWaitTimeSeconds":         true,
	"VisibilityTimeout":                     true,
	"RedrivePolicy":                         true,
	"RedriveAllowPolicy":                    true,
	"ApproximateNumberOfMessages":           true,
	"ApproximateNumberOfMessagesDelayed":    true,
	"ApproximateNumberOfMessagesNotVisible": true,
	"CreatedTimestamp":                      true,
	"LastModifiedTimestamp":                 true,
	"QueueArn":                              true,
}
View Source
var BaseResponseMetadata = ResponseMetadata{RequestId: "00000000-0000-0000-0000-000000000000"}
View Source
var BaseXmlns = "http://queue.amazonaws.com/doc/2012-11-05/"
View Source
var CurrentEnvironment = Environment{
	Host:      "host",
	Port:      "port",
	Region:    "region",
	AccountID: "accountID",
}

CurrentEnvironment should get overwritten when the app starts up and loads the config. For the sake of generating "partial" apps piece-meal during test automation we'll slap these placeholder values in here so the resource URLs aren't wonky like `http://://new-queue`.

View Source
var DeduplicationPeriod = 5 * time.Minute
View Source
var LogFile string
View Source
var LogMessages bool
View Source
var SnsErrors map[string]SnsErrorType
View Source
var SqsErrors map[string]SqsErrorType
View Source
var SyncQueues = struct {
	sync.RWMutex
	Queues map[string]*Queue
}{Queues: make(map[string]*Queue)}
View Source
var SyncTopics = struct {
	sync.RWMutex
	Topics map[string]*Topic
}{Topics: make(map[string]*Topic)}

Functions

func ResetApp added in v0.5.1

func ResetApp()

---- Unit Tests ----

func ResetResources added in v0.5.1

func ResetResources()

Types

type Attribute

type Attribute struct {
	Name  string `xml:"Name,omitempty"`
	Value string `xml:"Value,omitempty"`
}

** Get Queue QueueAttributes **

type BatchResultErrorEntry

type BatchResultErrorEntry struct {
	Code        string `xml:"Code"`
	Id          string `xml:"Id"`
	Message     string `xml:"Message,omitempty"`
	SenderFault bool   `xml:"SenderFault"`
}

type ChangeMessageVisibilityRequest

type ChangeMessageVisibilityRequest struct {
	QueueUrl          string `json:"QueueUrl" schema:"QueueUrl"`
	ReceiptHandle     string `json:"ReceiptHandle" schema:"ReceiptHandle"`
	VisibilityTimeout int    `json:"VisibilityTimeout" schema:"VisibilityTimeout"`
}

func NewChangeMessageVisibilityRequest

func NewChangeMessageVisibilityRequest() *ChangeMessageVisibilityRequest

func (*ChangeMessageVisibilityRequest) SetAttributesFromForm

func (r *ChangeMessageVisibilityRequest) SetAttributesFromForm(values url.Values)

type ChangeMessageVisibilityResult

type ChangeMessageVisibilityResult struct {
	Xmlns    string           `xml:"xmlns,attr"`
	Metadata ResponseMetadata `xml:"ResponseMetadata"`
}

func (ChangeMessageVisibilityResult) GetRequestId

func (r ChangeMessageVisibilityResult) GetRequestId() string

func (ChangeMessageVisibilityResult) GetResult

func (r ChangeMessageVisibilityResult) GetResult() interface{}

type ConfirmSubscriptionRequest

type ConfirmSubscriptionRequest struct {
	AuthenticateOnUnsubscribe bool   `json:"AuthenticateOnUnsubscribe" schema:"AuthenticateOnUnsubscribe"` // not implemented
	TopicArn                  string `json:"TopicArn" schema:"TopicArn"`
	Token                     string `json:"Token" schema:"Token"`
}

func NewConfirmSubscriptionRequest

func NewConfirmSubscriptionRequest() *ConfirmSubscriptionRequest

func (*ConfirmSubscriptionRequest) SetAttributesFromForm

func (r *ConfirmSubscriptionRequest) SetAttributesFromForm(values url.Values)

type ConfirmSubscriptionResponse

type ConfirmSubscriptionResponse struct {
	Xmlns    string                    `xml:"xmlns,attr"`
	Result   ConfirmSubscriptionResult `xml:"ConfirmSubscriptionResult"`
	Metadata ResponseMetadata          `xml:"ResponseMetadata"`
}

** ConfirmSubscriptionResponse **

func (ConfirmSubscriptionResponse) GetRequestId

func (r ConfirmSubscriptionResponse) GetRequestId() string

func (ConfirmSubscriptionResponse) GetResult

func (r ConfirmSubscriptionResponse) GetResult() interface{}

type ConfirmSubscriptionResult

type ConfirmSubscriptionResult struct {
	SubscriptionArn string `xml:"SubscriptionArn"`
}

type CreateQueueRequest

type CreateQueueRequest struct {
	QueueName  string            `json:"QueueName" schema:"QueueName"`
	Attributes QueueAttributes   `json:"Attributes" schema:"Attribute"`
	Tags       map[string]string `json:"Tags" schema:"Tags"`
	Version    string            `json:"Version" schema:"Version"`
}

func NewCreateQueueRequest

func NewCreateQueueRequest() *CreateQueueRequest

func (*CreateQueueRequest) SetAttributesFromForm

func (r *CreateQueueRequest) SetAttributesFromForm(values url.Values)

TODO - is there an easier way to do this? Similar to the StringToInt type?

type CreateQueueResponse

type CreateQueueResponse struct {
	Xmlns    string            `xml:"xmlns,attr"`
	Result   CreateQueueResult `xml:"CreateQueueResult"`
	Metadata ResponseMetadata  `xml:"ResponseMetadata"`
}

func (CreateQueueResponse) GetRequestId

func (r CreateQueueResponse) GetRequestId() string

func (CreateQueueResponse) GetResult

func (r CreateQueueResponse) GetResult() interface{}

type CreateQueueResult

type CreateQueueResult struct {
	QueueUrl string `json:"QueueUrl" xml:"QueueUrl"`
}

** Create Queue Response

type CreateTopicRequest

type CreateTopicRequest struct {
	Name string `json:"Name" schema:"Name"`

	// Goaws unsupports below properties currently.
	DataProtectionPolicy string            `json:"DataProtectionPolicy" schema:"DataProtectionPolicy"`
	Attributes           TopicAttributes   `json:"Attributes" schema:"Attributes"`
	Tags                 map[string]string `json:"Tags" schema:"Tags"`
}

func NewCreateTopicRequest

func NewCreateTopicRequest() *CreateTopicRequest

---- SNS ----

func (*CreateTopicRequest) SetAttributesFromForm

func (r *CreateTopicRequest) SetAttributesFromForm(values url.Values)

type CreateTopicResponse

type CreateTopicResponse struct {
	Xmlns    string            `xml:"xmlns,attr"`
	Result   CreateTopicResult `xml:"CreateTopicResult"`
	Metadata ResponseMetadata  `xml:"ResponseMetadata"`
}

func (CreateTopicResponse) GetRequestId

func (r CreateTopicResponse) GetRequestId() string

func (CreateTopicResponse) GetResult

func (r CreateTopicResponse) GetResult() interface{}

type CreateTopicResult

type CreateTopicResult struct {
	TopicArn string `xml:"TopicArn"`
}

** Create Topic Response

type DeleteMessageBatchRequest

type DeleteMessageBatchRequest struct {
	Entries  []DeleteMessageBatchRequestEntry `json:"Entries" schema:"Entries"`
	QueueUrl string                           `json:"QueueUrl" schema:"QueueUrl"`
}

func NewDeleteMessageBatchRequest

func NewDeleteMessageBatchRequest() *DeleteMessageBatchRequest

func (*DeleteMessageBatchRequest) SetAttributesFromForm

func (r *DeleteMessageBatchRequest) SetAttributesFromForm(values url.Values)

type DeleteMessageBatchRequestEntry

type DeleteMessageBatchRequestEntry struct {
	Id            string `json:"Id" schema:"Id"`
	ReceiptHandle string `json:"ReceiptHandle" schema:"ReceiptHandle"`
}

type DeleteMessageBatchResponse

type DeleteMessageBatchResponse struct {
	Xmlns    string                   `xml:"xmlns,attr,omitempty"`
	Result   DeleteMessageBatchResult `xml:"DeleteMessageBatchResult"`
	Metadata ResponseMetadata         `xml:"ResponseMetadata,omitempty"`
}

** Delete Message Batch Response

func (DeleteMessageBatchResponse) GetRequestId

func (r DeleteMessageBatchResponse) GetRequestId() string

func (DeleteMessageBatchResponse) GetResult

func (r DeleteMessageBatchResponse) GetResult() interface{}

type DeleteMessageBatchResult

type DeleteMessageBatchResult struct {
	Successful []DeleteMessageBatchResultEntry `xml:"DeleteMessageBatchResultEntry"`
	Failed     []BatchResultErrorEntry         `xml:"BatchResultErrorEntry,omitempty"`
}

type DeleteMessageBatchResultEntry

type DeleteMessageBatchResultEntry struct {
	Id string `xml:"Id"`
}

type DeleteMessageRequest

type DeleteMessageRequest struct {
	QueueUrl      string `json:"QueueUrl" schema:"QueueUrl"`
	ReceiptHandle string `json:"ReceiptHandle" schema:"ReceiptHandle"`
}

func NewDeleteMessageRequest

func NewDeleteMessageRequest() *DeleteMessageRequest

func (*DeleteMessageRequest) SetAttributesFromForm

func (r *DeleteMessageRequest) SetAttributesFromForm(values url.Values)

type DeleteMessageResponse

type DeleteMessageResponse struct {
	Xmlns    string           `xml:"xmlns,attr"`
	Metadata ResponseMetadata `xml:"ResponseMetadata"`
}

** Delete Message Response

func (DeleteMessageResponse) GetRequestId

func (r DeleteMessageResponse) GetRequestId() string

func (DeleteMessageResponse) GetResult

func (r DeleteMessageResponse) GetResult() interface{}

type DeleteQueueRequest

type DeleteQueueRequest struct {
	QueueUrl string `json:"QueueUrl" schema:"QueueUrl"`
}

func NewDeleteQueueRequest

func NewDeleteQueueRequest() *DeleteQueueRequest

func (*DeleteQueueRequest) SetAttributesFromForm

func (r *DeleteQueueRequest) SetAttributesFromForm(values url.Values)

type DeleteQueueResponse

type DeleteQueueResponse struct {
	Xmlns    string           `xml:"xmlns,attr,omitempty"`
	Metadata ResponseMetadata `xml:"ResponseMetadata,omitempty"`
}

** Delete Queue Response

func (DeleteQueueResponse) GetRequestId

func (r DeleteQueueResponse) GetRequestId() string

func (DeleteQueueResponse) GetResult

func (r DeleteQueueResponse) GetResult() interface{}

type DeleteTopicRequest

type DeleteTopicRequest struct {
	TopicArn string `json:"TopicArn" schema:"TopicArn"`
}

func NewDeleteTopicRequest

func NewDeleteTopicRequest() *DeleteTopicRequest

func (*DeleteTopicRequest) SetAttributesFromForm

func (r *DeleteTopicRequest) SetAttributesFromForm(values url.Values)

type DeleteTopicResponse

type DeleteTopicResponse struct {
	Xmlns    string           `xml:"xmlns,attr"`
	Metadata ResponseMetadata `xml:"ResponseMetadata"`
}

** Delete Topic **

func (DeleteTopicResponse) GetRequestId

func (r DeleteTopicResponse) GetRequestId() string

func (DeleteTopicResponse) GetResult

func (r DeleteTopicResponse) GetResult() interface{}

type EnvQueue added in v0.5.1

type EnvQueue struct {
	Name                          string
	ReceiveMessageWaitTimeSeconds int
	RedrivePolicy                 string
	MaximumMessageSize            int
	VisibilityTimeout             int
	MessageRetentionPeriod        int
}

type EnvQueueAttributes added in v0.5.1

type EnvQueueAttributes struct {
	VisibilityTimeout             int
	ReceiveMessageWaitTimeSeconds int
	MaximumMessageSize            int
	MessageRetentionPeriod        int // seconds
}

type EnvSubsciption added in v0.5.1

type EnvSubsciption struct {
	Protocol     string
	EndPoint     string
	TopicArn     string
	QueueName    string
	Raw          bool
	FilterPolicy string
}

** config **

type EnvTopic added in v0.5.1

type EnvTopic struct {
	Name          string
	Subscriptions []EnvSubsciption
}

type Environment added in v0.5.1

type Environment struct {
	Host                   string
	Port                   string
	SqsPort                string
	SnsPort                string
	Region                 string
	AccountID              string
	LogToFile              bool
	LogFile                string
	EnableDuplicates       bool
	Topics                 []EnvTopic
	Queues                 []EnvQueue
	QueueAttributeDefaults EnvQueueAttributes
	RandomLatency          RandomLatency
}

type ErrorResponse

type ErrorResponse struct {
	Result    ErrorResult `xml:"Error"`
	RequestId string      `xml:"RequestId"`
}

func (ErrorResponse) GetRequestId

func (r ErrorResponse) GetRequestId() string

func (ErrorResponse) GetResult

func (r ErrorResponse) GetResult() interface{}

type ErrorResult

type ErrorResult struct {
	Type    string `xml:"Type,omitempty"`
	Code    string `xml:"Code,omitempty"`
	Message string `xml:"Message,omitempty"`
}

** Error Responses **

type FilterPolicy added in v0.5.1

type FilterPolicy map[string][]string

only simple "ExactMatch" string policy is supported at the moment

func (*FilterPolicy) IsSatisfiedBy added in v0.5.1

func (fp *FilterPolicy) IsSatisfiedBy(msgAttrs map[string]MessageAttribute) bool

Function checks if MessageAttributes passed to Topic satisfy FilterPolicy set by subscription

type GetQueueAttributesRequest

type GetQueueAttributesRequest struct {
	QueueUrl       string   `json:"QueueUrl"`
	AttributeNames []string `json:"AttributeNames"`
}

func NewGetQueueAttributesRequest

func NewGetQueueAttributesRequest() *GetQueueAttributesRequest

func (*GetQueueAttributesRequest) SetAttributesFromForm

func (r *GetQueueAttributesRequest) SetAttributesFromForm(values url.Values)

type GetQueueAttributesResponse

type GetQueueAttributesResponse struct {
	Xmlns    string                   `xml:"xmlns,attr,omitempty"`
	Result   GetQueueAttributesResult `xml:"GetQueueAttributesResult"`
	Metadata ResponseMetadata         `xml:"ResponseMetadata,omitempty"`
}

func (GetQueueAttributesResponse) GetRequestId

func (r GetQueueAttributesResponse) GetRequestId() string

func (GetQueueAttributesResponse) GetResult

func (r GetQueueAttributesResponse) GetResult() interface{}

type GetQueueAttributesResult

type GetQueueAttributesResult struct {
	/* VisibilityTimeout, DelaySeconds, ReceiveMessageWaitTimeSeconds, ApproximateNumberOfMessages
	   ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn */
	Attrs []Attribute `xml:"Attribute,omitempty"`
}

type GetQueueUrlRequest

type GetQueueUrlRequest struct {
	QueueName              string `json:"QueueName"`
	QueueOwnerAWSAccountId string `json:"QueueOwnerAWSAccountId"` // NOTE: not implemented
}

func NewGetQueueUrlRequest

func NewGetQueueUrlRequest() *GetQueueUrlRequest

Get Queue Url Request

func (*GetQueueUrlRequest) SetAttributesFromForm

func (r *GetQueueUrlRequest) SetAttributesFromForm(values url.Values)

type GetQueueUrlResponse

type GetQueueUrlResponse struct {
	Xmlns    string            `xml:"xmlns,attr,omitempty"`
	Result   GetQueueUrlResult `xml:"GetQueueUrlResult"`
	Metadata ResponseMetadata  `xml:"ResponseMetadata,omitempty"`
}

func (GetQueueUrlResponse) GetRequestId

func (r GetQueueUrlResponse) GetRequestId() string

func (GetQueueUrlResponse) GetResult

func (r GetQueueUrlResponse) GetResult() interface{}

type GetQueueUrlResult

type GetQueueUrlResult struct {
	QueueUrl string `xml:"QueueUrl,omitempty"`
}

** Get Queue Url Response

type GetSubscriptionAttributes

type GetSubscriptionAttributes struct {
	/* SubscriptionArn, FilterPolicy */
	Entries []SubscriptionAttributeEntry `xml:"entry,omitempty"`
}

type GetSubscriptionAttributesRequest

type GetSubscriptionAttributesRequest struct {
	SubscriptionArn string `json:"SubscriptionArn" schema:"SubscriptionArn"`
}

func NewGetSubscriptionAttributesRequest

func NewGetSubscriptionAttributesRequest() *GetSubscriptionAttributesRequest

Get Subscription Attributes V1

func (*GetSubscriptionAttributesRequest) SetAttributesFromForm

func (r *GetSubscriptionAttributesRequest) SetAttributesFromForm(values url.Values)

type GetSubscriptionAttributesResponse

type GetSubscriptionAttributesResponse struct {
	Xmlns    string                          `xml:"xmlns,attr,omitempty"`
	Result   GetSubscriptionAttributesResult `xml:"GetSubscriptionAttributesResult"`
	Metadata ResponseMetadata                `xml:"ResponseMetadata,omitempty"`
}

func (GetSubscriptionAttributesResponse) GetRequestId

func (r GetSubscriptionAttributesResponse) GetRequestId() string

func (GetSubscriptionAttributesResponse) GetResult

func (r GetSubscriptionAttributesResponse) GetResult() interface{}

type GetSubscriptionAttributesResult

type GetSubscriptionAttributesResult struct {
	Attributes GetSubscriptionAttributes `xml:"Attributes,omitempty"`
}

** Get Subscription Attributes **

type ListQueueRequest

type ListQueueRequest struct {
	MaxResults      int    `json:"MaxResults" schema:"MaxResults"`
	NextToken       string `json:"NextToken" schema:"NextToken"`
	QueueNamePrefix string `json:"QueueNamePrefix" schema:"QueueNamePrefix"`
}

func NewListQueuesRequest

func NewListQueuesRequest() *ListQueueRequest

func (*ListQueueRequest) SetAttributesFromForm

func (r *ListQueueRequest) SetAttributesFromForm(values url.Values)

type ListQueuesResponse

type ListQueuesResponse struct {
	Xmlns    string           `xml:"xmlns,attr"`
	Result   ListQueuesResult `xml:"ListQueuesResult"`
	Metadata ResponseMetadata `xml:"ResponseMetadata"`
}

func (ListQueuesResponse) GetRequestId

func (r ListQueuesResponse) GetRequestId() string

func (ListQueuesResponse) GetResult

func (r ListQueuesResponse) GetResult() interface{}

type ListQueuesResult

type ListQueuesResult struct {
	// NOTE: the old XML sdks depend on QueueUrl, and the new JSON ones need QueueUrls
	QueueUrls []string `json:"QueueUrls" xml:"QueueUrl"`
}

** List Queues Response

type ListSubscriptionsByTopicRequest

type ListSubscriptionsByTopicRequest struct {
	NextToken string `json:"NextToken" schema:"NextToken"` // not implemented
	TopicArn  string `json:"TopicArn" schema:"TopicArn"`
}

func NewListSubscriptionsByTopicRequest

func NewListSubscriptionsByTopicRequest() *ListSubscriptionsByTopicRequest

func (*ListSubscriptionsByTopicRequest) SetAttributesFromForm

func (r *ListSubscriptionsByTopicRequest) SetAttributesFromForm(values url.Values)

type ListSubscriptionsByTopicResponse

type ListSubscriptionsByTopicResponse struct {
	Xmlns    string                         `xml:"xmlns,attr"`
	Result   ListSubscriptionsByTopicResult `xml:"ListSubscriptionsByTopicResult"`
	Metadata ResponseMetadata               `xml:"ResponseMetadata"`
}

func (ListSubscriptionsByTopicResponse) GetRequestId

func (r ListSubscriptionsByTopicResponse) GetRequestId() string

func (ListSubscriptionsByTopicResponse) GetResult

func (r ListSubscriptionsByTopicResponse) GetResult() interface{}

type ListSubscriptionsByTopicResult

type ListSubscriptionsByTopicResult struct {
	NextToken     string             `xml:"NextToken"` // not implemented
	Subscriptions TopicSubscriptions `xml:"Subscriptions"`
}

** List Subscriptions By Topic Response

type ListSubscriptionsRequest

type ListSubscriptionsRequest struct {
	NextToken string `json:"NextToken" schema:"NextToken"` // not implemented
}

func NewListSubscriptionsRequest

func NewListSubscriptionsRequest() *ListSubscriptionsRequest

func (*ListSubscriptionsRequest) SetAttributesFromForm

func (r *ListSubscriptionsRequest) SetAttributesFromForm(values url.Values)

type ListSubscriptionsResponse

type ListSubscriptionsResponse struct {
	Xmlns    string                  `xml:"xmlns,attr"`
	Result   ListSubscriptionsResult `xml:"ListSubscriptionsResult"`
	Metadata ResponseMetadata        `xml:"ResponseMetadata"`
}

func (ListSubscriptionsResponse) GetRequestId

func (r ListSubscriptionsResponse) GetRequestId() string

func (ListSubscriptionsResponse) GetResult

func (r ListSubscriptionsResponse) GetResult() interface{}

type ListSubscriptionsResult

type ListSubscriptionsResult struct {
	Subscriptions TopicSubscriptions `xml:"Subscriptions"`
}

type ListTopicsRequest

type ListTopicsRequest struct {
	NextToken string `json:"NextToken" schema:"NextToken"` // not implemented
}

func NewListTopicsRequest

func NewListTopicsRequest() *ListTopicsRequest

func (*ListTopicsRequest) SetAttributesFromForm

func (r *ListTopicsRequest) SetAttributesFromForm(values url.Values)

type ListTopicsResponse

type ListTopicsResponse struct {
	Xmlns    string           `xml:"xmlns,attr"`
	Result   ListTopicsResult `xml:"ListTopicsResult"`
	Metadata ResponseMetadata `xml:"ResponseMetadata"`
}

func (ListTopicsResponse) GetRequestId

func (r ListTopicsResponse) GetRequestId() string

func (ListTopicsResponse) GetResult

func (r ListTopicsResponse) GetResult() interface{}

type ListTopicsResult

type ListTopicsResult struct {
	Topics TopicNamestype `xml:"Topics"`
}

type MessageAttribute added in v0.5.1

type MessageAttribute struct {
	BinaryListValues []string `json:"BinaryListValues,omitempty" xml:"BinaryListValues,omitempty"` // currently unsupported by AWS
	BinaryValue      []byte   `json:"BinaryValue,omitempty" xml:"BinaryValue,omitempty"`
	DataType         string   `json:"DataType,omitempty" xml:"DataType,omitempty"`
	StringListValues []string `json:"StringListValues,omitempty" xml:"StringListValues,omitempty"` // currently unsupported by AWS
	StringValue      string   `json:"StringValue,omitempty" xml:"StringValue,omitempty"`
}

type MessageStructure added in v0.5.1

type MessageStructure string
const (
	MessageStructureJSON MessageStructure = "json"
)

type Protocol added in v0.5.1

type Protocol string
const (
	ProtocolSQS     Protocol = "sqs"
	ProtocolHTTP    Protocol = "http"
	ProtocolHTTPS   Protocol = "https"
	ProtocolDefault Protocol = "default"
)

type PublishBatchFailed added in v0.5.1

type PublishBatchFailed struct {
	ErrorEntries []BatchResultErrorEntry `xml:"member"`
}

** Publish Batch **

type PublishBatchRequest added in v0.5.1

type PublishBatchRequest struct {
	PublishBatchRequestEntries PublishBatchRequestEntries `json:"PublishBatchRequestEntries" schema:"PublishBatchRequestEntries"`
	TopicArn                   string                     `json:"TopicArn" schema:"TopicArn"`
}

func NewPublishBatchRequest added in v0.5.1

func NewPublishBatchRequest() *PublishBatchRequest

func (*PublishBatchRequest) SetAttributesFromForm added in v0.5.1

func (r *PublishBatchRequest) SetAttributesFromForm(values url.Values)

type PublishBatchRequestEntries added in v0.5.1

type PublishBatchRequestEntries struct {
	Member []*PublishBatchRequestEntry `json:"member" schema:"member"`
}

type PublishBatchRequestEntry added in v0.5.1

type PublishBatchRequestEntry struct {
	ID                     string                      `json:"Id" schema:"Id"`
	Message                string                      `json:"Message" schema:"Message"`
	MessageAttributes      map[string]MessageAttribute `json:"MessageAttributes" schema:"MessageAttributes"`           // Not implemented
	MessageDeduplicationId string                      `json:"MessageDeduplicationId" schema:"MessageDeduplicationId"` // Not implemented
	MessageGroupId         string                      `json:"MessageGroupId" schema:"MessageGroupId"`                 // Not implemented
	MessageStructure       string                      `json:"MessageStructure" schema:"MessageStructure"`
	Subject                string                      `json:"Subject" schema:"Subject"`
}

func (*PublishBatchRequestEntry) GetMessage added in v0.5.1

func (r *PublishBatchRequestEntry) GetMessage() string

Satisfy the AbstractPublishEntry interface

func (*PublishBatchRequestEntry) GetMessageAttributes added in v0.5.1

func (r *PublishBatchRequestEntry) GetMessageAttributes() map[string]MessageAttribute

func (*PublishBatchRequestEntry) GetMessageStructure added in v0.5.1

func (r *PublishBatchRequestEntry) GetMessageStructure() string

func (*PublishBatchRequestEntry) GetSubject added in v0.5.1

func (r *PublishBatchRequestEntry) GetSubject() string

type PublishBatchResponse added in v0.5.1

type PublishBatchResponse struct {
	Xmlns    string             `xml:"xmlns,attr"`
	Result   PublishBatchResult `xml:"PublishBatchResult"`
	Metadata ResponseMetadata   `xml:"ResponseMetadata"`
}

func (PublishBatchResponse) GetRequestId added in v0.5.1

func (r PublishBatchResponse) GetRequestId() string

func (PublishBatchResponse) GetResult added in v0.5.1

func (r PublishBatchResponse) GetResult() interface{}

type PublishBatchResult added in v0.5.1

type PublishBatchResult struct {
	Failed     PublishBatchFailed     `xml:"Failed"`
	Successful PublishBatchSuccessful `xml:"Successful"`
}

type PublishBatchResultEntry added in v0.5.1

type PublishBatchResultEntry struct {
	Id        string `xml:"Id"`
	MessageId string `xml:"MessageId"`
}

type PublishBatchSuccessful added in v0.5.1

type PublishBatchSuccessful struct {
	SuccessEntries []PublishBatchResultEntry `xml:"member"`
}

type PublishRequest

type PublishRequest struct {
	Message                string                      `json:"Message" schema:"Message"`
	MessageAttributes      map[string]MessageAttribute `json:"MessageAttributes" schema:"MessageAttributes"`
	MessageDeduplicationId string                      `json:"MessageDeduplicationId" schema:"MessageDeduplicationId"` // Not implemented
	MessageGroupId         string                      `json:"MessageGroupId" schema:"MessageGroupId"`                 // Not implemented
	MessageStructure       string                      `json:"MessageStructure" schema:"MessageStructure"`
	PhoneNumber            string                      `json:"PhoneNumber" schema:"PhoneNumber"` // Not implemented
	Subject                string                      `json:"Subject" schema:"Subject"`
	TargetArn              string                      `json:"TargetArn" schema:"TargetArn"` // Not implemented
	TopicArn               string                      `json:"TopicArn" schema:"TopicArn"`
}

func NewPublishRequest

func NewPublishRequest() *PublishRequest

func (*PublishRequest) GetMessage added in v0.5.1

func (r *PublishRequest) GetMessage() string

Satisfy the AbstractPublishEntry interface

func (*PublishRequest) GetMessageAttributes added in v0.5.1

func (r *PublishRequest) GetMessageAttributes() map[string]MessageAttribute

func (*PublishRequest) GetMessageStructure added in v0.5.1

func (r *PublishRequest) GetMessageStructure() string

func (*PublishRequest) GetSubject added in v0.5.1

func (r *PublishRequest) GetSubject() string

func (*PublishRequest) SetAttributesFromForm

func (r *PublishRequest) SetAttributesFromForm(values url.Values)

type PublishResponse

type PublishResponse struct {
	Xmlns    string           `xml:"xmlns,attr"`
	Result   PublishResult    `xml:"PublishResult"`
	Metadata ResponseMetadata `xml:"ResponseMetadata"`
}

func (PublishResponse) GetRequestId

func (r PublishResponse) GetRequestId() string

func (PublishResponse) GetResult

func (r PublishResponse) GetResult() interface{}

type PublishResult

type PublishResult struct {
	MessageId string `xml:"MessageId"`
}

** Publish **

type PurgeQueueRequest

type PurgeQueueRequest struct {
	QueueUrl string `json:"QueueUrl" schema:"QueueUrl"`
}

func NewPurgeQueueRequest

func NewPurgeQueueRequest() *PurgeQueueRequest

func (*PurgeQueueRequest) SetAttributesFromForm

func (r *PurgeQueueRequest) SetAttributesFromForm(values url.Values)

type PurgeQueueResponse

type PurgeQueueResponse struct {
	Xmlns    string           `xml:"xmlns,attr,omitempty"`
	Metadata ResponseMetadata `xml:"ResponseMetadata,omitempty"`
}

** Purge Queue Response

func (PurgeQueueResponse) GetRequestId

func (r PurgeQueueResponse) GetRequestId() string

func (PurgeQueueResponse) GetResult

func (r PurgeQueueResponse) GetResult() interface{}

type Queue added in v0.5.1

type Queue struct {
	Name                          string
	URL                           string
	Arn                           string
	VisibilityTimeout             int // seconds
	ReceiveMessageWaitTimeSeconds int
	DelaySeconds                  int
	MaximumMessageSize            int
	MessageRetentionPeriod        int // seconds  // TODO - not used in the code yet
	Messages                      []SqsMessage
	DeadLetterQueue               *Queue
	MaxReceiveCount               int
	IsFIFO                        bool
	FIFOMessages                  map[string]int
	FIFOSequenceNumbers           map[string]int
	EnableDuplicates              bool
	Duplicates                    map[string]time.Time
}

func (*Queue) InitDuplicatation added in v0.5.1

func (q *Queue) InitDuplicatation(deduplicationId string)

func (*Queue) IsDuplicate added in v0.5.1

func (q *Queue) IsDuplicate(deduplicationId string) bool

func (*Queue) IsLocked added in v0.5.1

func (q *Queue) IsLocked(groupId string) bool

func (*Queue) LockGroup added in v0.5.1

func (q *Queue) LockGroup(groupId string)

func (*Queue) NextSequenceNumber added in v0.5.1

func (q *Queue) NextSequenceNumber(groupId string) string

func (*Queue) UnlockGroup added in v0.5.1

func (q *Queue) UnlockGroup(groupId string)

type QueueAttributes

type QueueAttributes struct {
	DelaySeconds                  StringToInt            `json:"DelaySeconds"`
	MaximumMessageSize            StringToInt            `json:"MaximumMessageSize"`
	MessageRetentionPeriod        StringToInt            `json:"MessageRetentionPeriod"` // NOTE: not implemented
	Policy                        map[string]interface{} `json:"Policy"`                 // NOTE: not implemented
	ReceiveMessageWaitTimeSeconds StringToInt            `json:"ReceiveMessageWaitTimeSeconds"`
	VisibilityTimeout             StringToInt            `json:"VisibilityTimeout"`
	// Dead Letter Queues Only
	RedrivePolicy      RedrivePolicy          `json:"RedrivePolicy"`
	RedriveAllowPolicy map[string]interface{} `json:"RedriveAllowPolicy"` // NOTE: not implemented
}

TODO - there are FIFO attributes and things too QueueAttributes - SQS QueueAttributes Available in create/set attributes requests. https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html#SQS-CreateQueue-request-attributes

type RandomLatency added in v0.5.1

type RandomLatency struct {
	Min int
	Max int
}

type ReceiveMessageRequest

type ReceiveMessageRequest struct {
	QueueUrl                    string   `json:"QueueUrl" schema:"QueueUrl"`
	AttributeNames              []string `json:"AttributeNames" schema:"AttributeNames"`
	MessageSystemAttributeNames []string `json:"MessageSystemAttributeNames" schema:"MessageSystemAttributeNames"`
	MessageAttributeNames       []string `json:"MessageAttributeNames" schema:"MessageAttributeNames"`
	MaxNumberOfMessages         int      `json:"MaxNumberOfMessages" schema:"MaxNumberOfMessages"`
	VisibilityTimeout           int      `json:"VisibilityTimeout" schema:"VisibilityTimeout"`
	WaitTimeSeconds             int      `json:"WaitTimeSeconds" schema:"WaitTimeSeconds"`
	ReceiveRequestAttemptId     string   `json:"ReceiveRequestAttemptId" schema:"ReceiveRequestAttemptId"`
}

func NewReceiveMessageRequest

func NewReceiveMessageRequest() *ReceiveMessageRequest

func (*ReceiveMessageRequest) SetAttributesFromForm

func (r *ReceiveMessageRequest) SetAttributesFromForm(values url.Values)

type ReceiveMessageResponse

type ReceiveMessageResponse struct {
	Xmlns    string               `xml:"xmlns,attr"`
	Result   ReceiveMessageResult `xml:"ReceiveMessageResult"`
	Metadata ResponseMetadata     `xml:"ResponseMetadata"`
}

func (ReceiveMessageResponse) GetRequestId

func (r ReceiveMessageResponse) GetRequestId() string

func (ReceiveMessageResponse) GetResult

func (r ReceiveMessageResponse) GetResult() interface{}

type ReceiveMessageResult

type ReceiveMessageResult struct {
	Messages []*ResultMessage `json:"Messages" xml:"Message,omitempty"`
}

** Receive Message Response

type RedrivePolicy

type RedrivePolicy struct {
	MaxReceiveCount     StringToInt `json:"maxReceiveCount"`
	DeadLetterTargetArn string      `json:"deadLetterTargetArn"`
}

func (*RedrivePolicy) UnmarshalJSON

func (r *RedrivePolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON this will convert a JSON string of a Redrive Policy sub-doc (escaped characters and all) or a regular json document into the appropriate resulting struct.

type ResponseMetadata added in v0.5.1

type ResponseMetadata struct {
	RequestId string `xml:"RequestId"`
}

type ResultMessage

type ResultMessage struct {
	MessageId              string                      `xml:"MessageId,omitempty"`
	ReceiptHandle          string                      `xml:"ReceiptHandle,omitempty"`
	MD5OfBody              string                      `xml:"MD5OfBody,omitempty"`
	Body                   string                      `xml:"Body,omitempty"`
	MD5OfMessageAttributes string                      `xml:"MD5OfMessageAttributes,omitempty"`
	MessageAttributes      map[string]MessageAttribute `xml:"MessageAttribute,omitempty,attr"`
	Attributes             map[string]string           `xml:"Attribute,omitempty,attr"`
}

func (*ResultMessage) MarshalXML added in v0.5.1

func (r *ResultMessage) MarshalXML(e *xml.Encoder, start xml.StartElement) error

MarshalXML is a custom marshaler for the ResultMessage struct. We need it because we need to convert the maps into something that can be shown as XML. If we ever get rid of the XML response parsing this can go, and that would be glorious.

type SNSMessage added in v0.5.1

type SNSMessage struct {
	Type              string                      `json:"Type"`
	Token             string                      `json:"Token,omitempty"`
	MessageId         string                      `json:"MessageId"`
	TopicArn          string                      `json:"TopicArn"`
	Subject           string                      `json:"Subject"`
	Message           string                      `json:"Message"`
	Timestamp         string                      `json:"Timestamp"`
	SignatureVersion  string                      `json:"SignatureVersion"`
	Signature         string                      `json:"Signature,omitempty"`
	SigningCertURL    string                      `json:"SigningCertURL"`
	UnsubscribeURL    string                      `json:"UnsubscribeURL"`
	SubscribeURL      string                      `json:"SubscribeURL,omitempty"`
	MessageAttributes map[string]MessageAttribute `json:"MessageAttributes,omitempty"`
}

type SendMessageBatchRequest

type SendMessageBatchRequest struct {
	Entries  []SendMessageBatchRequestEntry
	QueueUrl string
}

func NewSendMessageBatchRequest

func NewSendMessageBatchRequest() *SendMessageBatchRequest

func (*SendMessageBatchRequest) SetAttributesFromForm

func (r *SendMessageBatchRequest) SetAttributesFromForm(values url.Values)

type SendMessageBatchRequestEntry

type SendMessageBatchRequestEntry struct {
	Id                      string                      `json:"Id" schema:"Id"`
	MessageBody             string                      `json:"MessageBody" schema:"MessageBody"`
	DelaySeconds            int                         `json:"DelaySeconds" schema:"DelaySeconds"` // NOTE: not implemented
	MessageAttributes       map[string]MessageAttribute `json:"MessageAttributes" schema:"MessageAttributes"`
	MessageDeduplicationId  string                      `json:"MessageDeduplicationId" schema:"MessageDeduplicationId"`
	MessageGroupId          string                      `json:"MessageGroupId" schema:"MessageGroupId"`
	MessageSystemAttributes map[string]MessageAttribute `json:"MessageSystemAttributes" schema:"MessageSystemAttributes"` // NOTE: not implemented
}

type SendMessageBatchResponse

type SendMessageBatchResponse struct {
	Xmlns    string                 `xml:"xmlns,attr,omitempty"`
	Result   SendMessageBatchResult `xml:"SendMessageBatchResult"`
	Metadata ResponseMetadata       `xml:"ResponseMetadata,omitempty"`
}

** Send Message Batch Response

func (SendMessageBatchResponse) GetRequestId

func (r SendMessageBatchResponse) GetRequestId() string

func (SendMessageBatchResponse) GetResult

func (r SendMessageBatchResponse) GetResult() interface{}

type SendMessageBatchResult

type SendMessageBatchResult struct {
	Entry []SendMessageBatchResultEntry `xml:"SendMessageBatchResultEntry"`
	Error []BatchResultErrorEntry       `xml:"BatchResultErrorEntry,omitempty"`
}

type SendMessageBatchResultEntry

type SendMessageBatchResultEntry struct {
	Id                     string `xml:"Id"`
	MessageId              string `xml:"MessageId"`
	MD5OfMessageBody       string `xml:"MD5OfMessageBody,omitempty"`
	MD5OfMessageAttributes string `xml:"MD5OfMessageAttributes,omitempty"`
	SequenceNumber         string `xml:"SequenceNumber"`
}

type SendMessageRequest

type SendMessageRequest struct {
	DelaySeconds int `json:"DelaySeconds" schema:"DelaySeconds"`
	// MessageAttributes is custom attributes that users can add on the message as they like.
	// Please see: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html#SQS-SendMessage-request-MessageAttributes
	MessageAttributes      map[string]MessageAttribute `json:"MessageAttributes" schema:"MessageAttributes"`
	MessageBody            string                      `json:"MessageBody" schema:"MessageBody"`
	MessageDeduplicationId string                      `json:"MessageDeduplicationId" schema:"MessageDeduplicationId"`
	MessageGroupId         string                      `json:"MessageGroupId" schema:"MessageGroupId"`
	// MessageSystemAttributes is custom attributes for AWS services.
	// Please see: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html#SQS-SendMessage-request-MessageSystemAttributes
	// On AWS, the only supported attribute is "AWSTraceHeader" that is for AWS X-Ray.
	// Goaws does not contains X-Ray emulation, so currently MessageSystemAttributes is unsupported.
	// TODO: Replace with a struct with known attributes "AWSTraceHeader".
	MessageSystemAttributes map[string]MessageAttribute `json:"MessageSystemAttributes" schema:"MessageSystemAttributes"`
	QueueUrl                string                      `json:"QueueUrl" schema:"QueueUrl"`
}

func NewSendMessageRequest

func NewSendMessageRequest() *SendMessageRequest

** Send Message Request

func (*SendMessageRequest) SetAttributesFromForm

func (r *SendMessageRequest) SetAttributesFromForm(values url.Values)

type SendMessageResponse

type SendMessageResponse struct {
	Xmlns    string            `xml:"xmlns,attr"`
	Result   SendMessageResult `xml:"SendMessageResult"`
	Metadata ResponseMetadata  `xml:"ResponseMetadata"`
}

func (SendMessageResponse) GetRequestId

func (r SendMessageResponse) GetRequestId() string

func (SendMessageResponse) GetResult

func (r SendMessageResponse) GetResult() interface{}

type SendMessageResult

type SendMessageResult struct {
	MD5OfMessageAttributes string `xml:"MD5OfMessageAttributes"`
	MD5OfMessageBody       string `xml:"MD5OfMessageBody"`
	MessageId              string `xml:"MessageId"`
	SequenceNumber         string `xml:"SequenceNumber"`
}

** Send Message Response

type SetQueueAttributesRequest

type SetQueueAttributesRequest struct {
	QueueUrl   string          `json:"QueueUrl"`
	Attributes QueueAttributes `json:"Attributes"`
}

func NewSetQueueAttributesRequest

func NewSetQueueAttributesRequest() *SetQueueAttributesRequest

func (*SetQueueAttributesRequest) SetAttributesFromForm

func (r *SetQueueAttributesRequest) SetAttributesFromForm(values url.Values)

type SetQueueAttributesResponse

type SetQueueAttributesResponse struct {
	Xmlns    string           `xml:"xmlns,attr,omitempty"`
	Metadata ResponseMetadata `xml:"ResponseMetadata,omitempty"`
}

func (SetQueueAttributesResponse) GetRequestId

func (r SetQueueAttributesResponse) GetRequestId() string

func (SetQueueAttributesResponse) GetResult

func (r SetQueueAttributesResponse) GetResult() interface{}

type SetSubscriptionAttributesRequest

type SetSubscriptionAttributesRequest struct {
	SubscriptionArn string `json:"SubscriptionArn" schema:"SubscriptionArn"`
	AttributeName   string `json:"AttributeName" schema:"AttributeName"`
	AttributeValue  string `json:"AttributeValue" schema:"AttributeValue"`
}

Ref: https://docs.aws.amazon.com/sns/latest/api/API_SetSubscriptionAttributes.html

func NewSetSubscriptionAttributesRequest

func NewSetSubscriptionAttributesRequest() *SetSubscriptionAttributesRequest

func (*SetSubscriptionAttributesRequest) SetAttributesFromForm

func (r *SetSubscriptionAttributesRequest) SetAttributesFromForm(values url.Values)

type SetSubscriptionAttributesResponse

type SetSubscriptionAttributesResponse struct {
	Xmlns    string           `xml:"xmlns,attr"`
	Metadata ResponseMetadata `xml:"ResponseMetadata"`
}

** Set Subscription Attributes **

func (SetSubscriptionAttributesResponse) GetRequestId

func (r SetSubscriptionAttributesResponse) GetRequestId() string

func (SetSubscriptionAttributesResponse) GetResult

func (r SetSubscriptionAttributesResponse) GetResult() interface{}

type SnsErrorType

type SnsErrorType struct {
	HttpError int
	Type      string
	Code      string
	Message   string
}

func (SnsErrorType) Response

func (s SnsErrorType) Response() ErrorResult

func (SnsErrorType) StatusCode

func (s SnsErrorType) StatusCode() int

type SqsErrorType

type SqsErrorType struct {
	HttpError int
	Type      string
	Code      string
	Message   string
}

func (SqsErrorType) Response

func (s SqsErrorType) Response() ErrorResult

func (SqsErrorType) StatusCode

func (s SqsErrorType) StatusCode() int

type SqsMessage added in v0.5.1

type SqsMessage struct {
	MessageBody            string
	Uuid                   string
	MD5OfMessageAttributes string
	MD5OfMessageBody       string
	ReceiptHandle          string
	ReceiptTime            time.Time
	VisibilityTimeout      time.Time
	NumberOfReceives       int
	Retry                  int
	MessageAttributes      map[string]MessageAttribute
	GroupID                string
	DeduplicationID        string
	SentTime               time.Time
	DelaySecs              int
}

func (*SqsMessage) IsReadyForReceipt added in v0.5.1

func (m *SqsMessage) IsReadyForReceipt() bool

type StringToInt

type StringToInt int

StringToInt this is a custom type that will allow our request bodies to support either a string OR an int. It has its own UnmarshalJSON method to handle both types automatically and it can return an `int` from the `Int` method.

func (*StringToInt) Int

func (s *StringToInt) Int() int

func (*StringToInt) UnmarshalJSON

func (s *StringToInt) UnmarshalJSON(data []byte) error

type SubscribeRequest

type SubscribeRequest struct {
	TopicArn   string                 `json:"TopicArn" schema:"TopicArn"`
	Endpoint   string                 `json:"Endpoint" schema:"Endpoint"`
	Protocol   string                 `json:"Protocol" schema:"Protocol"`
	Attributes SubscriptionAttributes `json:"Attributes"`
}

func NewSubscribeRequest

func NewSubscribeRequest() *SubscribeRequest

func (*SubscribeRequest) SetAttributesFromForm

func (r *SubscribeRequest) SetAttributesFromForm(values url.Values)

type SubscribeResponse

type SubscribeResponse struct {
	Xmlns    string           `xml:"xmlns,attr"`
	Result   SubscribeResult  `xml:"SubscribeResult"`
	Metadata ResponseMetadata `xml:"ResponseMetadata"`
}

func (SubscribeResponse) GetRequestId

func (r SubscribeResponse) GetRequestId() string

func (SubscribeResponse) GetResult

func (r SubscribeResponse) GetResult() interface{}

type SubscribeResult

type SubscribeResult struct {
	SubscriptionArn string `xml:"SubscriptionArn"`
}

** Create Subscription **

type Subscription added in v0.5.1

type Subscription struct {
	TopicArn        string
	Protocol        string
	SubscriptionArn string
	EndPoint        string
	Raw             bool
	FilterPolicy    *FilterPolicy
}

type SubscriptionAttributeEntry

type SubscriptionAttributeEntry struct {
	Key   string `xml:"key,omitempty"`
	Value string `xml:"value,omitempty"`
}

type SubscriptionAttributes

type SubscriptionAttributes struct {
	FilterPolicy       FilterPolicy `json:"FilterPolicy" schema:"FilterPolicy"`
	RawMessageDelivery bool         `json:"RawMessageDelivery" schema:"RawMessageDelivery"`
}

type Topic added in v0.5.1

type Topic struct {
	Name          string
	Arn           string
	Subscriptions []*Subscription
}

type TopicArnResult

type TopicArnResult struct {
	TopicArn  string `xml:"TopicArn"`
	NextToken string `xml:"NextToken"` // not implemented
}

** List Topics **

type TopicAttributes

type TopicAttributes struct {
	DeliveryPolicy            map[string]interface{} `json:"DeliveryPolicy"`            // NOTE: not implemented
	DisplayName               string                 `json:"DisplayName"`               // NOTE: not implemented
	FifoTopic                 bool                   `json:"FifoTopic"`                 // NOTE: not implemented
	Policy                    map[string]interface{} `json:"Policy"`                    // NOTE: not implemented
	SignatureVersion          StringToInt            `json:"SignatureVersion"`          // NOTE: not implemented
	TracingConfig             string                 `json:"TracingConfig"`             // NOTE: not implemented
	KmsMasterKeyId            string                 `json:"KmsMasterKeyId"`            // NOTE: not implemented
	ArchivePolicy             map[string]interface{} `json:"ArchivePolicy"`             // NOTE: not implemented
	BeginningArchiveTime      string                 `json:"BeginningArchiveTime"`      // NOTE: not implemented
	ContentBasedDeduplication bool                   `json:"ContentBasedDeduplication"` // NOTE: not implemented
}

Ref: https://docs.aws.amazon.com/sns/latest/api/API_CreateTopic.html

type TopicMemberResult

type TopicMemberResult struct {
	TopicArn        string `xml:"TopicArn"`
	Protocol        string `xml:"Protocol"`
	SubscriptionArn string `xml:"SubscriptionArn"`
	Owner           string `xml:"Owner"`
	Endpoint        string `xml:"Endpoint"`
}

type TopicNamestype

type TopicNamestype struct {
	Member []TopicArnResult `xml:"member"`
}

type TopicSubscriptions

type TopicSubscriptions struct {
	Member []TopicMemberResult `xml:"member"`
}

type UnsubscribeRequest

type UnsubscribeRequest struct {
	SubscriptionArn string `json:"SubscriptionArn" schema:"SubscriptionArn"`
}

func NewUnsubscribeRequest

func NewUnsubscribeRequest() *UnsubscribeRequest

func (*UnsubscribeRequest) SetAttributesFromForm

func (r *UnsubscribeRequest) SetAttributesFromForm(values url.Values)

type UnsubscribeResponse

type UnsubscribeResponse struct {
	Xmlns    string           `xml:"xmlns,attr"`
	Metadata ResponseMetadata `xml:"ResponseMetadata"`
}

** Delete Subscription **

func (UnsubscribeResponse) GetRequestId

func (r UnsubscribeResponse) GetRequestId() string

func (UnsubscribeResponse) GetResult

func (r UnsubscribeResponse) GetResult() interface{}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL