Class: DocomoWebMailer::Parser

Inherits:
Object
  • Object
show all
Defined in:
lib/docomo_web_mailer.rb

Overview

rcp で返ってきたデータをRubyフレンドリーにする

Class Method Summary collapse

Class Method Details

.hash_to_ruby(data) ⇒ Object

rcp で返ってきたHashデータをRubyフレンドリーにする



193
194
195
196
197
198
199
# File 'lib/docomo_web_mailer.rb', line 193

def self.hash_to_ruby(data)
  ret = {}
  for k,v in data
    ret[k]=rcp_to_ruby(v)
  end
  return ret
end

.rcp_to_ruby(data) ⇒ Object

rcp で返ってきたデータをRubyフレンドリーにする



201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
# File 'lib/docomo_web_mailer.rb', line 201

def self.rcp_to_ruby(data)
  case data
  when Hash
    if data.keys.size==1
      case data.keys[0]
      when '$T'
      if data["$T"].is_a? Array
          return TArray.new(data)
        end
      when '$A'
        if data["$A"].is_a? String
          return data["$A"].to_sym
        end
      end
    end
  if data['$R'] and data['$R'].is_a? String
      # data type is data['$R']
      case data['$R']
      when 'mailheaders'
        return Mailheaders.new( data )
      when 'mailsummary'
        return Mailsummary.new( data )
      when 'mimepartspec'
        return Mimepartspec.new( data )
      end
  end
    return hash_to_ruby(data)
  when Array
    ret = []
    for v in data
      ret << rcp_to_ruby(v)
    end
    return ret
  end
  return data
end