Documentation ¶
Index ¶
- Constants
- func GetMetadataInfoFromStructType(t reflect.Type, metadataMap *MetadataMap, componentType ComponentType) error
- func GetMetadataProperty(props map[string]string, keys ...string) (val string, ok bool)
- func IsRawPayload(props map[string]string) (bool, error)
- func TryGetContentType(props map[string]string) (string, bool)
- func TryGetPriority(props map[string]string) (uint8, bool, error)
- func TryGetQueryIndexName(props map[string]string) (string, bool)
- func TryGetTTL(props map[string]string) (time.Duration, bool, error)
- type Base
- type ComponentType
- type ComponentWithMetadata
- type MetadataField
- type MetadataMap
Constants ¶
const ( // TTLMetadataKey defines the metadata key for setting a time to live (as a Go duration or number of seconds). TTLMetadataKey = "ttl" TTLInSecondsMetadataKey = "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" // MaxBulkPubBytesKey defines the maximum bytes to publish in a bulk publish request metadata. MaxBulkPubBytesKey string = "maxBulkPubBytes" )
Variables ¶
This section is empty.
Functions ¶
func GetMetadataInfoFromStructType ¶ added in v1.10.1
func GetMetadataInfoFromStructType(t reflect.Type, metadataMap *MetadataMap, componentType ComponentType) error
GetMetadataInfoFromStructType converts a struct to a map of field name (or struct tag) to field type. This is used to generate metadata documentation for components.
func GetMetadataProperty ¶ added in v1.9.0
GetMetadataProperty returns a property from the metadata map, with support for aliases
func IsRawPayload ¶ added in v1.2.0
IsRawPayload determines if payload should be used as-is.
func TryGetContentType ¶ added in v1.5.0
func TryGetPriority ¶
TryGetPriority tries to get the priority for binding and any other building block.
func TryGetQueryIndexName ¶ added in v1.7.0
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 ComponentType ¶ added in v1.11.0
type ComponentType string
const ( BindingType ComponentType = "bindings" StateStoreType ComponentType = "state" SecretStoreType ComponentType = "secretstores" PubSubType ComponentType = "pubsub" LockStoreType ComponentType = "lock" ConfigurationStoreType ComponentType = "configuration" MiddlewareType ComponentType = "middleware" CryptoType ComponentType = "crypto" NameResolutionType ComponentType = "nameresolution" WorkflowType ComponentType = "workflows" )
func (ComponentType) BuiltInMetadataProperties ¶ added in v1.11.0
func (t ComponentType) BuiltInMetadataProperties() []string
BuiltInMetadataProperties returns the built-in metadata properties for the given component type. These are normally parsed by the runtime.
func (ComponentType) IsValid ¶ added in v1.11.0
func (t ComponentType) IsValid() bool
IsValid returns true if the component type is valid.
type ComponentWithMetadata ¶ added in v1.12.0
type ComponentWithMetadata interface { }
ComponentWithMetadata is empty when the `metadata` build tag is not present. The build tag is present when running the linter.
type MetadataField ¶ added in v1.12.0
type MetadataMap ¶ added in v1.12.0
type MetadataMap map[string]MetadataField