Documentation ¶
Index ¶
- func SignedHeadSchema() schema.Type
- type Option
- type Publisher
- func NewPublisher(address string, lsys ipld.LinkSystem, privKey ic.PrivKey, options ...Option) (*Publisher, error)
- func NewPublisherForListener(listener net.Listener, handlerPath string, lsys ipld.LinkSystem, ...) (*Publisher, error)
- func NewPublisherWithoutServer(address string, handlerPath string, lsys ipld.LinkSystem, privKey ic.PrivKey, ...) (*Publisher, error)
- func (p *Publisher) Addrs() []multiaddr.Multiaddr
- func (p *Publisher) AnnounceHead(ctx context.Context) error
- func (p *Publisher) AnnounceHeadWithAddrs(ctx context.Context, addrs []multiaddr.Multiaddr) error
- func (p *Publisher) Close() error
- func (p *Publisher) ID() peer.ID
- func (p *Publisher) Protocol() int
- func (p *Publisher) ServeHTTP(w http.ResponseWriter, r *http.Request)
- func (p *Publisher) SetRoot(_ context.Context, c cid.Cid) error
- func (p *Publisher) UpdateRoot(ctx context.Context, c cid.Cid) error
- func (p *Publisher) UpdateRootWithAddrs(ctx context.Context, c cid.Cid, addrs []multiaddr.Multiaddr) error
- type Sync
- type Syncer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func SignedHeadSchema ¶
Types ¶
type Option ¶
type Option func(*config) error
Option is a function that sets a value in a config.
func WithAnnounceSenders ¶
WithAnnounceSenders sets announce.Senders to use for sending announcements.
func WithExtraData ¶
WithExtraData sets the extra data to include in the pubsub message.
type Publisher ¶ added in v0.0.5
type Publisher struct {
// contains filtered or unexported fields
}
Publisher is an HTTP publisher that announces the head of an advertisement chain to a set of configured senders.
func NewPublisher ¶
func NewPublisher(address string, lsys ipld.LinkSystem, privKey ic.PrivKey, options ...Option) (*Publisher, error)
NewPublisher creates a new http publisher, listening on the specified address.
func NewPublisherForListener ¶ added in v0.1.0
func NewPublisherForListener(listener net.Listener, handlerPath string, lsys ipld.LinkSystem, privKey ic.PrivKey, options ...Option) (*Publisher, error)
NewPublisherForListener creates a new http publisher for an existing listener. When providing an existing listener, running the HTTP server is the caller's responsibility. ServeHTTP on the returned Publisher can be used to handle requests. handlerPath is the path to handle requests on, e.g. "ipni" for `/ipni/...` requests.
DEPRECATED: use NewPublisherWithoutServer(listener.Addr(), ...)
func NewPublisherWithoutServer ¶ added in v0.2.3
func NewPublisherWithoutServer(address string, handlerPath string, lsys ipld.LinkSystem, privKey ic.PrivKey, options ...Option) (*Publisher, error)
NewPublisherWithoutServer creates a new http publisher for an existing network address. When providing an existing network address, running the HTTP server is the caller's responsibility. ServeHTTP on the returned Publisher can be used to handle requests. handlerPath is the path to handle requests on, e.g. "ipni" for `/ipni/...` requests.
func (*Publisher) Addrs ¶ added in v0.0.5
func (p *Publisher) Addrs() []multiaddr.Multiaddr
Addrs returns the addresses, as []multiaddress, that the Publisher is listening on.
func (*Publisher) AnnounceHead ¶ added in v0.0.5
AnnounceHead announces the head of the advertisement chain to the configured senders.
func (*Publisher) AnnounceHeadWithAddrs ¶ added in v0.0.5
AnnounceHeadWithAddrs announces the head of the advertisement chain to the configured senders, with the provided addresses.
func (*Publisher) Protocol ¶ added in v0.0.5
Protocol returns the multihash protocol ID of the transport used by the publisher.
func (*Publisher) ServeHTTP ¶ added in v0.0.5
func (p *Publisher) ServeHTTP(w http.ResponseWriter, r *http.Request)
ServeHTTP implements the http.Handler interface.
func (*Publisher) UpdateRoot ¶ added in v0.0.5
UpdateRoot updates the head of the advertisement chain and announces it to the configured senders.
type Sync ¶
type Sync struct {
// contains filtered or unexported fields
}
Sync provides sync functionality for use with all http syncs.