Sha256: 0c75f07123dfff0ec1a863e2a4f8f7e799be3f693a4eca0412bbf6a73bc361a7

Contents?: true

Size: 634 Bytes

Versions: 38

Compression:

Stored size: 634 Bytes

Contents

# frozen_string_literal: true

module SplitIoClient
  NO_COMPRESSION = 0
  GZIP_COMPRESSION = 1
  ZLIB_COMPRESSION = 2

  module Helpers
    class DecryptionHelper
      def self.get_encoded_definition(compression, data)
        case compression
        when NO_COMPRESSION
          Base64.decode64(data)
        when GZIP_COMPRESSION
          gz = Zlib::GzipReader.new(StringIO.new(Base64.decode64(data)))
          gz.read
        when ZLIB_COMPRESSION
          Zlib::Inflate.inflate(Base64.decode64(data))
        else
          raise StandardError, 'Compression flag value is incorrect'
        end
      end
    end
  end
end

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
splitclient-rb-8.5.0-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.5.0 lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.5.0.pre.rc1-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.5.0.pre.rc1 lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.4.1.pre.rc1-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.4.1.pre.rc1 lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.4.0-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.4.0 lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.4.0.pre.rc1-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.4.0.pre.rc1 lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.4.0.rc.1-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.4.0.rc.1 lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.3.2.pre.rc2-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.3.2.pre.rc2 lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.3.2.pre.rc1-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.3.2.pre.rc1 lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.3.1-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.3.1 lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.3.1.pre.rc1-java lib/splitclient-rb/helpers/decryption_helper.rb
splitclient-rb-8.3.1.pre.rc1 lib/splitclient-rb/helpers/decryption_helper.rb