powergate: github.com/textileio/powergate/api/client Index | Files

package client

import "github.com/textileio/powergate/api/client"

Index

Package Files

asks.go client.go deals.go faults.go ffs.go health.go miners.go net.go reputation.go wallet.go

Constants

const AuthKey = ctxKey("ffstoken")

AuthKey is the key that should be used to set the auth token in a Context.

type Asks Uses

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

Asks provides an API for viewing asks data.

func (*Asks) Get Uses

func (a *Asks) Get(ctx context.Context) (*ask.Index, error)

Get returns the current index of available asks.

func (*Asks) Query Uses

func (a *Asks) Query(ctx context.Context, query ask.Query) ([]ask.StorageAsk, error)

Query executes a query to retrieve active Asks.

type Client Uses

type Client struct {
    Asks       *Asks
    Miners     *Miners
    Faults     *Faults
    Deals      *Deals
    Wallet     *Wallet
    Reputation *Reputation
    FFS        *FFS
    Health     *Health
    Net        *Net
    // contains filtered or unexported fields
}

Client provides the client api.

func NewClient Uses

func NewClient(ma multiaddr.Multiaddr, opts ...grpc.DialOption) (*Client, error)

NewClient creates a client.

func (*Client) Close Uses

func (c *Client) Close() error

Close closes the client's grpc connection and cancels any active requests.

type Deals Uses

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

Deals provides an API for managing deals and storing data.

func (*Deals) ListRetrievalDealRecords Uses

func (d *Deals) ListRetrievalDealRecords(ctx context.Context, opts ...ListDealRecordsOption) ([]deals.RetrievalDealRecord, error)

ListRetrievalDealRecords returns a list of retrieval deals according to the provided options.

func (*Deals) ListStorageDealRecords Uses

func (d *Deals) ListStorageDealRecords(ctx context.Context, opts ...ListDealRecordsOption) ([]deals.StorageDealRecord, error)

ListStorageDealRecords returns a list of storage deals according to the provided options.

func (*Deals) Retrieve Uses

func (d *Deals) Retrieve(ctx context.Context, waddr string, cid cid.Cid) (io.Reader, error)

Retrieve is used to fetch data from filecoin.

func (*Deals) Store Uses

func (d *Deals) Store(ctx context.Context, addr string, data io.Reader, dealConfigs []deals.StorageDealConfig, minDuration uint64) ([]cid.Cid, []deals.StorageDealConfig, error)

Store creates a proposal deal for data using wallet addr to all miners indicated by dealConfigs for duration epochs.

func (*Deals) Watch Uses

func (d *Deals) Watch(ctx context.Context, proposals []cid.Cid) (<-chan WatchEvent, error)

Watch returns a channel with state changes of indicated proposals.

type FFS Uses

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

FFS provides the API to create and interact with an FFS instance.

func (*FFS) AddToHot Uses

func (f *FFS) AddToHot(ctx context.Context, data io.Reader) (*cid.Cid, error)

AddToHot allows you to add data to the Hot layer in preparation for pushing a cid config.

func (*FFS) Addrs Uses

func (f *FFS) Addrs(ctx context.Context) ([]api.AddrInfo, error)

Addrs returns a list of addresses managed by the FFS instance.

func (*FFS) CancelJob Uses

func (f *FFS) CancelJob(ctx context.Context, jid ffs.JobID) error

CancelJob signals that the executing Job with JobID jid should be canceled.

func (*FFS) Close Uses

func (f *FFS) Close(ctx context.Context) error

Close terminates the running FFS instance.

func (*FFS) Create Uses

func (f *FFS) Create(ctx context.Context) (string, string, error)

Create creates a new FFS instance, returning the instance ID and auth token.

func (*FFS) CreatePayChannel Uses

func (f *FFS) CreatePayChannel(ctx context.Context, from string, to string, amount uint64) (ffs.PaychInfo, cid.Cid, error)

CreatePayChannel creates a new payment channel.

func (*FFS) DefaultConfig Uses

func (f *FFS) DefaultConfig(ctx context.Context) (ffs.DefaultConfig, error)

DefaultConfig returns the default storage config.

func (*FFS) Get Uses

func (f *FFS) Get(ctx context.Context, c cid.Cid) (io.Reader, error)

Get returns an io.Reader for reading a stored Cid from the Hot Storage.

func (*FFS) GetCidConfig Uses

func (f *FFS) GetCidConfig(ctx context.Context, c cid.Cid) (*rpc.GetCidConfigResponse, error)

GetCidConfig gets the current config for a cid.

func (*FFS) GetDefaultCidConfig Uses

func (f *FFS) GetDefaultCidConfig(ctx context.Context, c cid.Cid) (ffs.CidConfig, error)

GetDefaultCidConfig returns a CidConfig built from the default storage config and prepped for the provided cid.

func (*FFS) ID Uses

func (f *FFS) ID(ctx context.Context) (ffs.APIID, error)

ID returns the FFS instance ID.

func (*FFS) Info Uses

func (f *FFS) Info(ctx context.Context) (api.InstanceInfo, error)

Info returns information about the FFS instance.

func (*FFS) ListAPI Uses

func (f *FFS) ListAPI(ctx context.Context) ([]ffs.APIID, error)

ListAPI returns a list of existing API instances.

func (*FFS) ListPayChannels Uses

func (f *FFS) ListPayChannels(ctx context.Context) ([]ffs.PaychInfo, error)

ListPayChannels returns a list of payment channels.

func (*FFS) ListRetrievalDealRecords Uses

func (f *FFS) ListRetrievalDealRecords(ctx context.Context, opts ...ListDealRecordsOption) ([]deals.RetrievalDealRecord, error)

ListRetrievalDealRecords returns a list of retrieval deals for the FFS instance according to the provided options.

func (*FFS) ListStorageDealRecords Uses

func (f *FFS) ListStorageDealRecords(ctx context.Context, opts ...ListDealRecordsOption) ([]deals.StorageDealRecord, error)

ListStorageDealRecords returns a list of storage deals for the FFS instance according to the provided options.

func (*FFS) NewAddr Uses

func (f *FFS) NewAddr(ctx context.Context, name string, options ...NewAddressOption) (string, error)

NewAddr created a new wallet address managed by the FFS instance.

func (*FFS) PushConfig Uses

func (f *FFS) PushConfig(ctx context.Context, c cid.Cid, opts ...PushConfigOption) (ffs.JobID, error)

PushConfig push a new configuration for the Cid in the Hot and Cold layers.

func (*FFS) RedeemPayChannel Uses

func (f *FFS) RedeemPayChannel(ctx context.Context, addr string) error

RedeemPayChannel redeems a payment channel.

func (*FFS) Remove Uses

func (f *FFS) Remove(ctx context.Context, c cid.Cid) error

Remove removes a Cid from being tracked as an active storage. The Cid should have both Hot and Cold storage disabled, if that isn't the case it will return ErrActiveInStorage.

func (*FFS) Replace Uses

func (f *FFS) Replace(ctx context.Context, c1 cid.Cid, c2 cid.Cid) (ffs.JobID, error)

Replace pushes a CidConfig of c2 equal to c1, and removes c1. This operation is more efficient than manually removing and adding in two separate operations.

func (*FFS) SendFil Uses

func (f *FFS) SendFil(ctx context.Context, from string, to string, amount int64) error

SendFil sends fil from a managed address to any another address, returns immediately but funds are sent asynchronously.

func (*FFS) SetDefaultConfig Uses

func (f *FFS) SetDefaultConfig(ctx context.Context, config ffs.DefaultConfig) error

SetDefaultConfig sets the default storage config.

func (*FFS) Show Uses

func (f *FFS) Show(ctx context.Context, c cid.Cid) (*rpc.ShowResponse, error)

Show returns information about the current storage state of a cid.

func (*FFS) WatchJobs Uses

func (f *FFS) WatchJobs(ctx context.Context, ch chan<- JobEvent, jids ...ffs.JobID) error

WatchJobs pushes JobEvents to the provided channel. The provided channel will be owned by the client after the call, so it shouldn't be closed by the client. To stop receiving events, the provided ctx should be canceled. If an error occurs, it will be returned in the Err field of JobEvent and the channel will be closed.

func (*FFS) WatchLogs Uses

func (f *FFS) WatchLogs(ctx context.Context, ch chan<- LogEvent, c cid.Cid, opts ...WatchLogsOption) error

WatchLogs pushes human-friendly messages about Cid executions. The method is blocking and will continue to send messages until the context is canceled. The provided channel is owned by the method and must not be closed.

type Faults Uses

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

Faults provides an API for viewing faults data.

func (*Faults) Get Uses

func (s *Faults) Get(ctx context.Context) (*faults.IndexSnapshot, error)

Get returns the current index of miner faults data.

type Health Uses

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

Health provides an API for checking node Health.

func (*Health) Check Uses

func (health *Health) Check(ctx context.Context) (h.Status, []string, error)

Check returns the node health status and any related messages.

type JobEvent Uses

type JobEvent struct {
    Job ffs.Job
    Err error
}

JobEvent represents an event for Watching a job.

type ListDealRecordsOption Uses

type ListDealRecordsOption func(*rpc.ListDealRecordsConfig)

ListDealRecordsOption updates a ListDealRecordsConfig.

func WithAscending Uses

func WithAscending(ascending bool) ListDealRecordsOption

WithAscending specifies to sort the results in ascending order. Default is descending order. Records are sorted by timestamp.

func WithDataCids Uses

func WithDataCids(cids ...string) ListDealRecordsOption

WithDataCids limits the results to deals for the provided data cids. If WithFromAddrs is also provided, this is an AND operation.

func WithFromAddrs Uses

func WithFromAddrs(addrs ...string) ListDealRecordsOption

WithFromAddrs limits the results deals initated from the provided wallet addresses. If WithDataCids is also provided, this is an AND operation.

func WithIncludeFinal Uses

func WithIncludeFinal(includeFinal bool) ListDealRecordsOption

WithIncludeFinal specifies whether or not to include final deals in the results. Default is false. Ignored for ListRetrievalDealRecords.

func WithIncludePending Uses

func WithIncludePending(includePending bool) ListDealRecordsOption

WithIncludePending specifies whether or not to include pending deals in the results. Default is false. Ignored for ListRetrievalDealRecords.

type LogEvent Uses

type LogEvent struct {
    LogEntry ffs.LogEntry
    Err      error
}

LogEvent represents an event for watching cid logs.

type Miners Uses

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

Miners provides an API for viewing miner data.

func (*Miners) Get Uses

func (a *Miners) Get(ctx context.Context) (*miner.IndexSnapshot, error)

Get returns the current index of available asks.

type Net Uses

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

Net provides the Net API.

func (*Net) ConnectPeer Uses

func (net *Net) ConnectPeer(ctx context.Context, addrInfo peer.AddrInfo) error

ConnectPeer connects to a peer.

func (*Net) Connectedness Uses

func (net *Net) Connectedness(ctx context.Context, peerID peer.ID) (n.Connectedness, error)

Connectedness returns the connection status to a peer.

func (*Net) DisconnectPeer Uses

func (net *Net) DisconnectPeer(ctx context.Context, peerID peer.ID) error

DisconnectPeer disconnects from a peer.

func (*Net) FindPeer Uses

func (net *Net) FindPeer(ctx context.Context, peerID peer.ID) (n.PeerInfo, error)

FindPeer finds a peer by peer id.

func (*Net) ListenAddr Uses

func (net *Net) ListenAddr(ctx context.Context) (peer.AddrInfo, error)

ListenAddr returns listener address info for the local node.

func (*Net) Peers Uses

func (net *Net) Peers(ctx context.Context) ([]n.PeerInfo, error)

Peers returns a list of peers.

type NewAddressOption Uses

type NewAddressOption func(r *rpc.NewAddrRequest)

NewAddressOption is a function that changes a NewAddressConfig.

func WithAddressType Uses

func WithAddressType(addressType string) NewAddressOption

WithAddressType specifies the type of address to create.

func WithMakeDefault Uses

func WithMakeDefault(makeDefault bool) NewAddressOption

WithMakeDefault specifies if the new address should become the default.

type PushConfigOption Uses

type PushConfigOption func(r *rpc.PushConfigRequest)

PushConfigOption mutates a push request.

func WithCidConfig Uses

func WithCidConfig(c ffs.CidConfig) PushConfigOption

WithCidConfig overrides the Api default Cid configuration.

func WithOverride Uses

func WithOverride(override bool) PushConfigOption

WithOverride allows a new push configuration to override an existing one. It's used as an extra security measure to avoid unwanted configuration changes.

type Reputation Uses

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

Reputation provides an API for viewing reputation data.

func (*Reputation) AddSource Uses

func (r *Reputation) AddSource(ctx context.Context, id string, maddr ma.Multiaddr) error

AddSource adds a new external Source to be considered for reputation generation.

func (*Reputation) GetTopMiners Uses

func (r *Reputation) GetTopMiners(ctx context.Context, limit int) ([]reputation.MinerScore, error)

GetTopMiners gets the top n miners with best score.

type TokenAuth Uses

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

TokenAuth provides token based auth.

func (TokenAuth) GetRequestMetadata Uses

func (t TokenAuth) GetRequestMetadata(ctx context.Context, _ ...string) (map[string]string, error)

GetRequestMetadata returns request metadata that includes the auth token.

func (TokenAuth) RequireTransportSecurity Uses

func (t TokenAuth) RequireTransportSecurity() bool

RequireTransportSecurity specifies if the connection should be secure.

type Wallet Uses

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

Wallet provides an API for managing filecoin wallets.

func (*Wallet) List Uses

func (w *Wallet) List(ctx context.Context) ([]string, error)

List returns all wallet addresses.

func (*Wallet) NewWallet Uses

func (w *Wallet) NewWallet(ctx context.Context, typ string) (string, error)

NewWallet creates a new filecoin address [bls|secp256k1].

func (*Wallet) WalletBalance Uses

func (w *Wallet) WalletBalance(ctx context.Context, address string) (uint64, error)

WalletBalance gets a filecoin wallet's balance.

type WatchEvent Uses

type WatchEvent struct {
    Deal deals.StorageDealInfo
    Err  error
}

WatchEvent is used to send data or error values for Watch.

type WatchLogsOption Uses

type WatchLogsOption func(r *rpc.WatchLogsRequest)

WatchLogsOption is a function that changes GetLogsConfig.

func WithHistory Uses

func WithHistory(enabled bool) WatchLogsOption

WithHistory indicates that prior history logs should be sent in the channel before getting real time logs.

func WithJidFilter Uses

func WithJidFilter(jid ffs.JobID) WatchLogsOption

WithJidFilter filters only log messages of a Cid related to the Job with id jid.

Package client imports 31 packages (graph) and is imported by 4 packages. Updated 2020-07-09. Refresh now. Tools for package owners.