Module: CelluloidPubsub::BaseActor

Extended by:
Helper
Included in:
Client, Reactor, WebServer
Defined in:
lib/celluloid_pubsub/base_actor.rb

Overview

base actor used for compatibility between celluloid versions

Class Attribute Summary collapse

Class Method Summary collapse

Methods included from Helper

action_subscribe?, fetch_gem_version, filtered_error?, find_loaded_gem, find_loaded_gem_property, get_parsed_version, log_debug, parse_options, setup_celluloid_exception_handler, setup_celluloid_logger, setup_log_file, succesfull_subscription?, verify_gem_version

Class Attribute Details

.configObject (readonly)

Returns the value of attribute config.



8
9
10
# File 'lib/celluloid_pubsub/base_actor.rb', line 8

def config
  @config
end

Class Method Details

.celluloid_logger_classObject



23
24
25
26
27
28
29
# File 'lib/celluloid_pubsub/base_actor.rb', line 23

def celluloid_logger_class
  if version_less_than_seventeen?
    Celluloid::Logger
  else
    Celluloid::Internals::Logger
  end
end

.celluloid_versionObject



31
32
33
# File 'lib/celluloid_pubsub/base_actor.rb', line 31

def celluloid_version
  find_loaded_gem_property('celluloid', 'version')
end

.included(base) ⇒ Object



10
11
12
13
14
15
# File 'lib/celluloid_pubsub/base_actor.rb', line 10

def included(base)
  base.send(:include, Celluloid)
  base.send(:include, Celluloid::IO)
  base.send(:include, CelluloidPubsub::Helper)
  base.send(:include, config['logger_class'])
end

.setup_actor_supervision(class_name, options) ⇒ Object



39
40
41
42
43
44
45
# File 'lib/celluloid_pubsub/base_actor.rb', line 39

def setup_actor_supervision(class_name, options)
  if version_less_than_seventeen?
    class_name.supervise_as(options[:actor_name], options[:args])
  else
    class_name.supervise(as: options[:actor_name], args: [options[:args]].compact)
  end
end

.version_less_than_seventeen?Boolean

Returns:

  • (Boolean)


35
36
37
# File 'lib/celluloid_pubsub/base_actor.rb', line 35

def version_less_than_seventeen?
  verify_gem_version(celluloid_version, '0.17', operator: '<')
end