code: func (c *CompressResponseWriter) Close() error {
  	if c.closed {
  		return nil
  	}
  	if !c.headersWritten {
  		c.prepareHeaders()
  	}
  	if c.compressionType != "" {
  		c.Header.Del("Content-Length")
  		if err := c.compressWriter.Close(); err != nil {
  			// TODO When writing directly to stream, an error will be generated
  			compressLog.Error("Close: Error closing compress writer", "type", c.compressionType, "error", err)
  		}
  
  	}
  	// Non-blocking write to the closenotifier, if we for some reason should
  	// get called multiple times
  	select {
  	case c.closeNotify <- true:
  	default:
  	}
  	c.closed = true
  	return nil
  }
docs: // Close the writer