// Close closes the listener. Does not affect child streamsClose()error}// ListenerRegistry is a collection of local application proto listeners.typeListenerRegistrystruct{Listenersmap[string]Listener}// Register registers listenerInfo2 in this registryfunc(c*ListenerRegistry)Register(listenerInfoListener){c.Listeners[listenerInfo.Protocol()]=listenerInfo}// Deregister removes p2p listener from this registryfunc(c*ListenerRegistry)Deregister(protostring){delete(c.Listeners,proto)}