Class: PrivateGemServer::Scanner
- Inherits:
-
Object
- Object
- PrivateGemServer::Scanner
- Defined in:
- lib/private_gem_server/scanner.rb
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app, sources_path, temp_path) ⇒ Scanner
constructor
A new instance of Scanner.
- #scan! ⇒ Object
Constructor Details
Instance Method Details
#call(env) ⇒ Object
9 10 11 12 |
# File 'lib/private_gem_server/scanner.rb', line 9 def call(env) scan! if env['REQUEST_METHOD'] == 'GET' && env['PATH_INFO'] !~ %r{^/gems/} @app.call env end |
#scan! ⇒ Object
14 15 16 17 18 |
# File 'lib/private_gem_server/scanner.rb', line 14 def scan! @sources.values.map do |source| Thread.new { source.refresh! }.tap { |thread| thread.abort_on_exception = true } end.each(&:join) end |