mirror of
https://github.com/jimeh/amqp-failover.git
synced 2026-02-19 10:56:44 +00:00
renamed AMQP::Failover::BasicClient to
AMQP::FailoverClient
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
require 'yaml'
|
||||
|
||||
require 'amqp/failover/basic_client'
|
||||
require 'amqp/failover_client'
|
||||
require 'amqp/failover/config'
|
||||
require 'amqp/failover/fallback'
|
||||
require 'amqp/failover/logger'
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
# encoding: utf-8
|
||||
|
||||
module AMQP
|
||||
module Failover
|
||||
module BasicClient
|
||||
include AMQP::BasicClient
|
||||
|
||||
class Error < Exception; end
|
||||
|
||||
attr_accessor :on_disconnect
|
||||
attr_accessor :settings
|
||||
|
||||
def self.extended(base)
|
||||
base.on_disconnect = proc {
|
||||
OnDisconnect.new(base).call
|
||||
}
|
||||
end
|
||||
|
||||
def logger
|
||||
@logger ||= Logger.new
|
||||
end
|
||||
|
||||
def failover_conf
|
||||
@failover_conf ||= Config.new
|
||||
end
|
||||
|
||||
def configs
|
||||
failover_conf.configs
|
||||
end
|
||||
|
||||
def clean_exit(msg = nil)
|
||||
msg ||= "clean exit"
|
||||
logger.info(msg)
|
||||
logger.error(msg)
|
||||
Process.exit
|
||||
end
|
||||
|
||||
def process_frame(frame)
|
||||
if mq = channels[frame.channel]
|
||||
mq.process_frame(frame)
|
||||
return
|
||||
end
|
||||
|
||||
if frame.is_a?(::AMQP::Frame::Method) && (method = frame.payload).is_a?(::AMQP::Protocol::Connection::Close)
|
||||
if method.reply_text =~ /^NOT_ALLOWED/
|
||||
raise ::AMQP::Error, "#{method.reply_text} in #{::AMQP::Protocol.classes[method.class_id].methods[method.method_id]}"
|
||||
end
|
||||
end
|
||||
super(frame)
|
||||
end
|
||||
|
||||
end # BasicClient
|
||||
end # Failover
|
||||
end # AMQP
|
||||
|
||||
51
lib/amqp/failover_client.rb
Normal file
51
lib/amqp/failover_client.rb
Normal file
@@ -0,0 +1,51 @@
|
||||
# encoding: utf-8
|
||||
|
||||
module AMQP
|
||||
module FailoverClient
|
||||
include AMQP::BasicClient
|
||||
|
||||
attr_accessor :on_disconnect
|
||||
attr_accessor :settings
|
||||
|
||||
def self.extended(base)
|
||||
base.on_disconnect = proc {
|
||||
Failover::OnDisconnect.new(base).call
|
||||
}
|
||||
end
|
||||
|
||||
def logger
|
||||
@logger ||= Failover::Logger.new
|
||||
end
|
||||
|
||||
def failover_conf
|
||||
@failover_conf ||= Failover::Config.new
|
||||
end
|
||||
|
||||
def configs
|
||||
failover_conf.configs
|
||||
end
|
||||
|
||||
def clean_exit(msg = nil)
|
||||
msg ||= "clean exit"
|
||||
logger.info(msg)
|
||||
logger.error(msg)
|
||||
Process.exit
|
||||
end
|
||||
|
||||
def process_frame(frame)
|
||||
if mq = channels[frame.channel]
|
||||
mq.process_frame(frame)
|
||||
return
|
||||
end
|
||||
|
||||
if frame.is_a?(AMQP::Frame::Method) && (method = frame.payload).is_a?(AMQP::Protocol::Connection::Close)
|
||||
if method.reply_text =~ /^NOT_ALLOWED/
|
||||
raise AMQP::Error, "#{method.reply_text} in #{::AMQP::Protocol.classes[method.class_id].methods[method.method_id]}"
|
||||
end
|
||||
end
|
||||
super(frame)
|
||||
end
|
||||
|
||||
end # FailoverClient
|
||||
end # AMQP
|
||||
|
||||
Reference in New Issue
Block a user