simple_speaker 0.1.7 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fe50cf1997f06643fc16e295a126956eee13a154
4
- data.tar.gz: 0f5eccabfc06fd816ece147aee9b532496f9ced1
3
+ metadata.gz: 4f5aebea529ae74f706aa3902625a1f88b2f211d
4
+ data.tar.gz: bdf6b17f18ee9a9e6c3169bc8befbc891d89fc1a
5
5
  SHA512:
6
- metadata.gz: acacc4a601289306b751512087cae0fee65e6713cf8a78d8f2ba63746e29746455fdda219049e5d13bca77c822a6e731d070de173a5c6dc0a41f9b674dcaf510
7
- data.tar.gz: ce1d52b1d1880f62d813935b258c5d6c4f6364649ec00120d35815c3a5f03625700afcbcd17190e7c4746a1ed4110a0bd34c143867c821fa1fa39be93eb65ec5
6
+ metadata.gz: 1a7b8a4cdcb6d6ec1c2471fab8c7119c9dd0b7f0552d98c0e43d564ca1eb1fc5a6581980d06bbe6a920ee32b24cd1783eb26e5daf7665dbaefef1a83f27bf197
7
+ data.tar.gz: f7c574ded43bf277808b57cff4a5631c9e9259e22bd55401ed5777e1f0fdbba0d37cddf809216590e62deda1db58341255a9fb4f6522da355bf786cc83ce1d87
@@ -2,25 +2,37 @@ require "simple_speaker/version"
2
2
 
3
3
  module SimpleSpeaker
4
4
  class Speaker
5
- def initialize(logger_path = nil, logger_error_path = nil)
5
+ def initialize(logger_path = nil, logger_error_path = nil, daemon_server = nil, user_input = nil)
6
6
  @logger = Logger.new(logger_path) unless logger_path.nil?
7
7
  @logger_error = Logger.new(logger_error_path) unless logger_error_path.nil?
8
+ @daemon = daemon_server
9
+ @user_input = user_input
8
10
  end
9
11
 
10
12
  def ask_if_needed(question, no_prompt = 0, default = 'y')
11
13
  ask_if_needed = default
12
14
  if no_prompt.to_i == 0
13
15
  self.speak_up(question, 0)
14
- ask_if_needed = STDIN.gets.strip
16
+ if Daemon.is_daemon?
17
+ wtime = 0
18
+ while @user_input.nil?
19
+ sleep 1
20
+ ask_if_needed = @user_input
21
+ break if (wtime += 1) > USER_INPUT_TIMEOUT
22
+ end
23
+ @user_input = nil
24
+ else
25
+ ask_if_needed = STDIN.gets.strip
26
+ end
15
27
  end
16
28
  ask_if_needed
17
29
  end
18
30
 
19
31
  def speak_up(str, in_mail = 1)
20
32
  puts str
21
- $daemon_client.send_data str unless $daemon_client.nil?
33
+ @daemon.send_data "#{str}\n" unless @daemon.nil?
22
34
  @logger.info(str) if @logger
23
- $email_msg += str + NEW_LINE if $email_msg && in_mail.to_i > 0
35
+ Thread.current[:email_msg] += str + NEW_LINE if Thread.current[:email_msg] && in_mail.to_i > 0
24
36
  str
25
37
  end
26
38
 
@@ -30,11 +42,13 @@ module SimpleSpeaker
30
42
 
31
43
  def tell_error(e, src)
32
44
  puts "In #{src}"
45
+ @daemon.send_data "In #{src}\n" unless @daemon.nil?
33
46
  puts e
47
+ @daemon.send_data "#{e}\n" unless @daemon.nil?
34
48
  @logger_error.error("ERROR #{Time.now.utc.to_s} #{src}") if @logger_error
35
49
  @logger_error.error(e) if @logger_error
36
- $email_msg += "ERROR #{Time.now.utc.to_s} #{src}" + NEW_LINE if $email_msg
37
- $email_msg += e.to_s + NEW_LINE if $email_msg
50
+ Thread.current[:email_msg] += "ERROR #{Time.now.utc.to_s} #{src}" + NEW_LINE if Thread.current[:email_msg]
51
+ Thread.current[:email_msg] += e.to_s + NEW_LINE if Thread.current[:email_msg]
38
52
  end
39
53
  end
40
54
  end
@@ -1,3 +1,3 @@
1
1
  module SimpleSpeaker
2
- VERSION = "0.1.7"
2
+ VERSION = "0.1.8"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_speaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - R
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-11-07 00:00:00.000000000 Z
11
+ date: 2017-11-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler