class Params::Decoder
Attributes
hash[R]
params[R]
Public Class Methods
new(*args)
click to toggle source
# File lib/params/decoder.rb, line 7 def initialize *args raise "Decoder needs params to encode" if !args || args.empty? args = args.flatten options = args.last if options.kind_of? Hash @crypter = options.delete(:crypter) if options end @params = args.first end
Public Instance Methods
as_clean_hash(mode = :str)
click to toggle source
# File lib/params/decoder.rb, line 29 def as_clean_hash mode = :str clean_params(as_hash mode) end
as_hash(mode = :str)
click to toggle source
fx decoder.as_hash returns value of a
# File lib/params/decoder.rb, line 19 def as_hash mode = :str @hash ||= Hash[decoded.split('&').collect{|p| p.split("=")}] case mode when :sym Hash[hash.map{ |k, v| [k.to_sym, v] }] else hash end end
decoded()
click to toggle source
decode in reverse order!
# File lib/params/decoder.rb, line 34 def decoded @decoded ||= use_crypter? ? crypter.decrypt(decoded_params) : decoded_params end
Protected Instance Methods
crypter()
click to toggle source
# File lib/params/decoder.rb, line 44 def crypter Crypter.instance if crypter? end
decoded_params()
click to toggle source
# File lib/params/decoder.rb, line 40 def decoded_params Base64.decode64(params) end