Class: Sidekiq::Web

Inherits:
Object
  • Object
show all
Defined in:
lib/sidekiq/web.rb,
lib/sidekiq/web/csrf_protection.rb

Defined Under Namespace

Classes: CsrfProtection

Constant Summary collapse

ROOT =
File.expand_path("#{File.dirname(__FILE__)}/../../web")
VIEWS =
"#{ROOT}/views"
LOCALES =
["#{ROOT}/locales"]
LAYOUT =
"#{VIEWS}/layout.erb"
ASSETS =
"#{ROOT}/assets"
DEFAULT_TABS =
{
  "Dashboard" => "",
  "Busy" => "busy",
  "Queues" => "queues",
  "Retries" => "retries",
  "Scheduled" => "scheduled",
  "Dead" => "morgue",
  "Metrics" => "metrics"
}

Class Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Class Attribute Details

.app_urlObject

Returns the value of attribute app_url.



83
84
85
# File 'lib/sidekiq/web.rb', line 83

def app_url
  @app_url
end

.localesObject



55
56
57
# File 'lib/sidekiq/web.rb', line 55

def locales
  @locales ||= LOCALES
end

.redis_poolObject

Returns the value of attribute redis_pool.



83
84
85
# File 'lib/sidekiq/web.rb', line 83

def redis_pool
  @redis_pool
end

.viewsObject



59
60
61
# File 'lib/sidekiq/web.rb', line 59

def views
  @views ||= VIEWS
end

Class Method Details

.call(env) ⇒ Object



108
109
110
111
# File 'lib/sidekiq/web.rb', line 108

def self.call(env)
  @app ||= new
  @app.call(env)
end

.custom_job_info_rowsObject



51
52
53
# File 'lib/sidekiq/web.rb', line 51

def custom_job_info_rows
  @custom_job_info_rows ||= []
end

.custom_tabsObject Also known as: tabs



46
47
48
# File 'lib/sidekiq/web.rb', line 46

def custom_tabs
  @custom_tabs ||= {}
end

.default_tabsObject



42
43
44
# File 'lib/sidekiq/web.rb', line 42

def default_tabs
  DEFAULT_TABS
end

.disable(*opts) ⇒ Object



67
68
69
# File 'lib/sidekiq/web.rb', line 67

def disable(*opts)
  opts.each { |key| set(key, false) }
end

.enable(*opts) ⇒ Object



63
64
65
# File 'lib/sidekiq/web.rb', line 63

def enable(*opts)
  opts.each { |key| set(key, true) }
end

.inherited(child) ⇒ Object



87
88
89
90
# File 'lib/sidekiq/web.rb', line 87

def self.inherited(child)
  child.app_url = app_url
  child.redis_pool = redis_pool
end

.middlewaresObject



71
72
73
# File 'lib/sidekiq/web.rb', line 71

def middlewares
  @middlewares ||= []
end

.register(extension) ⇒ Object



129
130
131
# File 'lib/sidekiq/web.rb', line 129

def self.register(extension)
  extension.registered(WebApplication)
end

.set(attribute, value) ⇒ Object



79
80
81
# File 'lib/sidekiq/web.rb', line 79

def set(attribute, value)
  send(:"#{attribute}=", value)
end

.settingsObject



38
39
40
# File 'lib/sidekiq/web.rb', line 38

def settings
  self
end

.use(*args, &block) ⇒ Object



75
76
77
# File 'lib/sidekiq/web.rb', line 75

def use(*args, &block)
  middlewares << [args, block]
end

Instance Method Details

#appObject



113
114
115
# File 'lib/sidekiq/web.rb', line 113

def app
  @app ||= build
end

#call(env) ⇒ Object



104
105
106
# File 'lib/sidekiq/web.rb', line 104

def call(env)
  app.call(env)
end

#disable(*opts) ⇒ Object



121
122
123
# File 'lib/sidekiq/web.rb', line 121

def disable(*opts)
  opts.each { |key| set(key, false) }
end

#enable(*opts) ⇒ Object



117
118
119
# File 'lib/sidekiq/web.rb', line 117

def enable(*opts)
  opts.each { |key| set(key, true) }
end

#middlewaresObject



96
97
98
# File 'lib/sidekiq/web.rb', line 96

def middlewares
  @middlewares ||= self.class.middlewares
end

#set(attribute, value) ⇒ Object



125
126
127
# File 'lib/sidekiq/web.rb', line 125

def set(attribute, value)
  send(:"#{attribute}=", value)
end

#settingsObject



92
93
94
# File 'lib/sidekiq/web.rb', line 92

def settings
  self.class.settings
end

#use(*args, &block) ⇒ Object



100
101
102
# File 'lib/sidekiq/web.rb', line 100

def use(*args, &block)
  middlewares << [args, block]
end