Module: Promiscuous

Extended by:
Autoload, DSL
Defined in:
lib/promiscuous.rb,
lib/promiscuous/version.rb

Defined Under Namespace

Modules: AMQP, Autoload, Config, ControllerMiddleware, Convenience, DSL, Error, Loader, Publisher, Redis, Subscriber Classes: CLI, Dependency, Key, Railtie, Timer

Constant Summary collapse

VERSION =
'0.100.5'

Class Method Summary collapse

Methods included from Autoload

autoload

Methods included from DSL

define, publish, subscribe

Class Method Details

.configure(&block) ⇒ Object



28
29
30
# File 'lib/promiscuous.rb', line 28

def configure(&block)
  Config.configure(&block)
end

.connectObject



38
39
40
41
42
# File 'lib/promiscuous.rb', line 38

def connect
  AMQP.connect
  Redis.connect
  @should_be_connected = true
end

.contextObject



82
83
84
# File 'lib/promiscuous.rb', line 82

def context
  Publisher::Context::Base.current
end

.disabledObject



69
70
71
72
# File 'lib/promiscuous.rb', line 69

def disabled
  return $promiscuous_disabled if Thread.current[:promiscuous_disabled].nil?
  Thread.current[:promiscuous_disabled]
end

.disabled=(value) ⇒ Object



74
75
76
# File 'lib/promiscuous.rb', line 74

def disabled=(value)
  Thread.current[:promiscuous_disabled] = value
end

.disabled?Boolean

Returns:

  • (Boolean)


78
79
80
# File 'lib/promiscuous.rb', line 78

def disabled?
  !!Thread.current[:promiscuous_disabled]
end

.disconnectObject



44
45
46
47
48
# File 'lib/promiscuous.rb', line 44

def disconnect
  AMQP.disconnect
  Redis.disconnect
  @should_be_connected = false
end

.ensure_connectedObject



63
64
65
66
67
# File 'lib/promiscuous.rb', line 63

def ensure_connected
  unless should_be_connected?
    connect
  end
end

.healthy?Boolean

Returns:

  • (Boolean)


54
55
56
57
58
59
60
61
# File 'lib/promiscuous.rb', line 54

def healthy?
  AMQP.ensure_connected
  Redis.ensure_connected
rescue Exception
  false
else
  true
end

.require_for(gem, file) ⇒ Object



6
7
8
9
10
# File 'lib/promiscuous.rb', line 6

def self.require_for(gem, file)
  require gem
  require file
rescue LoadError
end

.should_be_connected?Boolean

Returns:

  • (Boolean)


50
51
52
# File 'lib/promiscuous.rb', line 50

def should_be_connected?
  !!@should_be_connected
end