Sha256: a56725f97432414856cd6e1495e7f8c1a04185cc41598cf3a0c079df058ae21b

Contents?: true

Size: 511 Bytes

Versions: 18

Compression:

Stored size: 511 Bytes

Contents

# frozen_string_literal: true

module Kafka
  class SnappyCodec
    def codec_id
      2
    end

    def produce_api_min_version
      0
    end

    def load
      require "snappy"
    rescue LoadError
      raise LoadError,
        "Using snappy compression requires adding a dependency on the `snappy` gem to your Gemfile."
    end

    def compress(data)
      Snappy.deflate(data)
    end

    def decompress(data)
      buffer = StringIO.new(data)
      Snappy::Reader.new(buffer).read
    end
  end
end

Version data entries

18 entries across 18 versions & 3 rubygems

Version Path
ruby-kafka-1.5.0 lib/kafka/snappy_codec.rb
ruby-kafka-aws-iam-1.4.5 lib/kafka/snappy_codec.rb
ruby-kafka-aws-iam-1.4.4 lib/kafka/snappy_codec.rb
ruby-kafka-aws-iam-1.4.3 lib/kafka/snappy_codec.rb
ruby-kafka-aws-iam-1.4.2 lib/kafka/snappy_codec.rb
ruby-kafka-aws-iam-1.4.1 lib/kafka/snappy_codec.rb
ruby-kafka-1.4.0 lib/kafka/snappy_codec.rb
ruby-kafka-temp-fork-0.0.2 lib/kafka/snappy_codec.rb
ruby-kafka-temp-fork-0.0.1 lib/kafka/snappy_codec.rb
ruby-kafka-1.3.0 lib/kafka/snappy_codec.rb
ruby-kafka-1.2.0 lib/kafka/snappy_codec.rb
ruby-kafka-1.1.0 lib/kafka/snappy_codec.rb
ruby-kafka-1.1.0.beta1 lib/kafka/snappy_codec.rb
ruby-kafka-1.0.0 lib/kafka/snappy_codec.rb
ruby-kafka-0.7.10 lib/kafka/snappy_codec.rb
ruby-kafka-0.7.9 lib/kafka/snappy_codec.rb
ruby-kafka-0.7.8 lib/kafka/snappy_codec.rb
ruby-kafka-0.7.7 lib/kafka/snappy_codec.rb