api

package
v0.0.0-...-ced8335 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2018 License: MPL-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	AppStateForeground = AppState("active") // these constant values are kept in sync with React Native
	AppStateBackground = AppState("background")
	AppStateInactive   = AppState("inactive")

	AppStateInvalid = AppState("")
)

Specific app states see https://facebook.github.io/react-native/docs/appstate.html

Variables

View Source
var (
	// ErrWhisperClearIdentitiesFailure clearing whisper identities has failed.
	ErrWhisperClearIdentitiesFailure = errors.New("failed to clear whisper identities")
	// ErrWhisperIdentityInjectionFailure injecting whisper identities has failed.
	ErrWhisperIdentityInjectionFailure = errors.New("failed to inject identity into Whisper")
)

Functions

This section is empty.

Types

type AppState

type AppState string

AppState represents if the app is in foreground, background or some other state

func ParseAppState

func ParseAppState(stateString string) (AppState, error)

ParseAppState creates AppState from a string

func (AppState) String

func (a AppState) String() string

type ConnectionState

type ConnectionState struct {
	Offline   bool           `json:"offline"`
	Type      ConnectionType `json:"type"`
	Expensive bool           `json:"expensive"`
}

ConnectionState represents device connection state and type, as reported by mobile framework.

Zero value represents default assumption about network (online and unknown type).

func (ConnectionState) String

func (c ConnectionState) String() string

String formats ConnectionState for logs. Implements Stringer.

type ConnectionType

type ConnectionType byte

ConnectionType represents description of available connection types as reported by React Native (see https://facebook.github.io/react-native/docs/netinfo.html) We're interested mainly in 'wifi' and 'cellular', but other types are also may be used.

const (
	ConnectionUnknown  ConnectionType = iota
	ConnectionCellular                // cellular, LTE, 4G, 3G, EDGE, etc.
	ConnectionWifi                    // WIFI or iOS simulator
)

ConnectionType constants

func NewConnectionType

func NewConnectionType(s string) ConnectionType

NewConnectionType creates new ConnectionType from string.

type StatusAPI

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

StatusAPI provides API to access Status related functionality.

func NewStatusAPI

func NewStatusAPI() *StatusAPI

NewStatusAPI creates a new StatusAPI instance

func NewStatusAPIWithBackend

func NewStatusAPIWithBackend(b *StatusBackend) *StatusAPI

NewStatusAPIWithBackend creates a new StatusAPI instance using the passed backend.

func (*StatusAPI) AccountManager

func (api *StatusAPI) AccountManager() *account.Manager

AccountManager returns reference to account manager

func (*StatusAPI) AppStateChange

func (api *StatusAPI) AppStateChange(state string)

AppStateChange handles app state changes (background/foreground). state values: see https://facebook.github.io/react-native/docs/appstate.html

func (*StatusAPI) CallRPC

func (api *StatusAPI) CallRPC(inputJSON string) string

CallRPC executes RPC request on node's in-proc RPC server

func (*StatusAPI) CompleteTransaction

func (api *StatusAPI) CompleteTransaction(id string, password string) (gethcommon.Hash, error)

CompleteTransaction instructs backend to complete sending of a given transaction

func (*StatusAPI) CompleteTransactions

func (api *StatusAPI) CompleteTransactions(ids []string, password string) map[string]transactions.Result

CompleteTransactions instructs backend to complete sending of multiple transactions

func (*StatusAPI) ConnectionChange

func (api *StatusAPI) ConnectionChange(typ string, expensive bool)

ConnectionChange handles network state changes logic.

func (*StatusAPI) CreateAccount

func (api *StatusAPI) CreateAccount(password string) (address, pubKey, mnemonic string, err error)

CreateAccount creates an internal geth account BIP44-compatible keys are generated: CKD#1 is stored as account key, CKD#2 stored as sub-account root Public key of CKD#1 is returned, with CKD#2 securely encoded into account key file (to be used for sub-account derivations)

func (*StatusAPI) CreateAndInitCell

func (api *StatusAPI) CreateAndInitCell(chatID, js string) string

CreateAndInitCell creates a new jail cell context, with the given chatID as identifier. New context executes provided JavaScript code, right after the initialization.

func (*StatusAPI) CreateChildAccount

func (api *StatusAPI) CreateChildAccount(parentAddress, password string) (address, pubKey string, err error)

CreateChildAccount creates sub-account for an account identified by parent address. CKD#2 is used as root for master accounts (when parentAddress is ""). Otherwise (when parentAddress != ""), child is derived directly from parent.

func (*StatusAPI) DiscardTransaction

func (api *StatusAPI) DiscardTransaction(id string) error

DiscardTransaction discards a given transaction from transaction queue

func (*StatusAPI) DiscardTransactions

func (api *StatusAPI) DiscardTransactions(ids []string) map[string]error

DiscardTransactions discards given multiple transactions from transaction queue

func (*StatusAPI) JailCall

func (api *StatusAPI) JailCall(chatID, this, args string) string

JailCall executes given JavaScript function w/i a jail cell context identified by the chatID.

func (*StatusAPI) JailExecute

func (api *StatusAPI) JailExecute(chatID, code string) string

JailExecute allows to run arbitrary JS code within a jail cell.

func (*StatusAPI) JailManager

func (api *StatusAPI) JailManager() jail.Manager

JailManager returns reference to jail

func (*StatusAPI) JailParse

func (api *StatusAPI) JailParse(chatID string, js string) string

JailParse creates a new jail cell context, with the given chatID as identifier. New context executes provided JavaScript code, right after the initialization. DEPRECATED in favour of CreateAndInitCell.

func (*StatusAPI) Logout

func (api *StatusAPI) Logout() error

Logout clears whisper identities

func (*StatusAPI) Notify

func (api *StatusAPI) Notify(token string) string

Notify sends a push notification to the device with the given token. @deprecated

func (*StatusAPI) NotifyUsers

func (api *StatusAPI) NotifyUsers(message string, payload fcm.NotificationPayload, tokens ...string) error

NotifyUsers send notifications to users.

func (*StatusAPI) RecoverAccount

func (api *StatusAPI) RecoverAccount(password, mnemonic string) (address, pubKey string, err error)

RecoverAccount re-creates master key using given details. Once master key is re-generated, it is inserted into keystore (if not already there).

func (*StatusAPI) ResetChainData

func (api *StatusAPI) ResetChainData() error

ResetChainData remove chain data from data directory. Node is stopped, and new node is started, with clean data directory.

func (*StatusAPI) ResetChainDataAsync

func (api *StatusAPI) ResetChainDataAsync() <-chan error

ResetChainDataAsync remove chain data from data directory, in async manner

func (*StatusAPI) RestartNode

func (api *StatusAPI) RestartNode() error

RestartNode restart running Status node, fails if node is not running

func (*StatusAPI) RestartNodeAsync

func (api *StatusAPI) RestartNodeAsync() <-chan error

RestartNodeAsync restart running Status node, in async manner

func (*StatusAPI) SelectAccount

func (api *StatusAPI) SelectAccount(address, password string) error

SelectAccount selects current account, by verifying that address has corresponding account which can be decrypted using provided password. Once verification is done, decrypted key is injected into Whisper (as a single identity, all previous identities are removed).

func (*StatusAPI) SendTransaction

func (api *StatusAPI) SendTransaction(ctx context.Context, args transactions.SendTxArgs) (gethcommon.Hash, error)

SendTransaction creates a new transaction and waits until it's complete.

func (*StatusAPI) SetJailBaseJS

func (api *StatusAPI) SetJailBaseJS(js string)

SetJailBaseJS allows to setup initial JavaScript to be loaded on each jail.CreateAndInitCell().

func (*StatusAPI) StartNode

func (api *StatusAPI) StartNode(config *params.NodeConfig) error

StartNode start Status node, fails if node is already started

func (*StatusAPI) StartNodeAsync

func (api *StatusAPI) StartNodeAsync(config *params.NodeConfig) <-chan error

StartNodeAsync start Status node, fails if node is already started Returns immediately w/o waiting for node to start (see node.ready)

func (*StatusAPI) StatusNode

func (api *StatusAPI) StatusNode() *node.StatusNode

StatusNode returns reference to StatusNode.

func (*StatusAPI) StopNode

func (api *StatusAPI) StopNode() error

StopNode stop Status node. Stopped node cannot be resumed.

func (*StatusAPI) StopNodeAsync

func (api *StatusAPI) StopNodeAsync() <-chan error

StopNodeAsync stop Status node. Stopped node cannot be resumed. Returns immediately, w/o waiting for node to stop (see node.stopped)

func (*StatusAPI) TxQueueManager

func (api *StatusAPI) TxQueueManager() *transactions.Manager

TxQueueManager returns reference to account manager

func (*StatusAPI) VerifyAccountPassword

func (api *StatusAPI) VerifyAccountPassword(keyStoreDir, address, password string) (*keystore.Key, error)

VerifyAccountPassword tries to decrypt a given account key file, with a provided password. If no error is returned, then account is considered verified.

type StatusBackend

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

StatusBackend implements Status.im service

func NewStatusBackend

func NewStatusBackend() *StatusBackend

NewStatusBackend create a new NewStatusBackend instance

func (*StatusBackend) AccountManager

func (b *StatusBackend) AccountManager() *account.Manager

AccountManager returns reference to account manager

func (*StatusBackend) AppStateChange

func (b *StatusBackend) AppStateChange(state AppState)

AppStateChange handles app state changes (background/foreground).

func (*StatusBackend) CallRPC

func (b *StatusBackend) CallRPC(inputJSON string) string

CallRPC executes RPC request on node's in-proc RPC server

func (*StatusBackend) CompleteTransaction

func (b *StatusBackend) CompleteTransaction(id string, password string) (hash gethcommon.Hash, err error)

CompleteTransaction instructs backend to complete sending of a given transaction

func (*StatusBackend) CompleteTransactions

func (b *StatusBackend) CompleteTransactions(ids []string, password string) map[string]transactions.Result

CompleteTransactions instructs backend to complete sending of multiple transactions

func (*StatusBackend) ConnectionChange

func (b *StatusBackend) ConnectionChange(state ConnectionState)

ConnectionChange handles network state changes logic.

func (*StatusBackend) DiscardTransaction

func (b *StatusBackend) DiscardTransaction(id string) error

DiscardTransaction discards a given transaction from transaction queue

func (*StatusBackend) DiscardTransactions

func (b *StatusBackend) DiscardTransactions(ids []string) map[string]error

DiscardTransactions discards given multiple transactions from transaction queue

func (*StatusBackend) IsNodeRunning

func (b *StatusBackend) IsNodeRunning() bool

IsNodeRunning confirm that node is running

func (*StatusBackend) JailManager

func (b *StatusBackend) JailManager() jail.Manager

JailManager returns reference to jail

func (*StatusBackend) Logout

func (b *StatusBackend) Logout() error

Logout clears whisper identities.

func (*StatusBackend) ReSelectAccount

func (b *StatusBackend) ReSelectAccount() error

ReSelectAccount selects previously selected account, often, after node restart.

func (*StatusBackend) ResetChainData

func (b *StatusBackend) ResetChainData() error

ResetChainData remove chain data from data directory. Node is stopped, and new node is started, with clean data directory.

func (*StatusBackend) RestartNode

func (b *StatusBackend) RestartNode() error

RestartNode restart running Status node, fails if node is not running

func (*StatusBackend) SelectAccount

func (b *StatusBackend) SelectAccount(address, password string) error

SelectAccount selects current account, by verifying that address has corresponding account which can be decrypted using provided password. Once verification is done, decrypted key is injected into Whisper (as a single identity, all previous identities are removed).

func (*StatusBackend) SendTransaction

func (b *StatusBackend) SendTransaction(ctx context.Context, args transactions.SendTxArgs) (hash gethcommon.Hash, err error)

SendTransaction creates a new transaction and waits until it's complete.

func (*StatusBackend) StartNode

func (b *StatusBackend) StartNode(config *params.NodeConfig) error

StartNode start Status node, fails if node is already started

func (*StatusBackend) StatusNode

func (b *StatusBackend) StatusNode() *node.StatusNode

StatusNode returns reference to node manager

func (*StatusBackend) StopNode

func (b *StatusBackend) StopNode() error

StopNode stop Status node. Stopped node cannot be resumed.

func (*StatusBackend) TxQueueManager

func (b *StatusBackend) TxQueueManager() *transactions.Manager

TxQueueManager returns reference to transactions manager

Jump to

Keyboard shortcuts

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