Documentation
¶
Index ¶
Examples ¶
Constants ¶
const StellarTomlMaxSize = 100 * 1024
StellarTomlMaxSize is the maximum size of stellar.toml file
const WellKnownPath = "/.well-known/stellar.toml"
WellKnownPath represents the url path at which the stellar.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 Stellar.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 Stellar.toml file using the internet.
func (*Client) GetStellarToml ¶
GetStellarToml returns stellar.toml file for a given domain
Example ¶
ExampleGetTOML gets the stellar.toml file for coins.asia
_, err := DefaultClient.GetStellarToml("coins.asia")
if err != nil {
log.Fatal(err)
}
type ClientInterface ¶
type Currency ¶
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 stellartoml client.
func (*MockClient) GetStellarToml ¶
func (m *MockClient) GetStellarToml(domain string) (*Response, error)
GetStellarToml is a mocking a method
func (*MockClient) GetStellarTomlByAddress ¶
func (m *MockClient) GetStellarTomlByAddress(address string) (*Response, error)
GetStellarTomlByAddress is a mocking a method
type Principal ¶
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"`
HorizonUrl 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"`
}
SEP-1 commit https://github.com/stellar/stellar-protocol/blob/f8993e36fa6b5b8bba1254c21c2174d250af4958/ecosystem/sep-0001.md
func GetStellarToml ¶
GetStellarToml returns stellar.toml file for a given domain
func GetStellarTomlByAddress ¶
GetStellarTomlByAddress returns stellar.toml file of a domain fetched from a given address