Class: HTTPCommandParser
- Inherits:
-
Object
- Object
- HTTPCommandParser
- Defined in:
- lib/HTTPRequestDataParser/HTTPCommandParser.rb
Instance Attribute Summary collapse
-
#params ⇒ Object
Returns the value of attribute params.
-
#path_class_mapping ⇒ Object
Returns the value of attribute path_class_mapping.
-
#primary_key ⇒ Object
Returns the value of attribute primary_key.
-
#url_str ⇒ Object
Returns the value of attribute url_str.
Instance Method Summary collapse
-
#initialize(args) ⇒ HTTPCommandParser
constructor
A new instance of HTTPCommandParser.
- #parseCommand ⇒ Object
Constructor Details
#initialize(args) ⇒ HTTPCommandParser
Returns a new instance of HTTPCommandParser.
7 8 9 10 11 12 13 |
# File 'lib/HTTPRequestDataParser/HTTPCommandParser.rb', line 7 def initialize(args) @command = args @path_class_mapping = Hash.new @url_str = "" @params = "" @primary_key = "" end |
Instance Attribute Details
#params ⇒ Object
Returns the value of attribute params.
5 6 7 |
# File 'lib/HTTPRequestDataParser/HTTPCommandParser.rb', line 5 def params @params end |
#path_class_mapping ⇒ Object
Returns the value of attribute path_class_mapping.
5 6 7 |
# File 'lib/HTTPRequestDataParser/HTTPCommandParser.rb', line 5 def path_class_mapping @path_class_mapping end |
#primary_key ⇒ Object
Returns the value of attribute primary_key.
5 6 7 |
# File 'lib/HTTPRequestDataParser/HTTPCommandParser.rb', line 5 def primary_key @primary_key end |
#url_str ⇒ Object
Returns the value of attribute url_str.
5 6 7 |
# File 'lib/HTTPRequestDataParser/HTTPCommandParser.rb', line 5 def url_str @url_str end |
Instance Method Details
#parseCommand ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/HTTPRequestDataParser/HTTPCommandParser.rb', line 16 def parseCommand url_begin = false path_class_mapping_begin = false; primary_key_begin = false @command.each do |param| if param[0] == "-" flag=param[1] case flag when "u" url_begin = true path_class_mapping_begin = false @params = param.gsub '-u' , '-a' when "m" path_class_mapping_begin = true url_begin = false when "k" primary_key_begin = true path_class_mapping_begin = false url_begin = false end else if url_begin @url_str = param.delete "\"" elsif path_class_mapping_begin components = param.split(":") if components.length >=2 path = components[0] class_name = components[1] @path_class_mapping[path] = class_name else puts "command params error : please use -m [path]:[class_name] style" end elsif primary_key_begin @primary_key = param end end end if @url_str !=nil && @url_str !="" parser = HTTPRequestDataParser.new parser.flags = @params parser.primary_key = @primary_key parser.fetch(@url_str,@path_class_mapping) return true else return false end end |