Sha256: 947f099237bdd9a74f5763a046f5249ba7883d5d4ccbd01f7d1dd01dda23e419
Contents?: true
Size: 1.7 KB
Versions: 2
Compression:
Stored size: 1.7 KB
Contents
require 'resque-dynamic-queues' module Resque module Plugins module DynamicQueues module Server VIEW_PATH = File.join(File.dirname(__FILE__), 'server', 'views') def self.registered(app) app.get "/dynamicqueues" do @queues = [] dqueues = Resque.get_dynamic_queues dqueues.each do |k, v| view_data = { 'name' => k, 'value' => Array(v).join(", "), 'expanded' => Resque::Worker.new("@#{k}").queues.join(", ") } @queues << view_data end @queues.sort! do |a, b| an = a['name'] bn = b['name'] if an == 'default' 1 elsif bn == 'default' -1 else an <=> bn end end dynamicqueues_view :queues end app.post "/dynamicqueues" do dynamic_queues = Array(params['queues']) queues = {} dynamic_queues.each do |queue| key = queue['name'] values = queue['value'].to_s.split(',').collect{|q| q.gsub(/\s/, '') } queues[key] = values end Resque.set_dynamic_queues(queues) redirect url(:dynamicqueues) end app.helpers do def dynamicqueues_view(filename, options = {}, locals = {}) erb(File.read(File.join(::Resque::Plugins::DynamicQueues::Server::VIEW_PATH, "#{filename}.erb")), options, locals) end end app.tabs << "DynamicQueues" end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
resque-dynamic-queues-0.8.0 | lib/resque/plugins/dynamic_queues/server.rb |
resque-dynamic-queues-0.7.1 | lib/resque/plugins/dynamic_queues/server.rb |