Documentation ¶
Index ¶
Examples ¶
Constants ¶
const HcnetTomlMaxSize = 100 * 1024
HcnetTomlMaxSize is the maximum size of hcnet.toml file
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 ¶
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 ¶ added in v1.11.1
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:
type ClientInterface ¶
type Currency ¶ added in v1.11.1
type Currency struct { Code string `toml:"code"` CodeTemplate string `toml:"code_template"` Issuer string `toml:"issuer"` Status string `toml:"status"` DisplayDecimals int `toml:"display_decimals"` Name string `toml:"name"` Desc string `toml:"desc"` Conditions string `toml:"conditions"` Image string `toml:"image"` FixedNumber int `toml:"fixed_number"` MaxNumber int `toml:"max_number"` IsUnlimited bool `toml:"is_unlimited"` IsAssetAnchored bool `toml:"is_asset_anchored"` AnchorAsset string `toml:"anchor_asset"` RedemptionInstructions string `toml:"redemption_instructions"` CollateralAddresses []string `toml:"collateral_addresses"` CollateralAddressMessages []string `toml:"collateral_address_messages"` CollateralAddressSignatures []string `toml:"collateral_address_signatures"` Regulated string `toml:"regulated"` ApprovalServer string `toml:"APPROVAL_SERVER"` ApprovalCriteria string `toml:"APPROVAL_CRITERIA"` }
type MockClient ¶
MockClient is a mockable hcnettoml client.
func (*MockClient) GetHcnetToml ¶ added in v1.11.1
func (m *MockClient) GetHcnetToml(domain string) (*Response, error)
GetHcnetToml is a mocking a method
func (*MockClient) GetHcnetTomlByAddress ¶ added in v1.11.1
func (m *MockClient) GetHcnetTomlByAddress(address string) (*Response, error)
GetHcnetTomlByAddress is a mocking a method
type Principal ¶ added in v1.11.1
type Principal struct { Name string `toml:"name"` Email string `toml:"email"` Keybase string `toml:"keybase"` Telegram string `toml:"telegram"` Twitter string `toml:"twitter"` Github string `toml:"github"` IdPhotoHash string `toml:"id_photo_hash"` VerificationPhotoHash string `toml:"verification_photo_hash"` }
type Response ¶
type Response struct { Version string `toml:"VERSION"` NetworkPassphrase string `toml:"NETWORK_PASSPHRASE"` FederationServer string `toml:"FEDERATION_SERVER"` AuthServer string `toml:"AUTH_SERVER"` TransferServer string `toml:"TRANSFER_SERVER"` TransferServer0024 string `toml:"TRANSFER_SERVER_0024"` KycServer string `toml:"KYC_SERVER"` WebAuthEndpoint string `toml:"WEB_AUTH_ENDPOINT"` SigningKey string `toml:"SIGNING_KEY"` AuroraUrl string `toml:"HORIZON_URL"` Accounts []string `toml:"ACCOUNTS"` UriRequestSigningKey string `toml:"URI_REQUEST_SIGNING_KEY"` DirectPaymentServer string `toml:"DIRECT_PAYMENT_SERVER"` OrgName string `toml:"ORG_NAME"` OrgDba string `toml:"ORG_DBA"` OrgUrl string `toml:"ORG_URL"` OrgLogo string `toml:"ORG_LOGO"` OrgDescription string `toml:"ORG_DESCRIPTION"` OrgPhysicalAddress string `toml:"ORG_PHYSICAL_ADDRESS"` OrgPhysicalAddressAttestation string `toml:"ORG_PHYSICAL_ADDRESS_ATTESTATION"` OrgPhoneNumber string `toml:"ORG_PHONE_NUMBER"` OrgPhoneNumberAttestation string `toml:"ORG_PHONE_NUMBER_ATTESTATION"` OrgKeybase string `toml:"ORG_KEYBASE"` OrgTwitter string `toml:"ORG_TWITTER"` OrgGithub string `toml:"ORG_GITHUB"` OrgOfficialEmail string `toml:"ORG_OFFICIAL_EMAIL"` OrgLicensingAuthority string `toml:"ORG_LICENSING_AUTHORITY"` OrgLicenseType string `toml:"ORG_LICENSE_TYPE"` OrgLicenseNumber string `toml:"ORG_LICENSE_NUMBER"` Principals []Principal `toml:"PRINCIPALS"` Currencies []Currency `toml:"CURRENCIES"` Validators []Validator `toml:"VALIDATORS"` }
func GetHcnetToml ¶ added in v1.11.1
GetHcnetToml returns hcnet.toml file for a given domain
func GetHcnetTomlByAddress ¶ added in v1.11.1
GetHcnetTomlByAddress returns hcnet.toml file of a domain fetched from a given address