[][src]Struct ilp_node::InterledgerNode

pub struct InterledgerNode {
    pub ilp_address: Option<Address>,
    pub secret_seed: [u8; 32],
    pub admin_auth_token: String,
    pub redis_connection: ConnectionInfo,
    pub http_bind_address: SocketAddr,
    pub settlement_api_bind_address: SocketAddr,
    pub default_spsp_account: Option<Username>,
    pub route_broadcast_interval: Option<u64>,
    pub exchange_rate_poll_interval: u64,
    pub exchange_rate_provider: Option<ExchangeRateProvider>,
    pub exchange_rate_spread: f64,
}

An all-in-one Interledger node that includes sender and receiver functionality, a connector, and a management API. The node uses Redis for persistence.

Fields

ilp_address: Option<Address>

ILP address of the node

secret_seed: [u8; 32]

Root secret used to derive encryption keys

admin_auth_token: String

HTTP Authorization token for the node admin (sent as a Bearer token)

redis_connection: ConnectionInfo

Redis URI (for example, "redis://127.0.0.1:6379" or "unix:/tmp/redis.sock")

http_bind_address: SocketAddr

IP address and port to listen for HTTP connections This is used for both the API and ILP over HTTP packets

settlement_api_bind_address: SocketAddr

IP address and port to listen for the Settlement Engine API

default_spsp_account: Option<Username>

When SPSP payments are sent to the root domain, the payment pointer is resolved to /.well-known/pay. This value determines which account those payments will be sent to.

route_broadcast_interval: Option<u64>

Interval, defined in milliseconds, on which the node will broadcast routing information to other nodes using CCP. Defaults to 30000ms (30 seconds).

exchange_rate_poll_interval: u64

Interval, defined in milliseconds, on which the node will poll the exchange rate provider. Defaults to 60000ms (60 seconds).

exchange_rate_provider: Option<ExchangeRateProvider>

API to poll for exchange rates. Currently the supported options are:

  • CoinCap
  • CryptoCompare (note this requires an API key) If this value is not set, the node will not poll for exchange rates and will instead use the rates configured via the HTTP API.
exchange_rate_spread: f64

Methods

impl InterledgerNode[src]

pub fn serve(&self) -> impl Future<Item = (), Error = ()>[src]

Returns a future that runs the Interledger Node

pub fn run(&self)[src]

Run the node on the default Tokio runtime

Trait Implementations

impl Clone for InterledgerNode[src]

impl<'de> Deserialize<'de> for InterledgerNode[src]

Auto Trait Implementations

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Err = <U as TryFrom<T>>::Err

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

impl<T> Erased for T