calculatorapi

package
v1.22.2 Latest Latest
Warning

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

Go to latest
Published: Feb 19, 2026 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	RouteOfArithmetic = `:443/arithmetic` // MARKER: Arithmetic
	RouteOfSquare     = `:443/square`     // MARKER: Square
	RouteOfDistance   = `:443/distance`   // MARKER: Distance
)

Endpoint routes.

View Source
const Hostname = "calculator.example"

Hostname is the default hostname of the microservice.

Variables

View Source
var (
	URLOfArithmetic = httpx.JoinHostAndPath(Hostname, RouteOfArithmetic) // MARKER: Arithmetic
	URLOfSquare     = httpx.JoinHostAndPath(Hostname, RouteOfSquare)     // MARKER: Square
	URLOfDistance   = httpx.JoinHostAndPath(Hostname, RouteOfDistance)   // MARKER: Distance
)

Endpoint URLs.

Functions

This section is empty.

Types

type ArithmeticIn

type ArithmeticIn struct {
	X  int    `json:"x,omitzero"`
	Op string `json:"op,omitzero"`
	Y  int    `json:"y,omitzero"`
}

ArithmeticIn are the input arguments of Arithmetic.

type ArithmeticOut

type ArithmeticOut struct {
	XEcho  int    `json:"xEcho,omitzero"`
	OpEcho string `json:"opEcho,omitzero"`
	YEcho  int    `json:"yEcho,omitzero"`
	Result int    `json:"result,omitzero"`
}

ArithmeticOut are the output arguments of Arithmetic.

type ArithmeticResponse

type ArithmeticResponse struct {
	HTTPResponse *http.Response
	// contains filtered or unexported fields
}

ArithmeticResponse is the response to Arithmetic.

func (*ArithmeticResponse) Get

func (_res *ArithmeticResponse) Get() (xEcho int, opEcho string, yEcho int, result int, err error)

Get retrieves the return values.

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) Arithmetic

func (_c Client) Arithmetic(ctx context.Context, x int, op string, y int) (xEcho int, opEcho string, yEcho int, result int, err error)

Arithmetic performs an arithmetic operation between two integers x and y given an operator op.

func (Client) Distance

func (_c Client) Distance(ctx context.Context, p1 Point, p2 Point) (d float64, err error)

Distance calculates the distance between two points. It demonstrates the use of the defined type Point.

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) Square

func (_c Client) Square(ctx context.Context, x int) (xEcho int, result int, err error)

Square prints the square of the integer x.

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 DistanceIn

type DistanceIn struct {
	P1 Point `json:"p1,omitzero"`
	P2 Point `json:"p2,omitzero"`
}

DistanceIn are the input arguments of Distance.

type DistanceOut

type DistanceOut struct {
	D float64 `json:"d,omitzero"`
}

DistanceOut are the output arguments of Distance.

type DistanceResponse

type DistanceResponse struct {
	HTTPResponse *http.Response
	// contains filtered or unexported fields
}

DistanceResponse is the response to Distance.

func (*DistanceResponse) Get

func (_res *DistanceResponse) Get() (d float64, err error)

Get retrieves the return values.

type Hook added in v1.22.0

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

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

func NewHook added in v1.22.0

func NewHook(listener service.Subscriber) Hook

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

func (Hook) ForHost added in v1.22.0

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) 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) Arithmetic

func (_c MulticastClient) Arithmetic(ctx context.Context, x int, op string, y int) <-chan *ArithmeticResponse

Arithmetic performs an arithmetic operation between two integers x and y given an operator op.

func (MulticastClient) Distance

func (_c MulticastClient) Distance(ctx context.Context, p1 Point, p2 Point) <-chan *DistanceResponse

Distance calculates the distance between two points. It demonstrates the use of the defined type Point.

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) Square

func (_c MulticastClient) Square(ctx context.Context, x int) <-chan *SquareResponse

Square prints the square of the integer x.

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 added in v1.22.0

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

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

func NewMulticastTrigger added in v1.22.0

func NewMulticastTrigger(caller service.Publisher) MulticastTrigger

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

func (MulticastTrigger) ForHost added in v1.22.0

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) WithOptions added in v1.22.0

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

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

type Point

type Point struct {
	X float64 `json:"x,omitzero" jsonschema:"description=X coordinate,example=6"`
	Y float64 `json:"y,omitzero" jsonschema:"description=Y coordinate,example=8"`
}

Point is a 2D (X,Y) coordinate.

type SquareIn

type SquareIn struct {
	X int `json:"x,omitzero"`
}

SquareIn are the input arguments of Square.

type SquareOut

type SquareOut struct {
	XEcho  int `json:"xEcho,omitzero"`
	Result int `json:"result,omitzero"`
}

SquareOut are the output arguments of Square.

type SquareResponse

type SquareResponse struct {
	HTTPResponse *http.Response
	// contains filtered or unexported fields
}

SquareResponse is the response to Square.

func (*SquareResponse) Get

func (_res *SquareResponse) Get() (xEcho int, result int, err error)

Get retrieves the return values.

Jump to

Keyboard shortcuts

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