lib/pairing_matrix/server/server.rb in pairing_matrix-2.3.1 vs lib/pairing_matrix/server/server.rb in pairing_matrix-3.0.0
- old
+ new
@@ -1,13 +1,14 @@
require 'sinatra/base'
require 'puma'
require 'json'
require_relative '../../pairing_matrix'
require_relative '../config/config_reader'
-require_relative '../commit_reader'
-require_relative '../commit_cache'
-require_relative '../github_commit_reader'
+require_relative '../cache/commit_cache'
+require_relative '../commit_readers/local_commit_reader'
+require_relative '../commit_readers/github_commit_reader'
+require_relative '../commit_readers/gitlab_commit_reader'
module PairingMatrix
class Server < Sinatra::Base
set :bind, '0.0.0.0'
set :server, :puma
@@ -24,15 +25,22 @@
end
PairingMatrix.enable_caching = true
config_reader = PairingMatrix::ConfigReader.new('pairing_matrix.yml')
config = config_reader.config
- commit_reader = PairingMatrix::CommitReader.new(config)
- commit_reader = PairingMatrix::GithubCommitReader.new(config) if config.fetch_from_github?
+ local_commit_reader = PairingMatrix::LocalCommitReader.new(config.local)
+ github_commit_reader = PairingMatrix::GithubCommitReader.new(config.github)
+ gitlab_commit_reader = PairingMatrix::GitlabCommitReader.new(config.gitlab)
+
get '/data/:days' do
PairingMatrix.enable_caching = params[:cache_enabled] != 'false'
- commit_reader.authors_with_commits(params['days'].to_i).to_json
+
+ local_data = local_commit_reader.authors_with_commits(params['days'].to_i)
+ github_data = github_commit_reader.authors_with_commits(params['days'].to_i)
+ gitlab_data = gitlab_commit_reader.authors_with_commits(params['days'].to_i)
+
+ (local_data + github_data + gitlab_data).to_json
end
get '/matrix' do
File.read(File.join(File.dirname(__FILE__), 'public/index.html'))
end