atom

package
v1.7.0 Latest Latest
Warning

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

Go to latest
Published: Apr 2, 2024 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrFeedEmpty = errors.New("entity does not exist")

Functions

func CloseRes added in v0.2.0

func CloseRes(ctx context.Context, res *http.Response)

CloseRes closes the response (or if it's nil just no-ops)

func FormatManagementError added in v0.2.0

func FormatManagementError(body []byte, origErr error) error

func StringToTime added in v0.3.2

func StringToTime(timeStr string) (time.Time, error)

Types

type ActionDescription added in v0.2.0

type ActionDescription struct {
	Type          string        `xml:"http://www.w3.org/2001/XMLSchema-instance type,attr"`
	SQLExpression string        `xml:"SqlExpression,omitempty"`
	Parameters    *KeyValueList `xml:"Parameters,omitempty"`

	// RawXML is any XML that wasn't covered by our known properties.
	RawXML []byte `xml:",innerxml"`

	// RawAttrs are attributes for the raw XML element that wasn't covered by our known properties.
	RawAttrs []xml.Attr `xml:",any,attr"`
}

ActionDescription describes an action upon a message that matches a filter

With SQL filter conditions, you can define an action that can annotate the message by adding, removing, or replacing properties and their values. The action uses a SQL-like expression that loosely leans on the SQL UPDATE statement syntax. The action is performed on the message after it has been matched and before the message is selected into the subscription. The changes to the message properties are private to the message copied into the subscription.

type Author

type Author struct {
	XMLName xml.Name `xml:"author"`
	Name    *string  `xml:"name,omitempty"`
}

Author is an Atom author used in an entry

type AuthorizationRule added in v0.4.1

type AuthorizationRule struct {
	// Type is the type attribute, which indicates the type of AuthorizationRule
	// (today this is only `SharedAccessAuthorizationRule`)
	Type string `xml:"http://www.w3.org/2001/XMLSchema-instance type,attr"`

	ClaimType  string `xml:"ClaimType"`
	ClaimValue string `xml:"ClaimValue"`

	// SharedAccessAuthorizationRule properties
	Rights       []string   `xml:"Rights>AccessRights"`
	KeyName      *string    `xml:"KeyName"`
	CreatedTime  *time.Time `xml:"CreatedTime"`
	ModifiedTime *time.Time `xml:"ModifiedTime"`

	PrimaryKey   *string `xml:"PrimaryKey"`
	SecondaryKey *string `xml:"SecondaryKey"`
}

All

type BaseEntityDescription added in v0.2.0

type BaseEntityDescription struct {
	InstanceMetadataSchema *string `xml:"xmlns:i,attr,omitempty"`
	ServiceBusSchema       *string `xml:"xmlns,attr,omitempty"`
}

BaseEntityDescription provides common fields which are part of Queues, Topics and Subscriptions

type Content

type Content struct {
	XMLName xml.Name `xml:"content"`
	Type    string   `xml:"type,attr"`
	Body    string   `xml:",innerxml"`
}

Content is a generic body for an Atom entry

type CorrelationFilter added in v0.2.0

type CorrelationFilter struct {
	CorrelationID    *string       `xml:"CorrelationId,omitempty"`
	MessageID        *string       `xml:"MessageId,omitempty"`
	To               *string       `xml:"To,omitempty"`
	ReplyTo          *string       `xml:"ReplyTo,omitempty"`
	Label            *string       `xml:"Label,omitempty"`
	SessionID        *string       `xml:"SessionId,omitempty"`
	ReplyToSessionID *string       `xml:"ReplyToSessionId,omitempty"`
	ContentType      *string       `xml:"ContentType,omitempty"`
	Properties       *KeyValueList `xml:"Properties,omitempty"`
}

CorrelationFilter holds a set of conditions that are matched against one or more of an arriving message's user and system properties. A common use is to match against the CorrelationId property, but the application can also choose to match against ContentType, Label, MessageId, ReplyTo, ReplyToSessionId, SessionId, To, and any user-defined properties. A match exists when an arriving message's value for a property is equal to the value specified in the correlation filter. For string expressions, the comparison is case-sensitive. When specifying multiple match properties, the filter combines them as a logical AND condition, meaning for the filter to match, all conditions must match.

type CountDetails added in v0.2.0

type CountDetails struct {
	XMLName                        xml.Name `xml:"CountDetails"`
	ActiveMessageCount             *int32   `xml:"ActiveMessageCount,omitempty"`
	DeadLetterMessageCount         *int32   `xml:"DeadLetterMessageCount,omitempty"`
	ScheduledMessageCount          *int32   `xml:"ScheduledMessageCount,omitempty"`
	TransferDeadLetterMessageCount *int32   `xml:"TransferDeadLetterMessageCount,omitempty"`
	TransferMessageCount           *int32   `xml:"TransferMessageCount,omitempty"`
}

CountDetails has current active (and other) messages for queue/topic.

type DefaultRuleDescription added in v0.2.0

type DefaultRuleDescription struct {
	XMLName xml.Name           `xml:"DefaultRuleDescription"`
	Filter  *FilterDescription `xml:"Filter"`
	Action  *ActionDescription `xml:"Action,omitempty"`
	Name    string             `xml:"Name,omitempty"`
}

DefaultRuleDescription is the content type for Subscription Rule management requests

type Entity added in v0.2.0

type Entity struct {
	Name string
	ID   string
}

Entity is represents the most basic form of an Azure Service Bus entity.

type EntityManager added in v0.2.0

type EntityManager interface {
	Get(ctx context.Context, entityPath string, respObj any) (*http.Response, error)
	Put(ctx context.Context, entityPath string, body any, respObj any, options *ExecuteOptions) (*http.Response, error)
	Delete(ctx context.Context, entityPath string) (*http.Response, error)
	TokenProvider() auth.TokenProvider
}

func NewEntityManager added in v0.2.0

func NewEntityManager(ns string, tokenCredential azcore.TokenCredential, version string, options *azcore.ClientOptions) (EntityManager, error)

NewEntityManager creates an entity manager using a TokenCredential.

func NewEntityManagerWithConnectionString added in v0.2.0

func NewEntityManagerWithConnectionString(connectionString string, version string, options *azcore.ClientOptions) (EntityManager, error)

NewEntityManagerWithConnectionString creates an entity manager (a lower level HTTP client for the ATOM endpoint). This is typically wrapped by an entity specific client (like TopicManager, QueueManager or , SubscriptionManager).

type EntityStatus added in v0.2.0

type EntityStatus string

EntityStatus enumerates the values for entity status.

const (
	// Active ...
	Active EntityStatus = "Active"
	// Creating ...
	Creating EntityStatus = "Creating"
	// Deleting ...
	Deleting EntityStatus = "Deleting"
	// Disabled ...
	Disabled EntityStatus = "Disabled"
	// ReceiveDisabled ...
	ReceiveDisabled EntityStatus = "ReceiveDisabled"
	// Renaming ...
	Renaming EntityStatus = "Renaming"
	// Restoring ...
	Restoring EntityStatus = "Restoring"
	// SendDisabled ...
	SendDisabled EntityStatus = "SendDisabled"
	// Unknown ...
	Unknown EntityStatus = "Unknown"
)

type Entry

type Entry struct {
	XMLName                   xml.Name `xml:"entry"`
	ID                        string   `xml:"id,omitempty"`
	Title                     string   `xml:"title,omitempty"`
	Author                    *Author  `xml:"author,omitempty"`
	Link                      *Link    `xml:"link,omitempty"`
	Content                   *Content `xml:"content"`
	DataServiceSchema         string   `xml:"xmlns:d,attr,omitempty"`
	DataServiceMetadataSchema string   `xml:"xmlns:m,attr,omitempty"`
	AtomSchema                string   `xml:"xmlns,attr"`
}

Entry is the Atom wrapper for a management request

type ExecuteOptions added in v0.4.1

type ExecuteOptions struct {
	ForwardTo           *string
	ForwardToDeadLetter *string
}

type Feed

type Feed struct {
	XMLName xml.Name `xml:"feed"`
	ID      string   `xml:"id"`
	Title   string   `xml:"title"`
	Entries []Entry  `xml:"entry"`
}

Feed is an Atom feed which contains entries

type FilterDescription added in v0.2.0

type FilterDescription struct {
	XMLName xml.Name `xml:"Filter"`

	// RawXML is any XML that wasn't covered by our known properties.
	RawXML []byte `xml:",innerxml"`

	// RawAttrs are attributes for the raw XML element that wasn't covered by our known properties.
	RawAttrs []xml.Attr `xml:",any,attr"`

	CorrelationFilter
	Type               string  `xml:"http://www.w3.org/2001/XMLSchema-instance type,attr"`
	SQLExpression      *string `xml:"SqlExpression,omitempty"`
	CompatibilityLevel int     `xml:"CompatibilityLevel,omitempty"`

	Parameters *KeyValueList `xml:"Parameters,omitempty"`
}

FilterDescription describes a filter which can be applied to a subscription to filter messages from the topic.

Subscribers can define which messages they want to receive from a topic. These messages are specified in the form of one or more named subscription rules. Each rule consists of a condition that selects particular messages and an action that annotates the selected message. For each matching rule condition, the subscription produces a copy of the message, which may be differently annotated for each matching rule.

Each newly created topic subscription has an initial default subscription rule. If you don't explicitly specify a filter condition for the rule, the applied filter is the true filter that enables all messages to be selected into the subscription. The default rule has no associated annotation action.

type KeyValueList added in v0.4.1

type KeyValueList struct {
	KeyValues []KeyValueOfstringanyType `xml:"KeyValueOfstringanyType,omitempty"`
}

Filters

type KeyValueOfstringanyType added in v0.4.1

type KeyValueOfstringanyType struct {
	Key   string `xml:"Key"`
	Value Value  `xml:"Value"`
}

Subscriptions (and rules)

type Link struct {
	XMLName xml.Name `xml:"link"`
	Rel     string   `xml:"rel,attr"`
	HREF    string   `xml:"href,attr"`
}

Link is an Atom link used in an entry

type ManagementError added in v0.3.4

type ManagementError struct {
	XMLName xml.Name `xml:"Error"`
	Code    int      `xml:"Code"`
	Detail  string   `xml:"Detail"`
}

example: <Error><Code>401</Code><Detail>Manage,EntityRead claims required for this operation.</Detail></Error>

func (*ManagementError) String added in v0.3.4

func (m *ManagementError) String() string

type NamespaceEntry added in v0.3.0

type NamespaceEntry struct {
	NamespaceInfo *NamespaceInfo `xml:"content>NamespaceInfo"`
}

type NamespaceInfo added in v0.3.0

type NamespaceInfo struct {
	CreatedTime    string `xml:"CreatedTime"`
	MessagingSKU   string `xml:"MessagingSKU"`
	MessagingUnits *int64 `xml:"MessagingUnits"`
	ModifiedTime   string `xml:"ModifiedTime"`
	Name           string `xml:"Name"`
}

type QueueContent added in v1.0.1

type QueueContent struct {
	XMLName          xml.Name         `xml:"content"`
	Type             string           `xml:"type,attr"`
	QueueDescription QueueDescription `xml:"QueueDescription"`
}

QueueContent is a specialized Queue body for an Atom entry

type QueueDescription added in v0.2.0

type QueueDescription struct {
	XMLName xml.Name `xml:"QueueDescription"`
	BaseEntityDescription
	LockDuration                        *string             `xml:"LockDuration,omitempty"`               // LockDuration - ISO 8601 timespan duration of a peek-lock; that is, the amount of time that the message is locked for other receivers. The maximum value for LockDuration is 5 minutes; the default value is 1 minute.
	MaxSizeInMegabytes                  *int32              `xml:"MaxSizeInMegabytes,omitempty"`         // MaxSizeInMegabytes - The maximum size of the queue in megabytes, which is the size of memory allocated for the queue. Default is 1024.
	RequiresDuplicateDetection          *bool               `xml:"RequiresDuplicateDetection,omitempty"` // RequiresDuplicateDetection - A value indicating if this queue requires duplicate detection.
	RequiresSession                     *bool               `xml:"RequiresSession,omitempty"`
	DefaultMessageTimeToLive            *string             `xml:"DefaultMessageTimeToLive,omitempty"`            // DefaultMessageTimeToLive - ISO 8601 default message timespan to live value. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.
	DeadLetteringOnMessageExpiration    *bool               `xml:"DeadLetteringOnMessageExpiration,omitempty"`    // DeadLetteringOnMessageExpiration - A value that indicates whether this queue has dead letter support when a message expires.
	DuplicateDetectionHistoryTimeWindow *string             `xml:"DuplicateDetectionHistoryTimeWindow,omitempty"` // DuplicateDetectionHistoryTimeWindow - ISO 8601 timeSpan structure that defines the duration of the duplicate detection history. The default value is 10 minutes.
	MaxDeliveryCount                    *int32              `xml:"MaxDeliveryCount,omitempty"`                    // MaxDeliveryCount - The maximum delivery count. A message is automatically deadlettered after this number of deliveries. default value is 10.
	EnableBatchedOperations             *bool               `xml:"EnableBatchedOperations,omitempty"`             // EnableBatchedOperations - Value that indicates whether server-side batched operations are enabled.
	SizeInBytes                         *int64              `xml:"SizeInBytes,omitempty"`                         // SizeInBytes - The size of the queue, in bytes.
	MessageCount                        *int64              `xml:"MessageCount,omitempty"`                        // MessageCount - The number of messages in the queue.
	IsAnonymousAccessible               *bool               `xml:"IsAnonymousAccessible,omitempty"`
	AuthorizationRules                  []AuthorizationRule `xml:"AuthorizationRules>AuthorizationRule,omitempty"`
	Status                              *EntityStatus       `xml:"Status,omitempty"`
	AccessedAt                          string              `xml:"AccessedAt,omitempty"`
	CreatedAt                           string              `xml:"CreatedAt,omitempty"`
	UpdatedAt                           string              `xml:"UpdatedAt,omitempty"`
	SupportOrdering                     *bool               `xml:"SupportOrdering,omitempty"`
	AutoDeleteOnIdle                    *string             `xml:"AutoDeleteOnIdle,omitempty"`
	EnablePartitioning                  *bool               `xml:"EnablePartitioning,omitempty"`
	EnableExpress                       *bool               `xml:"EnableExpress,omitempty"`
	CountDetails                        *CountDetails       `xml:"CountDetails,omitempty"`
	ForwardTo                           *string             `xml:"ForwardTo,omitempty"`
	ForwardDeadLetteredMessagesTo       *string             `xml:"ForwardDeadLetteredMessagesTo,omitempty"` // ForwardDeadLetteredMessagesTo - absolute URI of the entity to forward dead letter messages
	UserMetadata                        *string             `xml:"UserMetadata,omitempty"`
	MaxMessageSizeInKilobytes           *int64              `xml:"MaxMessageSizeInKilobytes,omitempty"`
}

QueueDescription is the content type for Queue management requests

type QueueEntity added in v0.2.0

type QueueEntity struct {
	*QueueDescription
	*Entity
}

QueueEntity is the Azure Service Bus description of a Queue for management activities

type QueueEnvelope added in v0.2.0

type QueueEnvelope struct {
	*Entry
	Content *QueueContent `xml:"content"`
}

QueueEnvelope is a specialized Queue feed entry

func WrapWithQueueEnvelope added in v0.3.0

func WrapWithQueueEnvelope(qd *QueueDescription, tokenProvider auth.TokenProvider) *QueueEnvelope

type QueueFeed added in v0.2.0

type QueueFeed struct {
	*Feed
	Entries []QueueEnvelope `xml:"entry"`
}

QueueFeed is a specialized feed containing QueueEntries

func (QueueFeed) Items added in v0.4.0

func (qf QueueFeed) Items() []QueueEnvelope

type RuleContent added in v0.4.1

type RuleContent struct {
	XMLName         xml.Name        `xml:"content"`
	Type            string          `xml:"type,attr"`
	RuleDescription RuleDescription `xml:"RuleDescription"`
}

RuleContent is a specialized Subscription body for an Atom entry

type RuleDescription added in v0.2.0

type RuleDescription struct {
	XMLName xml.Name `xml:"RuleDescription"`
	XMLNS   string   `xml:"xmlns,attr"`
	XMLNSI  string   `xml:"xmlns:i,attr"`
	BaseEntityDescription
	CreatedAt string             `xml:"CreatedAt,omitempty"`
	Filter    *FilterDescription `xml:"Filter,omitempty"`
	Action    *ActionDescription `xml:"Action,omitempty"`
	Name      string             `xml:"Name"`
}

RuleDescription is the content type for Subscription Rule management requests

type RuleEntity added in v0.2.0

type RuleEntity struct {
	*RuleDescription
	*Entity
}

RuleEntity is the Azure Service Bus description of a Subscription Rule for madnagement activities

type RuleEnvelope added in v0.3.0

type RuleEnvelope struct {
	*Entry
	Content *RuleContent `xml:"content"`
}

Subscriptions (and rules)

func WrapWithRuleEnvelope added in v0.4.1

func WrapWithRuleEnvelope(rd *RuleDescription) *RuleEnvelope

type RuleFeed added in v0.4.1

type RuleFeed struct {
	*Feed
	Entries []RuleEnvelope `xml:"entry"`
}

RuleFeed is a specialized feed containing RuleEnvelopes

func (RuleFeed) Items added in v0.4.1

func (rf RuleFeed) Items() []RuleEnvelope

type SubscriptionContent added in v1.0.1

type SubscriptionContent struct {
	XMLName                 xml.Name                `xml:"content"`
	Type                    string                  `xml:"type,attr"`
	SubscriptionDescription SubscriptionDescription `xml:"SubscriptionDescription"`
}

SubscriptionContent is a specialized Subscription body for an Atom entry

type SubscriptionDescription added in v0.2.0

type SubscriptionDescription struct {
	XMLName xml.Name `xml:"SubscriptionDescription"`
	BaseEntityDescription
	LockDuration                              *string                 `xml:"LockDuration,omitempty"` // LockDuration - ISO 8601 timespan duration of a peek-lock; that is, the amount of time that the message is locked for other receivers. The maximum value for LockDuration is 5 minutes; the default value is 1 minute.
	RequiresSession                           *bool                   `xml:"RequiresSession,omitempty"`
	DefaultMessageTimeToLive                  *string                 `xml:"DefaultMessageTimeToLive,omitempty"`         // DefaultMessageTimeToLive - ISO 8601 default message timespan to live value. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.
	DeadLetteringOnMessageExpiration          *bool                   `xml:"DeadLetteringOnMessageExpiration,omitempty"` // DeadLetteringOnMessageExpiration - A value that indicates whether this queue has dead letter support when a message expires.
	DeadLetteringOnFilterEvaluationExceptions *bool                   `xml:"DeadLetteringOnFilterEvaluationExceptions,omitempty"`
	DefaultRuleDescription                    *DefaultRuleDescription `xml:"DefaultRuleDescription,omitempty"`  // DefaultRuleDescription - A  default rule that is created right when the new subscription is created.
	MaxDeliveryCount                          *int32                  `xml:"MaxDeliveryCount,omitempty"`        // MaxDeliveryCount - The maximum delivery count. A message is automatically deadlettered after this number of deliveries. default value is 10.
	MessageCount                              *int64                  `xml:"MessageCount,omitempty"`            // MessageCount - The number of messages in the queue.
	EnableBatchedOperations                   *bool                   `xml:"EnableBatchedOperations,omitempty"` // EnableBatchedOperations - Value that indicates whether server-side batched operations are enabled.
	Status                                    *EntityStatus           `xml:"Status,omitempty"`
	ForwardTo                                 *string                 `xml:"ForwardTo,omitempty"` // ForwardTo - absolute URI of the entity to forward messages
	UserMetadata                              *string                 `xml:"UserMetadata,omitempty"`
	ForwardDeadLetteredMessagesTo             *string                 `xml:"ForwardDeadLetteredMessagesTo,omitempty"` // ForwardDeadLetteredMessagesTo - absolute URI of the entity to forward dead letter messages
	AutoDeleteOnIdle                          *string                 `xml:"AutoDeleteOnIdle,omitempty"`
	CreatedAt                                 string                  `xml:"CreatedAt,omitempty"`
	UpdatedAt                                 string                  `xml:"UpdatedAt,omitempty"`
	AccessedAt                                string                  `xml:"AccessedAt,omitempty"`
	CountDetails                              *CountDetails           `xml:"CountDetails,omitempty"`
}

SubscriptionDescription is the content type for Subscription management requests

type SubscriptionEntity added in v0.2.0

type SubscriptionEntity struct {
	*SubscriptionDescription
	*Entity
}

SubscriptionEntity is the Azure Service Bus description of a topic Subscription for management activities

type SubscriptionEnvelope added in v0.3.0

type SubscriptionEnvelope struct {
	*Entry
	Content *SubscriptionContent `xml:"content"`
}

subscriptionEntryContent is a specialized Topic feed Subscription

func WrapWithSubscriptionEnvelope added in v0.3.0

func WrapWithSubscriptionEnvelope(sd *SubscriptionDescription) *SubscriptionEnvelope

type SubscriptionFeed added in v0.3.0

type SubscriptionFeed struct {
	*Feed
	Entries []SubscriptionEnvelope `xml:"entry"`
}

SubscriptionFeed is a specialized feed containing Topic Subscriptions

func (SubscriptionFeed) Items added in v0.4.0

type TempRuleEnvelope added in v0.4.1

type TempRuleEnvelope struct {
	*Entry
}

Subscriptions (and rules)

type TopicContent added in v1.0.1

type TopicContent struct {
	XMLName          xml.Name         `xml:"content"`
	Type             string           `xml:"type,attr"`
	TopicDescription TopicDescription `xml:"TopicDescription"`
}

TopicContent is a specialized Topic body for an Atom entry

type TopicDescription added in v0.2.0

type TopicDescription struct {
	XMLName xml.Name `xml:"TopicDescription"`
	BaseEntityDescription
	DefaultMessageTimeToLive            *string             `xml:"DefaultMessageTimeToLive,omitempty"`            // DefaultMessageTimeToLive - ISO 8601 default message time span to live value. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself.
	MaxSizeInMegabytes                  *int32              `xml:"MaxSizeInMegabytes,omitempty"`                  // MaxSizeInMegabytes - The maximum size of the queue in megabytes, which is the size of memory allocated for the queue. Default is 1024.
	RequiresDuplicateDetection          *bool               `xml:"RequiresDuplicateDetection,omitempty"`          // RequiresDuplicateDetection - A value indicating if this queue requires duplicate detection.
	DuplicateDetectionHistoryTimeWindow *string             `xml:"DuplicateDetectionHistoryTimeWindow,omitempty"` // DuplicateDetectionHistoryTimeWindow - ISO 8601 timeSpan structure that defines the duration of the duplicate detection history. The default value is 10 minutes.
	EnableBatchedOperations             *bool               `xml:"EnableBatchedOperations,omitempty"`             // EnableBatchedOperations - Value that indicates whether server-side batched operations are enabled.
	SizeInBytes                         *int64              `xml:"SizeInBytes,omitempty"`                         // SizeInBytes - The size of the queue, in bytes.
	FilteringMessagesBeforePublishing   *bool               `xml:"FilteringMessagesBeforePublishing,omitempty"`
	IsAnonymousAccessible               *bool               `xml:"IsAnonymousAccessible,omitempty"`
	AuthorizationRules                  []AuthorizationRule `xml:"AuthorizationRules>AuthorizationRule,omitempty"`
	Status                              *EntityStatus       `xml:"Status,omitempty"`
	UserMetadata                        *string             `xml:"UserMetadata,omitempty"`
	AccessedAt                          string              `xml:"AccessedAt,omitempty"`
	CreatedAt                           string              `xml:"CreatedAt,omitempty"`
	UpdatedAt                           string              `xml:"UpdatedAt,omitempty"`
	SupportOrdering                     *bool               `xml:"SupportOrdering,omitempty"`
	AutoDeleteOnIdle                    *string             `xml:"AutoDeleteOnIdle,omitempty"`
	EnablePartitioning                  *bool               `xml:"EnablePartitioning,omitempty"`
	EnableSubscriptionPartitioning      *bool               `xml:"EnableSubscriptionPartitioning,omitempty"`
	EnableExpress                       *bool               `xml:"EnableExpress,omitempty"`
	CountDetails                        *CountDetails       `xml:"CountDetails,omitempty"`
	SubscriptionCount                   *int32              `xml:"SubscriptionCount,omitempty"`
	MaxMessageSizeInKilobytes           *int64              `xml:"MaxMessageSizeInKilobytes,omitempty"`
}

TopicDescription is the content type for Topic management requests Refer here for ordering constraints: https://github.com/Azure/azure-sdk-for-net/blob/ed2e86cb299e11a276dcf652a9db796efe2d2a27/sdk/servicebus/Azure.Messaging.ServiceBus/src/Administration/TopicPropertiesExtensions.cs#L178

type TopicEntity added in v0.2.0

type TopicEntity struct {
	*TopicDescription
	*Entity
}

TopicEntity is the Azure Service Bus description of a Topic for management activities

type TopicEnvelope added in v0.3.0

type TopicEnvelope struct {
	*Entry
	Content *TopicContent `xml:"content"`
}

TopicEnvelope is a specialized Topic feed entry

func WrapWithTopicEnvelope added in v0.3.0

func WrapWithTopicEnvelope(td *TopicDescription) *TopicEnvelope

type TopicFeed added in v0.3.0

type TopicFeed struct {
	*Feed
	Entries []TopicEnvelope `xml:"entry"`
}

TopicFeed is a specialized feed containing Topic Entries

func (TopicFeed) Items added in v0.4.0

func (tf TopicFeed) Items() []TopicEnvelope

type Value added in v0.4.1

type Value struct {
	Type  string `xml:"http://www.w3.org/2001/XMLSchema-instance type,attr"`
	L28NS string `xml:"xmlns:l28,attr"`
	Text  string `xml:",chardata"`
}

Subscriptions (and rules)

Jump to

Keyboard shortcuts

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