Module: OperateDo

Defined in:
lib/operate_do.rb,
lib/operate_do/version.rb

Defined Under Namespace

Modules: Operator Classes: Config, Logger, Message, OperateProxy, Recorder

Constant Summary collapse

OPERATE_DO_KEY =
:operate_do_operator
VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.configure {|@config| ... } ⇒ Object

Yields:

  • (@config)


88
89
90
91
# File 'lib/operate_do.rb', line 88

def configure
  @config ||= OperateDo::Config.new
  yield @config if block_given?
end

.current_loggerObject



93
94
95
96
# File 'lib/operate_do.rb', line 93

def current_logger
  configure unless @config
  @current_logger ||= setup_logger
end

.current_operatorObject



115
116
117
# File 'lib/operate_do.rb', line 115

def current_operator
  Thread.current[OPERATE_DO_KEY]&.current_operator
end

.flush_message!Object



119
120
121
# File 'lib/operate_do.rb', line 119

def flush_message!
  Thread.current[OPERATE_DO_KEY].flush_message!
end

.pop_operatorObject



111
112
113
# File 'lib/operate_do.rb', line 111

def pop_operator
  Thread.current[OPERATE_DO_KEY].pop_operator
end

.push_operator(operator) ⇒ Object



106
107
108
109
# File 'lib/operate_do.rb', line 106

def push_operator(operator)
  Thread.current[OPERATE_DO_KEY] ||= OperateDo::Recorder.new
  Thread.current[OPERATE_DO_KEY].push_operator operator
end

.write(message, operate_at = Time.now) ⇒ Object



123
124
125
# File 'lib/operate_do.rb', line 123

def write(message, operate_at = Time.now)
  Thread.current[OPERATE_DO_KEY].write(message, operate_at)
end