Sha256: 3abe3702b66421adf93611a0bea9b14389a72de34dba43e1f51660aa9419f358

Contents?: true

Size: 980 Bytes

Versions: 31

Compression:

Stored size: 980 Bytes

Contents

# -*- encoding: utf-8 -*-

module Stomp
  #
  # == Purpose
  #
  # A general CODEC for STOMP 1.1 header keys and values.
  #
  # See:
  #
  # * http://stomp.github.com/index.html
  #
  # for encode/decode rules.
  #
  class HeaderCodec

    public

    # encode encodes header data per the STOMP 1.1 specification.
    def self.encode(in_string = nil)
      return in_string unless in_string
      ev = Stomp::ENCODE_VALUES # avoid typing below
      os = in_string + ""
      0.step(ev.length-2,2) do |i| # [encoded, decoded]
        os.gsub!(ev[i+1], ev[i])
      end
      os
    end

    # decode decodes header data per the STOMP 1.1 specification.
    def self.decode(in_string = nil)
      return in_string unless in_string
      ev = Stomp::DECODE_VALUES # avoid typing below
      os = in_string + ""
      0.step(ev.length-2,2) do |i| # [encoded, decoded]
        os.gsub!(ev[i], ev[i+1])
      end
      os
    end

  end # of class HeaderCodec

end # of module Stomp

Version data entries

31 entries across 29 versions & 2 rubygems

Version Path
stomp-1.4.10 lib/stomp/codec.rb
stomp-1.4.9 lib/stomp/codec.rb
stomp-1.4.8 lib/stomp/codec.rb
stomp-1.4.7 lib/stomp/codec.rb
stomp-1.4.6 lib/stomp/codec.rb
stomp-1.4.5 lib/stomp/codec.rb
stomp-1.4.4 lib/stomp/codec.rb
stomp-1.4.3 lib/stomp/codec.rb
stomp-1.4.2 lib/stomp/codec.rb
stomp-1.4.1 lib/stomp/codec.rb
stomp-1.4.0 lib/stomp/codec.rb
stomp-1.3.5 lib/stomp/codec.rb
stomp-1.3.4 lib/stomp/codec.rb
stomp-1.3.3 lib/stomp/codec.rb
stomp-1.3.2 lib/stomp/codec.rb
stomp-1.3.1 lib/stomp/codec.rb
stomp-1.3.0 lib/stomp/codec.rb
stomp-1.2.16 lib/stomp/codec.rb
stomp-1.2.14 lib/stomp/codec.rb
stomp-1.2.13 lib/stomp/codec.rb