eventsourceapi

package
v1.23.0 Latest Latest
Warning

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

Go to latest
Published: Mar 1, 2026 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const Hostname = "eventsource.example"

Hostname is the default hostname of the microservice.

Variables

View Source
var (
	// HINT: Insert endpoint definitions here
	Register        = Def{Method: "ANY", Route: `:443/register`}           // MARKER: Register
	OnAllowRegister = Def{Method: "POST", Route: `:417/on-allow-register`} // MARKER: OnAllowRegister
	OnRegistered    = Def{Method: "POST", Route: `:417/on-registered`}     // MARKER: OnRegistered
)

Functions

This section is empty.

Types

type Client

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

Client is a lightweight proxy for making unicast calls to the microservice.

func NewClient

func NewClient(caller service.Publisher) Client

NewClient creates a new unicast client proxy to the microservice.

func (Client) ForHost

func (_c Client) ForHost(host string) Client

ForHost returns a copy of the client with a different hostname to be applied to requests.

func (Client) Register

func (_c Client) Register(ctx context.Context, email string) (allowed bool, err error)

Register attempts to register a new user.

func (Client) WithOptions added in v1.13.1

func (_c Client) WithOptions(opts ...pub.Option) Client

WithOptions returns a copy of the client with options to be applied to requests.

type Def added in v1.23.0

type Def struct {
	Method string
	Route  string
}

Def defines an endpoint of the microservice.

func (*Def) URL added in v1.23.0

func (d *Def) URL() string

URL is the full URL to the endpoint.

type Hook

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

Hook assists in the subscription to the events of the microservice.

func NewHook

func NewHook(listener service.Subscriber) Hook

NewHook creates a new hook to the events of the microservice.

func (Hook) ForHost

func (c Hook) ForHost(host string) Hook

ForHost returns a copy of the hook with a different hostname to be applied to the subscription.

func (Hook) OnAllowRegister

func (c Hook) OnAllowRegister(handler func(ctx context.Context, email string) (allow bool, err error)) (unsub func() error, err error)

OnAllowRegister is triggered before registration to check if any sink blocks it.

func (Hook) OnRegistered

func (c Hook) OnRegistered(handler func(ctx context.Context, email string) (err error)) (unsub func() error, err error)

OnRegistered is triggered after successful registration.

func (Hook) WithOptions added in v1.22.0

func (c Hook) WithOptions(opts ...sub.Option) Hook

WithOptions returns a copy of the hook with options to be applied to subscriptions.

type MulticastClient

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

MulticastClient is a lightweight proxy for making multicast calls to the microservice.

func NewMulticastClient

func NewMulticastClient(caller service.Publisher) MulticastClient

NewMulticastClient creates a new multicast client proxy to the microservice.

func (MulticastClient) ForHost

func (_c MulticastClient) ForHost(host string) MulticastClient

ForHost returns a copy of the client with a different hostname to be applied to requests.

func (MulticastClient) Register

func (_c MulticastClient) Register(ctx context.Context, email string) iter.Seq[*RegisterResponse]

Register attempts to register a new user.

func (MulticastClient) WithOptions added in v1.13.1

func (_c MulticastClient) WithOptions(opts ...pub.Option) MulticastClient

WithOptions returns a copy of the client with options to be applied to requests.

type MulticastTrigger

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

MulticastTrigger is a lightweight proxy for triggering the events of the microservice.

func NewMulticastTrigger

func NewMulticastTrigger(caller service.Publisher) MulticastTrigger

NewMulticastTrigger creates a new multicast trigger of events of the microservice.

func (MulticastTrigger) ForHost

func (_c MulticastTrigger) ForHost(host string) MulticastTrigger

ForHost returns a copy of the trigger with a different hostname to be applied to requests.

func (MulticastTrigger) OnAllowRegister

func (_c MulticastTrigger) OnAllowRegister(ctx context.Context, email string) iter.Seq[*OnAllowRegisterResponse]

OnAllowRegister is triggered before registration to check if any sink blocks it.

func (MulticastTrigger) OnRegistered

func (_c MulticastTrigger) OnRegistered(ctx context.Context, email string) iter.Seq[*OnRegisteredResponse]

OnRegistered is triggered after successful registration.

func (MulticastTrigger) WithOptions added in v1.13.1

func (_c MulticastTrigger) WithOptions(opts ...pub.Option) MulticastTrigger

WithOptions returns a copy of the trigger with options to be applied to requests.

type OnAllowRegisterIn

type OnAllowRegisterIn struct {
	Email string `json:"email,omitzero"`
}

OnAllowRegisterIn are the input arguments of OnAllowRegister.

type OnAllowRegisterOut

type OnAllowRegisterOut struct {
	Allow bool `json:"allow,omitzero"`
}

OnAllowRegisterOut are the output arguments of OnAllowRegister.

type OnAllowRegisterResponse

type OnAllowRegisterResponse multicastResponse // MARKER: OnAllowRegister

OnAllowRegisterResponse packs the response of OnAllowRegister.

func (*OnAllowRegisterResponse) Get

func (_res *OnAllowRegisterResponse) Get() (allow bool, err error)

Get unpacks the return arguments of OnAllowRegister.

type OnRegisteredIn

type OnRegisteredIn struct {
	Email string `json:"email,omitzero"`
}

OnRegisteredIn are the input arguments of OnRegistered.

type OnRegisteredOut

type OnRegisteredOut struct {
}

OnRegisteredOut are the output arguments of OnRegistered.

type OnRegisteredResponse

type OnRegisteredResponse multicastResponse // MARKER: OnRegistered

OnRegisteredResponse packs the response of OnRegistered.

func (*OnRegisteredResponse) Get

func (_res *OnRegisteredResponse) Get() (err error)

Get unpacks the return arguments of OnRegistered.

type RegisterIn

type RegisterIn struct {
	Email string `json:"email,omitzero"`
}

RegisterIn are the input arguments of Register.

type RegisterOut

type RegisterOut struct {
	Allowed bool `json:"allowed,omitzero"`
}

RegisterOut are the output arguments of Register.

type RegisterResponse

type RegisterResponse multicastResponse // MARKER: Register

RegisterResponse packs the response of Register.

func (*RegisterResponse) Get

func (_res *RegisterResponse) Get() (allowed bool, err error)

Get unpacks the return arguments of Register.

Jump to

Keyboard shortcuts

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