Sha256: 2fc813e646162adc59f17dedd1862d07e20084c155f7609fcb0ca9a6f1b1d365

Contents?: true

Size: 773 Bytes

Versions: 8

Compression:

Stored size: 773 Bytes

Contents

class ProconBypassMan::RemoteMacro::QueueOverProcess
  extend ProconBypassMan::CanOverProcess

  include Singleton

  attr_reader :distributed_queue

  # @override
  def self.enable?
    ProconBypassMan.config.enable_remote_macro?
  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.5 lib/procon_bypass_man/remote_macro/queue_over_process.rb
procon_bypass_man-0.3.4 lib/procon_bypass_man/remote_macro/queue_over_process.rb
procon_bypass_man-0.3.3.1 lib/procon_bypass_man/remote_macro/queue_over_process.rb
procon_bypass_man-0.3.3 lib/procon_bypass_man/remote_macro/queue_over_process.rb
procon_bypass_man-0.3.2 lib/procon_bypass_man/remote_macro/queue_over_process.rb
procon_bypass_man-0.3.1 lib/procon_bypass_man/remote_macro/queue_over_process.rb
procon_bypass_man-0.3.0 lib/procon_bypass_man/remote_macro/queue_over_process.rb
procon_bypass_man-0.2.3 lib/procon_bypass_man/remote_macro/queue_over_process.rb