Module: Karper::Packer

Defined in:
lib/karper/packer.rb

Constant Summary collapse

RLF =
/\r\n/

Class Method Summary collapse

Class Method Details

.map(values) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/karper/packer.rb', line 11

def self.map(values)
  values.map do |value|
    case value
    when String
      value.gsub(RLF, "\n")
    when Time
      pack_time(value)
    else
      value
    end
  end
end

.pack(object) ⇒ Object



24
25
26
# File 'lib/karper/packer.rb', line 24

def self.pack(object)
  MessagePack.pack(map(object.to_a))
end

.pack_time(value) ⇒ Object



7
8
9
# File 'lib/karper/packer.rb', line 7

def self.pack_time(value)
  value.strftime('%Y-%m-%dT%H:%M:%S.%3NZ')
end