 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ListenerInfo ¶
type ListenerInfo struct {
	// Application protocol identifier.
	Protocol string
	// Node identity
	Identity peer.ID
	// Local protocol stream address.
	Address ma.Multiaddr
	// Local protocol stream listener.
	Closer io.Closer
	// Flag indicating whether we're still accepting incoming connections, or
	// whether this application listener has been shutdown.
	Running bool
	Registry *ListenerRegistry
}
    ListenerInfo holds information on a p2p listener.
func (*ListenerInfo) Close ¶
func (c *ListenerInfo) Close() error
Close closes the listener. Does not affect child streams
type ListenerRegistry ¶
type ListenerRegistry struct {
	Listeners []*ListenerInfo
}
    ListenerRegistry is a collection of local application protocol listeners.
func (*ListenerRegistry) Deregister ¶
func (c *ListenerRegistry) Deregister(proto string) error
Deregister removes p2p listener from this registry
func (*ListenerRegistry) Register ¶
func (c *ListenerRegistry) Register(listenerInfo *ListenerInfo)
Register registers listenerInfo2 in this registry
type P2P ¶
type P2P struct {
	Listeners ListenerRegistry
	Streams   StreamRegistry
	// contains filtered or unexported fields
}
    P2P structure holds information on currently running streams/listeners
func (*P2P) CheckProtoExists ¶
CheckProtoExists checks whether a protocol handler is registered to mux handler
func (*P2P) Dial ¶
func (p2p *P2P) Dial(ctx context.Context, addr ma.Multiaddr, peer peer.ID, proto string, bindAddr ma.Multiaddr) (*ListenerInfo, error)
Dial creates new P2P stream to a remote listener
func (*P2P) NewListener ¶
func (p2p *P2P) NewListener(ctx context.Context, proto string, addr ma.Multiaddr) (*ListenerInfo, error)
NewListener creates new p2p listener
type P2PListener ¶
type P2PListener struct {
	// contains filtered or unexported fields
}
    P2PListener holds information on a listener
func (*P2PListener) Accept ¶
func (il *P2PListener) Accept() (net.Stream, error)
Accept waits for a connection from the listener
func (*P2PListener) Close ¶
func (il *P2PListener) Close() error
Close closes the listener and removes stream handler
type StreamInfo ¶
type StreamInfo struct {
	HandlerID uint64
	Protocol string
	LocalPeer peer.ID
	LocalAddr ma.Multiaddr
	RemotePeer peer.ID
	RemoteAddr ma.Multiaddr
	Local  manet.Conn
	Remote net.Stream
	Registry *StreamRegistry
}
    StreamInfo holds information on active incoming and outgoing p2p streams.
func (*StreamInfo) Close ¶
func (s *StreamInfo) Close() error
Close closes stream endpoints and deregisters it
func (*StreamInfo) Reset ¶ added in v0.4.11
func (s *StreamInfo) Reset() error
Reset closes stream endpoints and deregisters it
type StreamRegistry ¶
type StreamRegistry struct {
	Streams []*StreamInfo
	// contains filtered or unexported fields
}
    StreamRegistry is a collection of active incoming and outgoing protocol app streams.
func (*StreamRegistry) Deregister ¶
func (c *StreamRegistry) Deregister(handlerID uint64)
Deregister deregisters stream from the registry
func (*StreamRegistry) Register ¶
func (c *StreamRegistry) Register(streamInfo *StreamInfo)
Register registers a stream to the registry