From 812388aeda99f0300fc119ca8af5f02036de97d6 Mon Sep 17 00:00:00 2001 From: Joel Low Date: Fri, 22 Jan 2016 16:40:24 +0800 Subject: [PATCH] Switch to flexirest, which is maintained. --- Gemfile.lock | 12 ++++++------ coursemology-evaluator.gemspec | 2 +- lib/coursemology/evaluator.rb | 5 +---- lib/coursemology/evaluator/client.rb | 2 +- lib/coursemology/evaluator/models/base.rb | 8 ++++---- .../evaluator/models/programming_evaluation.rb | 4 ++-- 6 files changed, 15 insertions(+), 18 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index d4853fd..2c80230 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,21 +2,16 @@ PATH remote: . specs: coursemology-evaluator (0.0.0) - active_rest_client (~> 1.2) activesupport (~> 4.2.0) coursemology-polyglot (>= 0.0.3) docker-api (>= 1.2.5) faraday_middleware + flexirest (~> 1.2) rubyzip GEM remote: https://rubygems.org/ specs: - active_rest_client (1.2.0) - activesupport - crack - faraday - multi_json activesupport (4.2.5) i18n (~> 0.7) json (~> 1.7, >= 1.7.7) @@ -50,6 +45,11 @@ GEM multipart-post (>= 1.2, < 3) faraday_middleware (0.10.0) faraday (>= 0.7.4, < 0.10) + flexirest (1.2.14) + activesupport + crack + faraday + multi_json http-cookie (1.0.2) domain_name (~> 0.5) i18n (0.7.0) diff --git a/coursemology-evaluator.gemspec b/coursemology-evaluator.gemspec index 2c55fbe..292e1e1 100644 --- a/coursemology-evaluator.gemspec +++ b/coursemology-evaluator.gemspec @@ -28,7 +28,7 @@ Gem::Specification.new do |spec| spec.add_development_dependency 'vcr' spec.add_dependency 'activesupport', '~> 4.2.0' - spec.add_dependency 'active_rest_client', '~> 1.2' + spec.add_dependency 'flexirest', '~> 1.2' spec.add_dependency 'faraday_middleware' spec.add_dependency 'coursemology-polyglot', '>= 0.0.3' diff --git a/lib/coursemology/evaluator.rb b/lib/coursemology/evaluator.rb index b66ae27..50c7a1f 100644 --- a/lib/coursemology/evaluator.rb +++ b/lib/coursemology/evaluator.rb @@ -1,5 +1,5 @@ require 'active_support/all' -require 'active_rest_client' +require 'flexirest' require 'faraday_middleware' require 'docker' require 'zip' @@ -25,9 +25,6 @@ module Coursemology::Evaluator # The logger to use for the client. mattr_reader(:logger) { ActiveSupport::Logger.new(STDOUT) } - # Application cache, like Rails. Currently nil. - mattr_reader(:cache) - def self.eager_load! super Coursemology::Polyglot.eager_load! diff --git a/lib/coursemology/evaluator/client.rb b/lib/coursemology/evaluator/client.rb index 4d27c32..4c71792 100644 --- a/lib/coursemology/evaluator/client.rb +++ b/lib/coursemology/evaluator/client.rb @@ -37,7 +37,7 @@ def allocate_evaluations end on_allocate(evaluations) - rescue ActiveRestClient::HTTPUnauthorisedClientException => e + rescue Flexirest::HTTPUnauthorisedClientException => e ActiveSupport::Notifications.publish('allocate_fail.client.evaluator.coursemology', e: e) end diff --git a/lib/coursemology/evaluator/models/base.rb b/lib/coursemology/evaluator/models/base.rb index b32ec7b..7e879a0 100644 --- a/lib/coursemology/evaluator/models/base.rb +++ b/lib/coursemology/evaluator/models/base.rb @@ -1,12 +1,12 @@ -class Coursemology::Evaluator::Models::Base < ActiveRestClient::Base +class Coursemology::Evaluator::Models::Base < Flexirest::Base class << self attr_accessor :api_user_email attr_accessor :api_token def initialize - ActiveRestClient::Base.perform_caching = false - default_config = ActiveRestClient::Base.faraday_config - ActiveRestClient::Base.faraday_config do |faraday| + Flexirest::Base.perform_caching = false + default_config = Flexirest::Base.faraday_config + Flexirest::Base.faraday_config do |faraday| # +follow_redirects+ must be added before declaring the adapter. See faraday_middleware#32, # last comment. faraday.response :follow_redirects diff --git a/lib/coursemology/evaluator/models/programming_evaluation.rb b/lib/coursemology/evaluator/models/programming_evaluation.rb index 814b121..79b23d3 100644 --- a/lib/coursemology/evaluator/models/programming_evaluation.rb +++ b/lib/coursemology/evaluator/models/programming_evaluation.rb @@ -54,8 +54,8 @@ def evaluate # @param [Hash] params The parameter to be part of the request. # @return [String] The response body. def plain_request(url, params = {}) - request = ActiveRestClient::Request.new({ url: url, method: :get, options: { plain: true } }, - self.class) + request = Flexirest::Request.new({ url: url, method: :get, options: { plain: true } }, + self.class) request.call(params) end end