Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PeerManagerFactory ¶
type PeerManagerFactory func(ctx context.Context, id uint64) bssession.SessionPeerManager
PeerManagerFactory generates a new peer manager for a session.
type Session ¶
type Session interface { exchange.Fetcher ID() uint64 ReceiveFrom(peer.ID, []cid.Cid, []cid.Cid, []cid.Cid) }
Session is a session that is managed by the session manager
type SessionFactory ¶
type SessionFactory func(ctx context.Context, id uint64, sprm bssession.SessionPeerManager, sim *bssim.SessionInterestManager, pm bssession.PeerManager, bpm *bsbpm.BlockPresenceManager, notif notifications.PubSub, provSearchDelay time.Duration, rebroadcastDelay delay.D, self peer.ID) Session
SessionFactory generates a new session for the SessionManager to track.
type SessionManager ¶
type SessionManager struct {
// contains filtered or unexported fields
}
SessionManager is responsible for creating, managing, and dispatching to sessions.
func New ¶
func New(ctx context.Context, sessionFactory SessionFactory, sessionInterestManager *bssim.SessionInterestManager, peerManagerFactory PeerManagerFactory, blockPresenceManager *bsbpm.BlockPresenceManager, peerManager bssession.PeerManager, notif notifications.PubSub, self peer.ID) *SessionManager
New creates a new SessionManager.
func (*SessionManager) GetNextSessionID ¶
func (sm *SessionManager) GetNextSessionID() uint64
GetNextSessionID returns the next sequential identifier for a session.
Click to show internal directories.
Click to hide internal directories.