issue164

package
v0.41.3 Latest Latest
Warning

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

Go to latest
Published: Jun 18, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package "issue164" provides primitives to interact with the AsyncAPI specification.

Code generated by github.com/lerenn/asyncapi-codegen version (devel) DO NOT EDIT.

Index

Constants

View Source
const AsyncAPIVersion = ""

AsyncAPIVersion is the version of the used AsyncAPI document

View Source
const (
	// V2Issue164TestMapPath is the constant representing the 'V2Issue164TestMap' channel path.
	V2Issue164TestMapPath = "v2.issue164.testMap"
)

Variables

View Source
var ChannelsPaths = []string{
	V2Issue164TestMapPath,
}

ChannelsPaths is an array of all channels paths

Functions

This section is empty.

Types

type AppController

type AppController struct {
	// contains filtered or unexported fields
}

AppController is the structure that provides publishing capabilities to the developer and and connect the broker with the App

func NewAppController

func NewAppController(bc extensions.BrokerController, options ...ControllerOption) (*AppController, error)

NewAppController links the App to the broker

func (*AppController) Close

func (c *AppController) Close(ctx context.Context)

Close will clean up any existing resources on the controller

func (*AppController) SubscribeAll

func (c *AppController) SubscribeAll(ctx context.Context, as AppSubscriber) error

SubscribeAll will subscribe to channels without parameters on which the app is expecting messages. For channels with parameters, they should be subscribed independently.

func (*AppController) SubscribeV2Issue164TestMap added in v0.35.2

func (c *AppController) SubscribeV2Issue164TestMap(
	ctx context.Context,
	fn func(ctx context.Context, msg TestMapMessage) error,
) error

SubscribeV2Issue164TestMap will subscribe to new messages from 'v2.issue164.testMap' channel.

Callback function 'fn' will be called each time a new message is received.

func (*AppController) UnsubscribeAll

func (c *AppController) UnsubscribeAll(ctx context.Context)

UnsubscribeAll will unsubscribe all remaining subscribed channels

func (*AppController) UnsubscribeV2Issue164TestMap added in v0.35.2

func (c *AppController) UnsubscribeV2Issue164TestMap(ctx context.Context)

UnsubscribeV2Issue164TestMap will unsubscribe messages from 'v2.issue164.testMap' channel. A timeout can be set in context to avoid blocking operation, if needed.

type AppSubscriber

type AppSubscriber interface {
	// V2Issue164TestMap subscribes to messages placed on the 'v2.issue164.testMap' channel
	V2Issue164TestMap(ctx context.Context, msg TestMapMessage) error
}

AppSubscriber represents all handlers that are expecting messages for App

type ControllerOption

type ControllerOption func(controller *controller)

ControllerOption is the type of the options that can be passed when creating a new Controller

func WithErrorHandler

func WithErrorHandler(handler extensions.ErrorHandler) ControllerOption

WithErrorHandler attaches a errorhandler to handle errors from subscriber functions

func WithLogger

func WithLogger(logger extensions.Logger) ControllerOption

WithLogger attaches a logger to the controller

func WithMiddlewares

func WithMiddlewares(middlewares ...extensions.Middleware) ControllerOption

WithMiddlewares attaches middlewares that will be executed when sending or receiving messages

type Error

type Error struct {
	Channel string
	Err     error
}

func (*Error) Error

func (e *Error) Error() string

type MessageWithCorrelationID

type MessageWithCorrelationID interface {
	CorrelationID() string
	SetCorrelationID(id string)
}

type TestMapMessage

type TestMapMessage struct {
	// Payload will be inserted in the message payload
	Payload TestMapSchema
}

TestMapMessage is the message expected for 'TestMapMessage' channel.

func NewTestMapMessage

func NewTestMapMessage() TestMapMessage

type TestMapSchema

type TestMapSchema struct {
	Property *string `json:"property"`

	// AdditionalProperties represents the object additional properties.
	AdditionalProperties map[string]string `json:"-"`
}

TestMapSchema is a schema from the AsyncAPI specification required in messages

func (TestMapSchema) MarshalJSON

func (t TestMapSchema) MarshalJSON() ([]byte, error)

MarshalJSON marshals the schema into JSON with support for additional properties.

func (*TestMapSchema) UnmarshalJSON

func (t *TestMapSchema) UnmarshalJSON(data []byte) error

UnmarshalJSON unmarshals schema from JSON with support for additional properties.

type UserController

type UserController struct {
	// contains filtered or unexported fields
}

UserController is the structure that provides publishing capabilities to the developer and and connect the broker with the User

func NewUserController

func NewUserController(bc extensions.BrokerController, options ...ControllerOption) (*UserController, error)

NewUserController links the User to the broker

func (*UserController) Close

func (c *UserController) Close(ctx context.Context)

Close will clean up any existing resources on the controller

func (*UserController) PublishV2Issue164TestMap added in v0.35.2

func (c *UserController) PublishV2Issue164TestMap(
	ctx context.Context,
	msg TestMapMessage,
) error

PublishV2Issue164TestMap will publish messages to 'v2.issue164.testMap' channel

Jump to

Keyboard shortcuts

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