Sha256: 0c13e7f268cab2b41f0331c68f9434919067283a30a0ef1d392eda3ac914d8aa

Contents?: true

Size: 775 Bytes

Versions: 8

Compression:

Stored size: 775 Bytes

Contents

class ProconBypassMan::RemoteAction::QueueOverProcess
  extend ProconBypassMan::CanOverProcess

  include Singleton

  attr_reader :distributed_queue

  # @override
  def self.enable?
    ProconBypassMan.config.enable_remote_action?
  end

  # @override
  def self.distributed_class
    Queue
  end

  # @override
  def self.socket_file_path
    "/tmp/procon_bypass_man_remote_macro_queue".freeze
  end

  def self.push(value)
    return unless enable?

    instance.distributed_queue.push(value)
  end

  def self.pop
    return unless enable?

    instance.distributed_queue.pop
  end

  def self.clear
    return unless enable?

    instance.distributed_queue.clear
  end

  def initialize
    @distributed_queue = DRbObject.new_with_uri(self.class.socket_path)
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
procon_bypass_man-0.3.12 lib/procon_bypass_man/remote_action/queue_over_process.rb
procon_bypass_man-0.3.11 lib/procon_bypass_man/remote_action/queue_over_process.rb
procon_bypass_man-0.3.10 lib/procon_bypass_man/remote_action/queue_over_process.rb
procon_bypass_man-0.3.9 lib/procon_bypass_man/remote_action/queue_over_process.rb
procon_bypass_man-0.3.8.1 lib/procon_bypass_man/remote_action/queue_over_process.rb
procon_bypass_man-0.3.8 lib/procon_bypass_man/remote_action/queue_over_process.rb
procon_bypass_man-0.3.7 lib/procon_bypass_man/remote_action/queue_over_process.rb
procon_bypass_man-0.3.6 lib/procon_bypass_man/remote_action/queue_over_process.rb