disqussion 0.0.4 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.travis.yml +4 -0
- data/.yardopts +9 -0
- data/HISTORY.mkd +4 -0
- data/lib/disqussion/connection.rb +4 -4
- data/lib/disqussion/version.rb +1 -1
- data/lib/faraday/disqussion/raise_http_4xx.rb +37 -0
- data/lib/faraday/disqussion/raise_http_5xx.rb +23 -0
- metadata +6 -4
- data/lib/faraday/response/raise_http_4xx.rb +0 -34
- data/lib/faraday/response/raise_http_5xx.rb +0 -20
    
        data/.travis.yml
    ADDED
    
    
    
        data/.yardopts
    ADDED
    
    
    
        data/HISTORY.mkd
    CHANGED
    
    
| @@ -1,6 +1,6 @@ | |
| 1 1 | 
             
            require 'faraday_middleware'
         | 
| 2 | 
            -
            require 'faraday/ | 
| 3 | 
            -
            require 'faraday/ | 
| 2 | 
            +
            require 'faraday/disqussion/raise_http_4xx'
         | 
| 3 | 
            +
            require 'faraday/disqussion/raise_http_5xx'
         | 
| 4 4 |  | 
| 5 5 | 
             
            module Disqussion
         | 
| 6 6 | 
             
              # @private
         | 
| @@ -18,7 +18,7 @@ module Disqussion | |
| 18 18 | 
             
                  Faraday.new(options) do |builder|
         | 
| 19 19 | 
             
                    builder.use Faraday::Request::Multipart
         | 
| 20 20 | 
             
                    builder.use Faraday::Request::UrlEncoded
         | 
| 21 | 
            -
                    builder.use Faraday:: | 
| 21 | 
            +
                    builder.use Faraday::Disqussion::RaiseHttp4xx
         | 
| 22 22 | 
             
                    builder.use Faraday::Response::Rashify unless raw
         | 
| 23 23 | 
             
                    unless raw
         | 
| 24 24 | 
             
                      case format.to_s.downcase
         | 
| @@ -28,7 +28,7 @@ module Disqussion | |
| 28 28 | 
             
                        builder.use Faraday::Response::ParseXml
         | 
| 29 29 | 
             
                      end
         | 
| 30 30 | 
             
                    end
         | 
| 31 | 
            -
                    builder.use Faraday:: | 
| 31 | 
            +
                    builder.use Faraday::Disqussion::RaiseHttp5xx
         | 
| 32 32 | 
             
                    builder.adapter(adapter)
         | 
| 33 33 | 
             
                  end
         | 
| 34 34 | 
             
                end
         | 
    
        data/lib/disqussion/version.rb
    CHANGED
    
    
| @@ -0,0 +1,37 @@ | |
| 1 | 
            +
            require 'faraday'
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # @private
         | 
| 4 | 
            +
            module Faraday
         | 
| 5 | 
            +
              module Disqussion
         | 
| 6 | 
            +
                # @private
         | 
| 7 | 
            +
                class RaiseHttp4xx < ::Faraday::Response::Middleware
         | 
| 8 | 
            +
                  def on_complete(env)
         | 
| 9 | 
            +
                    case env[:status].to_i
         | 
| 10 | 
            +
                    when 400
         | 
| 11 | 
            +
                      raise ::Disqussion::BadRequest.new(error_message(env), env[:response_headers])
         | 
| 12 | 
            +
                    when 401
         | 
| 13 | 
            +
                      raise ::Disqussion::Unauthorized.new(error_message(env), env[:response_headers])
         | 
| 14 | 
            +
                    when 403
         | 
| 15 | 
            +
                      raise ::Disqussion::Forbidden.new(error_message(env), env[:response_headers])
         | 
| 16 | 
            +
                    when 404
         | 
| 17 | 
            +
                      raise ::Disqussion::NotFound.new(error_message(env), env[:response_headers])
         | 
| 18 | 
            +
                    end
         | 
| 19 | 
            +
                  end
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                  private
         | 
| 22 | 
            +
             | 
| 23 | 
            +
                  def error_message(env)
         | 
| 24 | 
            +
                    "#{env[:method].to_s.upcase} #{env[:url].to_s}: (#{env[:status]}) #{error_body(env[:body])}"
         | 
| 25 | 
            +
                  end
         | 
| 26 | 
            +
             | 
| 27 | 
            +
                  def error_body(body)
         | 
| 28 | 
            +
                    if body['code'] && body['response']
         | 
| 29 | 
            +
                      "Disqus Error #{body['code']}: #{body['response']}"
         | 
| 30 | 
            +
                    else
         | 
| 31 | 
            +
                      nil
         | 
| 32 | 
            +
                    end
         | 
| 33 | 
            +
                  end
         | 
| 34 | 
            +
                end
         | 
| 35 | 
            +
              end
         | 
| 36 | 
            +
             | 
| 37 | 
            +
            end
         | 
| @@ -0,0 +1,23 @@ | |
| 1 | 
            +
            require 'faraday'
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # @private
         | 
| 4 | 
            +
            module Faraday
         | 
| 5 | 
            +
              module Disqussion
         | 
| 6 | 
            +
                # @private
         | 
| 7 | 
            +
                class RaiseHttp5xx < ::Faraday::Response::Middleware
         | 
| 8 | 
            +
                  def on_complete(env)
         | 
| 9 | 
            +
                    case env[:status].to_i
         | 
| 10 | 
            +
                    when 500
         | 
| 11 | 
            +
                      raise ::Disqussion::InternalServerError.new(error_message(env, "Something is technically wrong."), env[:response_headers])
         | 
| 12 | 
            +
                    end
         | 
| 13 | 
            +
                  end
         | 
| 14 | 
            +
              
         | 
| 15 | 
            +
                  private
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                  def error_message(env, body=nil)
         | 
| 18 | 
            +
                    "#{env[:method].to_s.upcase} #{env[:url].to_s}: #{[env[:status].to_s + ':', body].compact.join(' ')} Check http://status.disqus.com/ for updates on the status of the Disqus service."
         | 
| 19 | 
            +
                  end
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                end    
         | 
| 22 | 
            +
              end
         | 
| 23 | 
            +
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -2,7 +2,7 @@ | |
| 2 2 | 
             
            name: disqussion
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 4 | 
             
              prerelease: 
         | 
| 5 | 
            -
              version: 0.0. | 
| 5 | 
            +
              version: 0.0.5
         | 
| 6 6 | 
             
            platform: ruby
         | 
| 7 7 | 
             
            authors: 
         | 
| 8 8 | 
             
            - "J\xC3\xA9r\xC3\xA9my Van de Wyngaert"
         | 
| @@ -10,7 +10,7 @@ autorequire: | |
| 10 10 | 
             
            bindir: bin
         | 
| 11 11 | 
             
            cert_chain: []
         | 
| 12 12 |  | 
| 13 | 
            -
            date: 2011-05- | 
| 13 | 
            +
            date: 2011-05-23 00:00:00 +02:00
         | 
| 14 14 | 
             
            default_executable: 
         | 
| 15 15 | 
             
            dependencies: 
         | 
| 16 16 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| @@ -189,6 +189,8 @@ extra_rdoc_files: [] | |
| 189 189 |  | 
| 190 190 | 
             
            files: 
         | 
| 191 191 | 
             
            - .gitignore
         | 
| 192 | 
            +
            - .travis.yml
         | 
| 193 | 
            +
            - .yardopts
         | 
| 192 194 | 
             
            - Gemfile
         | 
| 193 195 | 
             
            - Gemfile.lock
         | 
| 194 196 | 
             
            - HISTORY.mkd
         | 
| @@ -221,8 +223,8 @@ files: | |
| 221 223 | 
             
            - lib/disqussion/version.rb
         | 
| 222 224 | 
             
            - lib/disqussion/view_helpers.rb
         | 
| 223 225 | 
             
            - lib/disqussion/widget.rb
         | 
| 224 | 
            -
            - lib/faraday/ | 
| 225 | 
            -
            - lib/faraday/ | 
| 226 | 
            +
            - lib/faraday/disqussion/raise_http_4xx.rb
         | 
| 227 | 
            +
            - lib/faraday/disqussion/raise_http_5xx.rb
         | 
| 226 228 | 
             
            - spec/disqussion/api_spec.rb
         | 
| 227 229 | 
             
            - spec/disqussion/client/.DS_Store
         | 
| 228 230 | 
             
            - spec/disqussion/client/applications_spec.rb
         | 
| @@ -1,34 +0,0 @@ | |
| 1 | 
            -
            require 'faraday'
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            # @private
         | 
| 4 | 
            -
            module Faraday
         | 
| 5 | 
            -
              # @private
         | 
| 6 | 
            -
              class Response::RaiseHttp4xx < Response::Middleware
         | 
| 7 | 
            -
                def on_complete(env)
         | 
| 8 | 
            -
                  case env[:status].to_i
         | 
| 9 | 
            -
                  when 400
         | 
| 10 | 
            -
                    raise Disqussion::BadRequest.new(error_message(env), env[:response_headers])
         | 
| 11 | 
            -
                  when 401
         | 
| 12 | 
            -
                    raise Disqussion::Unauthorized.new(error_message(env), env[:response_headers])
         | 
| 13 | 
            -
                  when 403
         | 
| 14 | 
            -
                    raise Disqussion::Forbidden.new(error_message(env), env[:response_headers])
         | 
| 15 | 
            -
                  when 404
         | 
| 16 | 
            -
                    raise Disqussion::NotFound.new(error_message(env), env[:response_headers])
         | 
| 17 | 
            -
                  end
         | 
| 18 | 
            -
                end
         | 
| 19 | 
            -
             | 
| 20 | 
            -
                private
         | 
| 21 | 
            -
             | 
| 22 | 
            -
                def error_message(env)
         | 
| 23 | 
            -
                  "#{env[:method].to_s.upcase} #{env[:url].to_s}: (#{env[:status]}) #{error_body(env[:body])}"
         | 
| 24 | 
            -
                end
         | 
| 25 | 
            -
             | 
| 26 | 
            -
                def error_body(body)
         | 
| 27 | 
            -
                  if body['code'] && body['response']
         | 
| 28 | 
            -
                    "Disqus Error #{body['code']}: #{body['response']}"
         | 
| 29 | 
            -
                  else
         | 
| 30 | 
            -
                    nil
         | 
| 31 | 
            -
                  end
         | 
| 32 | 
            -
                end
         | 
| 33 | 
            -
              end
         | 
| 34 | 
            -
            end
         | 
| @@ -1,20 +0,0 @@ | |
| 1 | 
            -
            require 'faraday'
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            # @private
         | 
| 4 | 
            -
            module Faraday
         | 
| 5 | 
            -
              # @private
         | 
| 6 | 
            -
              class Response::RaiseHttp5xx < Response::Middleware
         | 
| 7 | 
            -
                def on_complete(env)
         | 
| 8 | 
            -
                  case env[:status].to_i
         | 
| 9 | 
            -
                  when 500
         | 
| 10 | 
            -
                    raise Disqussion::InternalServerError.new(error_message(env, "Something is technically wrong."), env[:response_headers])
         | 
| 11 | 
            -
                  end
         | 
| 12 | 
            -
                end
         | 
| 13 | 
            -
             | 
| 14 | 
            -
                private
         | 
| 15 | 
            -
             | 
| 16 | 
            -
                def error_message(env, body=nil)
         | 
| 17 | 
            -
                  "#{env[:method].to_s.upcase} #{env[:url].to_s}: #{[env[:status].to_s + ':', body].compact.join(' ')} Check http://status.disqus.com/ for updates on the status of the Disqus service."
         | 
| 18 | 
            -
                end
         | 
| 19 | 
            -
              end
         | 
| 20 | 
            -
            end
         |