hcnettoml

package
v0.0.0-...-c9303cd Latest Latest
Warning

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

Go to latest
Published: Dec 24, 2020 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Examples

Constants

View Source
const HcNetTomlMaxSize = 100 * 1024

HcNetTomlMaxSize is the maximum size of hcnet.toml file

View Source
const WellKnownPath = "/.well-known/hcnet.toml"

WellKnownPath represents the url path at which the hcnet.toml file should exist to conform to the federation protocol.

Variables

View Source
var DefaultClient = &Client{HTTP: http.DefaultClient}

DefaultClient is a default client using the default parameters

Functions

This section is empty.

Types

type Client

type Client struct {
	// HTTP is the http client used when resolving a HcNet.toml file
	HTTP HTTP

	// UseHTTP forces the client to resolve against servers using plain HTTP.
	// Useful for debugging.
	UseHTTP bool
}

Client represents a client that is capable of resolving a HcNet.toml file using the internet.

func (*Client) GetHcNetToml

func (c *Client) GetHcNetToml(domain string) (resp *Response, err error)

GetHcNetToml returns hcnet.toml file for a given domain

Example

ExampleGetTOML gets the hcnet.toml file for coins.asia

_, err := DefaultClient.GetHcNetToml("coins.asia")
if err != nil {
	log.Fatal(err)
}
Output:

func (*Client) GetHcNetTomlByAddress

func (c *Client) GetHcNetTomlByAddress(addy string) (*Response, error)

GetHcNetTomlByAddress returns hcnet.toml file of a domain fetched from a given address

type ClientInterface

type ClientInterface interface {
	GetHcNetToml(domain string) (*Response, error)
	GetHcNetTomlByAddress(addy string) (*Response, error)
}

type HTTP

type HTTP interface {
	Get(url string) (*http.Response, error)
}

HTTP represents the http client that a stellertoml resolver uses to make http requests.

type MockClient

type MockClient struct {
	mock.Mock
}

MockClient is a mockable hcnettoml client.

func (*MockClient) GetHcNetToml

func (m *MockClient) GetHcNetToml(domain string) (*Response, error)

GetHcNetToml is a mocking a method

func (*MockClient) GetHcNetTomlByAddress

func (m *MockClient) GetHcNetTomlByAddress(address string) (*Response, error)

GetHcNetTomlByAddress is a mocking a method

type Response

type Response struct {
	AuthServer       string `toml:"AUTH_SERVER"`
	FederationServer string `toml:"FEDERATION_SERVER"`
	EncryptionKey    string `toml:"ENCRYPTION_KEY"`
	SigningKey       string `toml:"SIGNING_KEY"`
}

Response represents the results of successfully resolving a hcnet.toml file

func GetHcNetToml

func GetHcNetToml(domain string) (*Response, error)

GetHcNetToml returns hcnet.toml file for a given domain

func GetHcNetTomlByAddress

func GetHcNetTomlByAddress(addy string) (*Response, error)

GetHcNetTomlByAddress returns hcnet.toml file of a domain fetched from a given address

Jump to

Keyboard shortcuts

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