helloapi

package
v1.5.1 Latest Latest
Warning

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

Go to latest
Published: Aug 7, 2024 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package helloapi implements the public API of the hello.example microservice, including clients and data structures.

The Hello microservice demonstrates the various capabilities of a microservice.

Index

Constants

View Source
const Hostname = "hello.example"

Hostname is the default hostname of the microservice: hello.example.

Variables

View Source
var (
	URLOfHello        = httpx.JoinHostAndPath(Hostname, `:443/hello`)
	URLOfEcho         = httpx.JoinHostAndPath(Hostname, `:443/echo`)
	URLOfPing         = httpx.JoinHostAndPath(Hostname, `:443/ping`)
	URLOfCalculator   = httpx.JoinHostAndPath(Hostname, `:443/calculator`)
	URLOfBusPNG       = httpx.JoinHostAndPath(Hostname, `:443/bus.png`)
	URLOfLocalization = httpx.JoinHostAndPath(Hostname, `:443/localization`)
	URLOfRoot         = httpx.JoinHostAndPath(Hostname, `//root`)
)

Fully-qualified URLs of the microservice's endpoints.

Functions

This section is empty.

Types

type Client

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

Client is an interface to calling the endpoints of the hello.example microservice. This simple version is for unicast calls.

func NewClient

func NewClient(caller service.Publisher) *Client

NewClient creates a new unicast client to the hello.example microservice.

func (*Client) BusPNG

func (_c *Client) BusPNG(ctx context.Context, url string) (res *http.Response, err error)

BusPNG serves an image from the embedded resources.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) BusPNG_Do

func (_c *Client) BusPNG_Do(r *http.Request) (res *http.Response, err error)

BusPNG_Do performs a customized request to the BusPNG endpoint.

BusPNG serves an image from the embedded resources.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Calculator

func (_c *Client) Calculator(r *http.Request) (res *http.Response, err error)

Calculator renders a UI for a calculator. The calculation operation is delegated to another microservice in order to demonstrate a call from one microservice to another.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Calculator_Get

func (_c *Client) Calculator_Get(ctx context.Context, url string) (res *http.Response, err error)

Calculator_Get performs a GET request to the Calculator endpoint.

Calculator renders a UI for a calculator. The calculation operation is delegated to another microservice in order to demonstrate a call from one microservice to another.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Calculator_Post

func (_c *Client) Calculator_Post(ctx context.Context, url string, contentType string, body any) (res *http.Response, err error)

Calculator_Post performs a POST request to the Calculator endpoint.

Calculator renders a UI for a calculator. The calculation operation is delegated to another microservice in order to demonstrate a call from one microservice to another.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*Client) Echo

func (_c *Client) Echo(r *http.Request) (res *http.Response, err error)

Echo back the incoming request in wire format.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Echo_Get

func (_c *Client) Echo_Get(ctx context.Context, url string) (res *http.Response, err error)

Echo_Get performs a GET request to the Echo endpoint.

Echo back the incoming request in wire format.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Echo_Post

func (_c *Client) Echo_Post(ctx context.Context, url string, contentType string, body any) (res *http.Response, err error)

Echo_Post performs a POST request to the Echo endpoint.

Echo back the incoming request in wire format.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*Client) ForHost

func (_c *Client) ForHost(host string) *Client

ForHost replaces the default hostname of this client.

func (*Client) Hello

func (_c *Client) Hello(r *http.Request) (res *http.Response, err error)

Hello prints a greeting.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Hello_Get

func (_c *Client) Hello_Get(ctx context.Context, url string) (res *http.Response, err error)

Hello_Get performs a GET request to the Hello endpoint.

Hello prints a greeting.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Hello_Post

func (_c *Client) Hello_Post(ctx context.Context, url string, contentType string, body any) (res *http.Response, err error)

Hello_Post performs a POST request to the Hello endpoint.

Hello prints a greeting.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*Client) Localization

func (_c *Client) Localization(r *http.Request) (res *http.Response, err error)

Localization prints hello in the language best matching the request's Accept-Language header.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Localization_Get

func (_c *Client) Localization_Get(ctx context.Context, url string) (res *http.Response, err error)

Localization_Get performs a GET request to the Localization endpoint.

Localization prints hello in the language best matching the request's Accept-Language header.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Localization_Post

func (_c *Client) Localization_Post(ctx context.Context, url string, contentType string, body any) (res *http.Response, err error)

Localization_Post performs a POST request to the Localization endpoint.

Localization prints hello in the language best matching the request's Accept-Language header.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*Client) Ping

func (_c *Client) Ping(r *http.Request) (res *http.Response, err error)

Ping all microservices and list them.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Ping_Get

func (_c *Client) Ping_Get(ctx context.Context, url string) (res *http.Response, err error)

Ping_Get performs a GET request to the Ping endpoint.

Ping all microservices and list them.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Ping_Post

func (_c *Client) Ping_Post(ctx context.Context, url string, contentType string, body any) (res *http.Response, err error)

Ping_Post performs a POST request to the Ping endpoint.

Ping all microservices and list them.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*Client) Root

func (_c *Client) Root(r *http.Request) (res *http.Response, err error)

Root is the top-most root page.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Root_Get

func (_c *Client) Root_Get(ctx context.Context, url string) (res *http.Response, err error)

Root_Get performs a GET request to the Root endpoint.

Root is the top-most root page.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*Client) Root_Post

func (_c *Client) Root_Post(ctx context.Context, url string, contentType string, body any) (res *http.Response, err error)

Root_Post performs a POST request to the Root endpoint.

Root is the top-most root page.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

type MulticastClient

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

MulticastClient is an interface to calling the endpoints of the hello.example microservice. This advanced version is for multicast calls.

func NewMulticastClient

func NewMulticastClient(caller service.Publisher) *MulticastClient

NewMulticastClient creates a new multicast client to the hello.example microservice.

func (*MulticastClient) BusPNG

func (_c *MulticastClient) BusPNG(ctx context.Context, url string) <-chan *pub.Response

BusPNG serves an image from the embedded resources.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) BusPNG_Do

func (_c *MulticastClient) BusPNG_Do(ctx context.Context, r *http.Request) <-chan *pub.Response

BusPNG_Do performs a customized request to the BusPNG endpoint.

BusPNG serves an image from the embedded resources.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Calculator

func (_c *MulticastClient) Calculator(ctx context.Context, r *http.Request) <-chan *pub.Response

Calculator renders a UI for a calculator. The calculation operation is delegated to another microservice in order to demonstrate a call from one microservice to another.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Calculator_Get

func (_c *MulticastClient) Calculator_Get(ctx context.Context, url string) <-chan *pub.Response

Calculator_Get performs a GET request to the Calculator endpoint.

Calculator renders a UI for a calculator. The calculation operation is delegated to another microservice in order to demonstrate a call from one microservice to another.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Calculator_Post

func (_c *MulticastClient) Calculator_Post(ctx context.Context, url string, contentType string, body any) <-chan *pub.Response

Calculator_Post performs a POST request to the Calculator endpoint.

Calculator renders a UI for a calculator. The calculation operation is delegated to another microservice in order to demonstrate a call from one microservice to another.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*MulticastClient) Echo

func (_c *MulticastClient) Echo(ctx context.Context, r *http.Request) <-chan *pub.Response

Echo back the incoming request in wire format.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Echo_Get

func (_c *MulticastClient) Echo_Get(ctx context.Context, url string) <-chan *pub.Response

Echo_Get performs a GET request to the Echo endpoint.

Echo back the incoming request in wire format.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Echo_Post

func (_c *MulticastClient) Echo_Post(ctx context.Context, url string, contentType string, body any) <-chan *pub.Response

Echo_Post performs a POST request to the Echo endpoint.

Echo back the incoming request in wire format.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*MulticastClient) ForHost

func (_c *MulticastClient) ForHost(host string) *MulticastClient

ForHost replaces the default hostname of this client.

func (*MulticastClient) Hello

func (_c *MulticastClient) Hello(ctx context.Context, r *http.Request) <-chan *pub.Response

Hello prints a greeting.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Hello_Get

func (_c *MulticastClient) Hello_Get(ctx context.Context, url string) <-chan *pub.Response

Hello_Get performs a GET request to the Hello endpoint.

Hello prints a greeting.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Hello_Post

func (_c *MulticastClient) Hello_Post(ctx context.Context, url string, contentType string, body any) <-chan *pub.Response

Hello_Post performs a POST request to the Hello endpoint.

Hello prints a greeting.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*MulticastClient) Localization

func (_c *MulticastClient) Localization(ctx context.Context, r *http.Request) <-chan *pub.Response

Localization prints hello in the language best matching the request's Accept-Language header.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Localization_Get

func (_c *MulticastClient) Localization_Get(ctx context.Context, url string) <-chan *pub.Response

Localization_Get performs a GET request to the Localization endpoint.

Localization prints hello in the language best matching the request's Accept-Language header.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Localization_Post

func (_c *MulticastClient) Localization_Post(ctx context.Context, url string, contentType string, body any) <-chan *pub.Response

Localization_Post performs a POST request to the Localization endpoint.

Localization prints hello in the language best matching the request's Accept-Language header.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*MulticastClient) Ping

func (_c *MulticastClient) Ping(ctx context.Context, r *http.Request) <-chan *pub.Response

Ping all microservices and list them.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Ping_Get

func (_c *MulticastClient) Ping_Get(ctx context.Context, url string) <-chan *pub.Response

Ping_Get performs a GET request to the Ping endpoint.

Ping all microservices and list them.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Ping_Post

func (_c *MulticastClient) Ping_Post(ctx context.Context, url string, contentType string, body any) <-chan *pub.Response

Ping_Post performs a POST request to the Ping endpoint.

Ping all microservices and list them.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (*MulticastClient) Root

func (_c *MulticastClient) Root(ctx context.Context, r *http.Request) <-chan *pub.Response

Root is the top-most root page.

If a request is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Root_Get

func (_c *MulticastClient) Root_Get(ctx context.Context, url string) <-chan *pub.Response

Root_Get performs a GET request to the Root endpoint.

Root is the top-most root page.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint.

func (*MulticastClient) Root_Post

func (_c *MulticastClient) Root_Post(ctx context.Context, url string, contentType string, body any) <-chan *pub.Response

Root_Post performs a POST request to the Root endpoint.

Root is the top-most root page.

If a URL is not provided, it defaults to the URL of the endpoint. Otherwise, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

Jump to

Keyboard shortcuts

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