module Rack::WebProfiler::View::Helpers::Collector

Collector helpers.

Public Instance Methods

collector_datas(collector, collection) click to toggle source

@param collector [Rack::WebProfiler::Collector::Definition] @param collection [Rack::WebProfiler::Model::CollectionRecord]

# File lib/rack/web_profiler/view.rb, line 232
def collector_datas(collector, collection)
  collector_data_storage(collector, collection, :datas)
end
collector_has_panel?(collector, collection) click to toggle source

@param collector [Rack::WebProfiler::Collector::Definition] @param collection [Rack::WebProfiler::Model::CollectionRecord]

# File lib/rack/web_profiler/view.rb, line 267
def collector_has_panel?(collector, collection)
  collector_data_storage(collector, collection, :show_panel)
  # !collector_panel(collector, collection).nil?
end
collector_has_tab?(collector, collection) click to toggle source

@param collector [Rack::WebProfiler::Collector::Definition] @param collection [Rack::WebProfiler::Model::CollectionRecord]

# File lib/rack/web_profiler/view.rb, line 259
def collector_has_tab?(collector, collection)
  collector_data_storage(collector, collection, :show_tab)
  # !collector_tab(collector, collection).nil?
end
collector_panel(collector, collection) click to toggle source

@param collector [Rack::WebProfiler::Collector::Definition] @param collection [Rack::WebProfiler::Model::CollectionRecord]

# File lib/rack/web_profiler/view.rb, line 249
def collector_panel(collector, collection)
  return nil unless collection_contains_datas_for_collector?(collection, collector)

  c = collector_view_context(collector, collection)
  c.panel_content
end
collector_status(collector, collection) click to toggle source

Get collector status from a collection.

@param collector [Rack::WebProfiler::Collector::Definition] @param collection [Rack::WebProfiler::Model::CollectionRecord]

@return [Symbol, nil]

# File lib/rack/web_profiler/view.rb, line 224
def collector_status(collector, collection)
  collector_data_storage(collector, collection, :status)
end
collector_tab(collector, collection) click to toggle source

@param collector [Rack::WebProfiler::Collector::Definition] @param collection [Rack::WebProfiler::Model::CollectionRecord]

# File lib/rack/web_profiler/view.rb, line 239
def collector_tab(collector, collection)
  return nil unless collection_contains_datas_for_collector?(collection, collector)

  c = collector_view_context(collector, collection)
  c.tab_content
end

Private Instance Methods

collection_contains_datas_for_collector?(collection, collector) click to toggle source

@param collector [Rack::WebProfiler::Collector::Definition] @param collection [Rack::WebProfiler::Model::CollectionRecord]

@return [Boolean]

# File lib/rack/web_profiler/view.rb, line 326
def collection_contains_datas_for_collector?(collection, collector)
  valid_collector?(collector) \
    && valid_collection?(collection) \
    && collection.datas.key?(collector.identifier.to_sym)
end
collector_data_storage(collector, collection, key = nil) click to toggle source

@param collector [Rack::WebProfiler::Collector::Definition] @param collection [Rack::WebProfiler::Model::CollectionRecord] @param key [Symbol, String]

@return

# File lib/rack/web_profiler/view.rb, line 295
def collector_data_storage(collector, collection, key = nil)
  return nil unless collection_contains_datas_for_collector?(collection, collector)

  storage = collection.datas[collector.identifier.to_sym]
  storage[key] if !key.nil? && storage.key?(key)
end
collector_view_context(collector, collection) click to toggle source

Get a collector view Context.

@param collector [Rack::WebProfiler::Collector::Definition] @param collection [Rack::WebProfiler::Model::CollectionRecord]

@return [Rack::WebProfiler::View::Context]

# File lib/rack/web_profiler/view.rb, line 280
def collector_view_context(collector, collection)
  collectors_view_context[collector.identifier] ||= begin
    v = WebProfiler::Collector::View.new(collector.template)
    v.result(collector: collector, collection: collection)
    v.context
  end
end
collectors_view_context() click to toggle source

Get the collectors view context.

@return [Hash]

# File lib/rack/web_profiler/view.rb, line 337
def collectors_view_context
  @collectors_view_context ||= {}
end
valid_collection?(collection) click to toggle source

Check if collection is valid.

@param collection [Rack::WebProfiler::Model::CollectionRecord]

@return [Boolean]

# File lib/rack/web_profiler/view.rb, line 317
def valid_collection?(collection)
  !collection.nil? \
    && collection.is_a?(WebProfiler::Model::CollectionRecord)
end
valid_collector?(collector) click to toggle source

Check if collector is valid.

@param collector [Rack::WebProfiler::Collector::Definition]

@return [Boolean]

# File lib/rack/web_profiler/view.rb, line 307
def valid_collector?(collector)
  !collector.nil? \
    && collector.is_a?(WebProfiler::Collector::Definition)
end