Class: GPDRequest
- Inherits:
-
Object
- Object
- GPDRequest
- Defined in:
- lib/gpd-request.rb
Instance Method Summary collapse
- #array_delete(a, form_data = {}) ⇒ Object
- #delete(arg, form_data = {}) ⇒ Object
- #get(uri) ⇒ Object
-
#initialize(user = nil, pass = nil, headers = {}) ⇒ GPDRequest
constructor
A new instance of GPDRequest.
- #post(uri, form_data = {}) ⇒ Object
- #request(uri) ⇒ Object
- #string_delete(uri, form_data = {}) ⇒ Object
Constructor Details
#initialize(user = nil, pass = nil, headers = {}) ⇒ GPDRequest
Returns a new instance of GPDRequest.
10 11 12 13 14 15 |
# File 'lib/gpd-request.rb', line 10 def initialize(user=nil, pass=nil, headers={}) @headers = { "User-Agent" => "Ruby-GPDRequest" }.merge headers @username, @password = user, pass end |
Instance Method Details
#array_delete(a, form_data = {}) ⇒ Object
53 54 55 56 57 58 59 60 61 |
# File 'lib/gpd-request.rb', line 53 def array_delete(a, form_data={}) a.map do |uri| request(uri) do |url| req = Net::HTTP::Delete.new(url.path, @headers) req.set_form_data form_data unless form_data.empty? req end end end |
#delete(arg, form_data = {}) ⇒ Object
40 41 42 43 |
# File 'lib/gpd-request.rb', line 40 def delete(arg, form_data={}) methods = {String: :string_delete, Array: :array_delete} send (methods[arg.class.to_s.to_sym]), arg, form_data end |
#get(uri) ⇒ Object
28 29 30 |
# File 'lib/gpd-request.rb', line 28 def get(uri) request(uri) {|url| Net::HTTP::Get.new url.path, @headers } end |
#post(uri, form_data = {}) ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/gpd-request.rb', line 32 def post(uri, form_data={}) request(uri) do |url| req = Net::HTTP::Post.new(url.path, @headers) req.set_form_data form_data unless form_data.empty? req end end |
#request(uri) ⇒ Object
17 18 19 20 21 22 23 24 25 26 |
# File 'lib/gpd-request.rb', line 17 def request(uri) path = uri url = URI.parse(path) req = yield(url) req.basic_auth(@username, @password) if @user response = Net::HTTP.new(url.host, url.port).start do |http| http.request(req) end response end |
#string_delete(uri, form_data = {}) ⇒ Object
45 46 47 48 49 50 51 |
# File 'lib/gpd-request.rb', line 45 def string_delete(uri, form_data={}) request(uri) do |url| req = Net::HTTP::Delete.new(url.path, @headers) req.set_form_data form_data unless form_data.empty? req end end |