src/server/pkg/hashtree/cache.go
func (c *MergeCache) Get(id int64, w io.Writer, filter Filter) (retErr error) {
	r, err := c.Cache.Get(fmt.Sprint(id))
	if err != nil {
		return err
	}
	defer func() {
		if err := r.Close(); err != nil && retErr == nil {
			retErr = err
		}
	}()
	return NewWriter(w).Copy(NewReader(r, filter))
}
func (c *MergeCache) Get(id int64, w io.Writer, filter Filter) (retErr error) {
	r, err := c.Cache.Get(fmt.Sprint(id))
	if err != nil {
		return err
	}
	defer func() {
		if err := r.Close(); err != nil && retErr == nil {
			retErr = err
		}
	}()
	return NewWriter(w).Copy(NewReader(r, filter))
}
// Get does a filtered write of id's hashtree to the passed in io.Writer.