lib/jiralicious/session.rb in jiralicious-0.4.3 vs lib/jiralicious/session.rb in jiralicious-0.5.0
- old
+ new
@@ -1,61 +1,61 @@
-# encoding: utf-8
-require 'jiralicious/configuration'
-
-module Jiralicious
- ##
- # The Session class handles the interactions with the Jira Rest API
- # Through the HTTParty gem.
- #
- class Session
- include HTTParty
-
- # Sets the default format to JSON for send and return
- format :json
- # Sets the default headers to application/json for send and return
- headers 'Content-Type' => 'application/json'
-
- ##
- # Main access method to request data from the Jira API
- #
- # [Arguments]
- # :method (required) http method type
- #
- # :options (required) request specific options
- #
- def request(method, *options)
- if options.last.is_a?(Hash) && options.last[:handler]
- response_handler = options.last.delete(:handler)
- else
- response_handler = handler
- end
-
- self.class.base_uri Jiralicious.uri
- before_request if respond_to?(:before_request)
- response = self.class.send(method, *options)
- after_request(response) if respond_to?(:after_request)
-
- response_handler.call(response)
- end
-
- private
-
- ##
- # Configures the default handler. This can be overridden in
- # the child class to provide additional error handling.
- #
- def handler
- Proc.new do |response|
- case response
- when 200..204
- response.body
- else
- message = response.body
- if message.is_a?(Hash)
- message = message['errorMessages'].join('\n')
- end
- Jiralicious::JiraError.new(message)
- end
- end
- end
- end
-end
+# encoding: utf-8
+require 'jiralicious/configuration'
+
+module Jiralicious
+ ##
+ # The Session class handles the interactions with the Jira Rest API
+ # Through the HTTParty gem.
+ #
+ class Session
+ include HTTParty
+
+ # Sets the default format to JSON for send and return
+ format :json
+ # Sets the default headers to application/json for send and return
+ headers 'Content-Type' => 'application/json'
+
+ ##
+ # Main access method to request data from the Jira API
+ #
+ # [Arguments]
+ # :method (required) http method type
+ #
+ # :options (required) request specific options
+ #
+ def request(method, *options)
+ if options.last.is_a?(Hash) && options.last[:handler]
+ response_handler = options.last.delete(:handler)
+ else
+ response_handler = handler
+ end
+
+ self.class.base_uri Jiralicious.uri
+ before_request if respond_to?(:before_request)
+ response = self.class.send(method, *options)
+ after_request(response) if respond_to?(:after_request)
+
+ response_handler.call(response)
+ end
+
+ private
+
+ ##
+ # Configures the default handler. This can be overridden in
+ # the child class to provide additional error handling.
+ #
+ def handler
+ Proc.new do |response|
+ case response
+ when 200..204
+ response.body
+ else
+ message = response.body
+ if message.is_a?(Hash)
+ message = message['errorMessages'].join('\n')
+ end
+ Jiralicious::JiraError.new(message)
+ end
+ end
+ end
+ end
+end