Class: Aranha::Rails::Manager
- Inherits:
-
Manager
- Object
- Manager
- Aranha::Rails::Manager
- Includes:
- Singleton
- Defined in:
- lib/aranha/rails/manager.rb
Instance Method Summary collapse
- #add_address(url, processor, extra_data = nil) ⇒ Object
- #addresses_count ⇒ Object
- #clear_expired_addresses ⇒ Object
- #log_info(message) ⇒ Object
- #log_warn(message) ⇒ Object
- #start_points_to_addresses ⇒ Object
- #unprocessed_addresses ⇒ Object
Instance Method Details
#add_address(url, processor, extra_data = nil) ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'lib/aranha/rails/manager.rb', line 11 def add_address(url, processor, extra_data = nil) ::Rails.logger.info("Adding \"#{url} | #{processor} | #{extra_data}\"") a = ::Aranha::Address.find_or_initialize_by(url: ::Aranha::Address.sanitize_url(url)) a.processor = processor a.extra_data = extra_data.to_yaml a.save! a.check_scheduling end |
#addresses_count ⇒ Object
20 21 22 |
# File 'lib/aranha/rails/manager.rb', line 20 def addresses_count ::Aranha::Address.count end |
#clear_expired_addresses ⇒ Object
24 25 26 27 28 |
# File 'lib/aranha/rails/manager.rb', line 24 def clear_expired_addresses q = ::Aranha::Address.expired(::Time.zone.now) ::Rails.logger.info("Addresses expired: #{q.count}") q.each(&:destroy) end |
#log_info(message) ⇒ Object
30 31 32 |
# File 'lib/aranha/rails/manager.rb', line 30 def log_info() ::Rails.logger.info() end |
#log_warn(message) ⇒ Object
34 35 36 |
# File 'lib/aranha/rails/manager.rb', line 34 def log_warn() ::Rails.logger.warn() end |
#start_points_to_addresses ⇒ Object
38 39 40 41 42 43 |
# File 'lib/aranha/rails/manager.rb', line 38 def start_points_to_addresses super ::Aranha::StartPoint.all.each do |sp| # rubocop:disable Rails/FindEach add_address(sp.uri, sp.processor_class, sp.extra_data) end end |