Documentation ¶
Overview ¶
Package core implements the IpfsNode object and related methods.
Packages underneath core/ provide a (relatively) stable, low-level API to carry out most IPFS-related tasks. For more details on the other interfaces and how core/... fits into the bigger IPFS picture, see:
$ godoc github.com/ipfs/go-ipfs
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConstructPeerHostOpts ¶
type ConstructPeerHostOpts struct { AddrsFactory p2pbhost.AddrsFactory DisableNatPortMap bool DisableRelay bool EnableRelayHop bool ConnectionManager connmgr.ConnManager }
type IpfsNode ¶
type IpfsNode struct { // Self Identity peer.ID // the local node's identity Repo repo.Repo // Local node PrivateKey ic.PrivKey `optional:"true"` // the local node's private Key // Services Peerstore pstore.Peerstore `optional:"true"` // storage for other Peer instances Blockstore bstore.GCBlockstore // the block store (lower level) BaseBlocks node.BaseBlocks // the raw blockstore, no filestore wrapping GCLocker bstore.GCLocker // the locker used to protect the blockstore during gc Blocks bserv.BlockService // the block service, get/add blocks. DAG ipld.DAGService // the merkle dag service, get/add objects. Resolver *resolver.Resolver // the path resolution system Reporter metrics.Reporter `optional:"true"` Discovery discovery.Service `optional:"true"` RecordValidator record.Validator // Online PeerHost p2phost.Host `optional:"true"` // the network host (server+client) Bootstrapper io.Closer `optional:"true"` // the periodic bootstrapper Routing routing.Routing `optional:"true"` // the routing system. recommend ipfs-dht Exchange exchange.Interface // the block exchange + strategy (bitswap) AutoNAT *autonat.AutoNATService `optional:"true"` PubSub *pubsub.PubSub `optional:"true"` DHT *dht.IpfsDHT `optional:"true"` Process goprocess.Process // Flags IsOnline bool `optional:"true"` // Online is set when networking is enabled. IsDaemon bool `optional:"true"` // Daemon is set when running on a long-running daemon. // contains filtered or unexported fields }
IpfsNode is IPFS Core module. It represents an IPFS instance.
Click to show internal directories.
Click to hide internal directories.