compression.go 645 B

12345678910111213141516171819202122232425262728293031
  1. package kafka
  2. import (
  3. "errors"
  4. "github.com/segmentio/kafka-go/compress"
  5. )
  6. type Compression = compress.Compression
  7. const (
  8. Gzip Compression = compress.Gzip
  9. Snappy Compression = compress.Snappy
  10. Lz4 Compression = compress.Lz4
  11. Zstd Compression = compress.Zstd
  12. )
  13. type CompressionCodec = compress.Codec
  14. var (
  15. errUnknownCodec = errors.New("the compression code is invalid or its codec has not been imported")
  16. )
  17. // resolveCodec looks up a codec by Code().
  18. func resolveCodec(code int8) (CompressionCodec, error) {
  19. codec := compress.Compression(code).Codec()
  20. if codec == nil {
  21. return nil, errUnknownCodec
  22. }
  23. return codec, nil
  24. }