Class: Codesake::Core::Url
- Inherits:
-
Object
- Object
- Codesake::Core::Url
- Defined in:
- lib/codesake/core/url.rb
Instance Attribute Summary collapse
-
#base_url ⇒ Object
readonly
Returns the value of attribute base_url.
-
#original_params ⇒ Object
readonly
Returns the value of attribute original_params.
-
#params ⇒ Object
readonly
Returns the value of attribute params.
-
#url ⇒ Object
readonly
Returns the value of attribute url.
Instance Method Summary collapse
- #fuzz(name, value) ⇒ Object
- #get(name) ⇒ Object
- #has_params? ⇒ Boolean
-
#initialize(url) ⇒ Url
constructor
A new instance of Url.
- #params_to_url ⇒ Object
- #reset ⇒ Object
- #set(name, value) ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize(url) ⇒ Url
Returns a new instance of Url.
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/codesake/core/url.rb', line 10 def initialize(url) @url = url @params = [] @original_params = [] @base_url = url.split('?')[0] if has_params? p_array = url.split('?')[1].split('&') p_array.each do |p| pp = p.split('=') param = {} param[:name] = pp[0] param[:value] = pp[1] unless pp[1].nil? @params << param @original_params << param.dup end @original_params.freeze end end |
Instance Attribute Details
#base_url ⇒ Object (readonly)
Returns the value of attribute base_url.
6 7 8 |
# File 'lib/codesake/core/url.rb', line 6 def base_url @base_url end |
#original_params ⇒ Object (readonly)
Returns the value of attribute original_params.
8 9 10 |
# File 'lib/codesake/core/url.rb', line 8 def original_params @original_params end |
#params ⇒ Object (readonly)
Returns the value of attribute params.
7 8 9 |
# File 'lib/codesake/core/url.rb', line 7 def params @params end |
#url ⇒ Object (readonly)
Returns the value of attribute url.
5 6 7 |
# File 'lib/codesake/core/url.rb', line 5 def url @url end |
Instance Method Details
#fuzz(name, value) ⇒ Object
34 35 36 37 |
# File 'lib/codesake/core/url.rb', line 34 def fuzz(name, value) set(name, value) "#{@base_url}?#{params_to_url}" end |
#get(name) ⇒ Object
39 40 41 42 43 44 45 |
# File 'lib/codesake/core/url.rb', line 39 def get(name) value = nil @params.each do |p| value = p[:value] if p[:name] == name end value end |
#has_params? ⇒ Boolean
60 61 62 |
# File 'lib/codesake/core/url.rb', line 60 def has_params? ! @url.split('?')[1].nil? end |
#params_to_url ⇒ Object
63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/codesake/core/url.rb', line 63 def params_to_url ret = "" @params.each do |p| ret += "#{p[:name]}=#{p[:value]}" if !(p == @params.last) ret +="&" end end ret end |
#reset ⇒ Object
53 54 55 56 57 58 |
# File 'lib/codesake/core/url.rb', line 53 def reset @params = [] @original_params.each do |p| @params << p.dup end end |
#set(name, value) ⇒ Object
47 48 49 50 51 |
# File 'lib/codesake/core/url.rb', line 47 def set(name, value) @params.each do |p| p[:value] = value if p[:name] == name end end |
#to_s ⇒ Object
30 31 32 |
# File 'lib/codesake/core/url.rb', line 30 def to_s "#{@base_url}?#{params_to_url}" end |