package streams import "io" type MetadataStream struct { me *MetadataExtractor data chan interface{} } func (ms *MetadataStream) Read() (retval Metadata, err error) { data, ok := <-ms.data if !ok { err = io.EOF return } retval = data.(Metadata) return } func (ms *MetadataStream) Close() { ms.me.pubsub.Unsub(ms.data) }