metadata

package
v1.9.7 Latest Latest
Warning

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

Go to latest
Published: Feb 1, 2023 License: Apache-2.0 Imports: 9 Imported by: 157

Documentation

Index

Constants

View Source
const (
	// TTLMetadataKey defines the metadata key for setting a time to live (in seconds).
	TTLMetadataKey = "ttlInSeconds"

	// RawPayloadKey defines the metadata key for forcing raw payload in pubsub.
	RawPayloadKey = "rawPayload"

	// PriorityMetadataKey defines the metadata key for setting a priority.
	PriorityMetadataKey = "priority"

	// ContentType defines the metadata key for the content type.
	ContentType = "contentType"

	// QueryIndexName defines the metadata key for the name of query indexing schema (for redis).
	QueryIndexName = "queryIndexName"
)

Variables

This section is empty.

Functions

func DecodeMetadata added in v1.9.0

func DecodeMetadata(input interface{}, result interface{}) error

DecodeMetadata decodes metadata into a struct This is an extension of mitchellh/mapstructure which also supports decoding durations

func GetMetadataProperty added in v1.9.0

func GetMetadataProperty(props map[string]string, keys ...string) (val string, ok bool)

GetMetadataProperty returns a property from the metadata map, with support for aliases

func IsRawPayload added in v1.2.0

func IsRawPayload(props map[string]string) (bool, error)

IsRawPayload determines if payload should be used as-is.

func TryGetContentType added in v1.5.0

func TryGetContentType(props map[string]string) (string, bool)

func TryGetPriority

func TryGetPriority(props map[string]string) (uint8, bool, error)

TryGetPriority tries to get the priority for binding and any other building block.

func TryGetQueryIndexName added in v1.7.0

func TryGetQueryIndexName(props map[string]string) (string, bool)

func TryGetTTL

func TryGetTTL(props map[string]string) (time.Duration, bool, error)

TryGetTTL tries to get the ttl as a time.Duration value for pubsub, binding and any other building block.

Types

type Base added in v1.9.0

type Base struct {
	// Name is the name of the component that's being used.
	Name string
	// Properties is the metadata properties.
	Properties map[string]string `json:"properties,omitempty"`
}

Base is the common metadata across components. All components-specific metadata should embed this.

type Duration added in v1.2.0

type Duration struct {
	time.Duration
}

func (Duration) MarshalJSON added in v1.2.0

func (d Duration) MarshalJSON() ([]byte, error)

func (Duration) ToISOString added in v1.8.0

func (d Duration) ToISOString() string

ToISOString returns the duration formatted as a ISO-8601 duration string (-ish). This methods supports days, hours, minutes, and seconds. It assumes all durations are in UTC time and are not impacted by DST (so all days are 24-hours long). This method does not support fractions of seconds, and durations are truncated to seconds. See https://en.wikipedia.org/wiki/ISO_8601#Durations for referece.

func (*Duration) UnmarshalJSON added in v1.2.0

func (d *Duration) UnmarshalJSON(b []byte) error

Jump to

Keyboard shortcuts

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