class Nard::Appi::Client::Util::ArgsNormalizer
API へ送る情報を処理するクラス
Public Class Methods
execute( *args )
click to toggle source
# File lib/nard/appi/client/util/args_normalizer.rb, line 16 def self.execute( *args ) new( *args ).to_a end
new( *args )
click to toggle source
# File lib/nard/appi/client/util/args_normalizer.rb, line 20 def initialize( *args ) @args = [ args ].flatten @options = @args.extract_options! process_instance_variables unless has_options? end
Public Instance Methods
to_a()
click to toggle source
# File lib/nard/appi/client/util/args_normalizer.rb, line 27 def to_a [ @args, @options ] end
Private Instance Methods
has_options?()
click to toggle source
# File lib/nard/appi/client/util/args_normalizer.rb, line 33 def has_options? @options.present? end
options_from_uri( uri )
click to toggle source
# File lib/nard/appi/client/util/args_normalizer.rb, line 49 def options_from_uri( uri ) uri.query.present? ? Hash[ URI::decode_www_form( uri.query ) ] : {} end
process_instance_variables()
click to toggle source
# File lib/nard/appi/client/util/args_normalizer.rb, line 37 def process_instance_variables _args = @args.dup last_arg = @args.pop if last_arg.present? uri = URI.parse( last_arg.to_s ) @args = [ @args, uri.path ].flatten @options = options_from_uri( uri ) else @args = _args end end