fancybox2 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b5f1b63c49186562a7754d3a1674d201202f8cfa2fa83b009d148b8036514a41
4
- data.tar.gz: d91b6945428ab9b366ecd29dcf4f56eced667f129592cf48b39888bd114b360f
3
+ metadata.gz: 305d4f2b4006be7dde72fdfd9374f792338429defd2a9269e0ad8d3cfb1634ce
4
+ data.tar.gz: ebedeaabc2cb173c67907f08c8c3b8f7fa0b276c1d516fb56910b7fd1102bf6d
5
5
  SHA512:
6
- metadata.gz: 6f03ac7a8f28b7dc5ce77ce4e77e71f623a94a5ccfa30bb472d4408e8c0cb5d07334166864474c514f4f72f74f9010b8aa7a1b0f785a87e93845af986f6113d5
7
- data.tar.gz: e5df22e0bc8a716cc16cbfe0d0c696560ead8923b9bb9b41b431284e11574fe389ce9980e54943cc8dc314266c9761c010a626945206f7c5368214a88241a0e0
6
+ metadata.gz: e313af43974ac8ba6e2c0330381ac532f0264f6edcc0ddfa8695bebe726c1d4c35f1ddad561c9d8c07e024b4392e85e46dd9ecc10847c4dd43cce46260d4698c
7
+ data.tar.gz: 141e2e29514e61b282893ca7e2a2ac64308addd364d9bff408d9b6828b7bbd5f9c222b8d206af6b61243f952e710f844c1ac55d546e2712e9de2b9dd6e1c8b22
@@ -13,10 +13,13 @@ module Fancybox2
13
13
  unless @client.respond_to?(:publish)
14
14
  raise ArgumentError, "provided client does not respond to 'publish'"
15
15
  end
16
+ unless @client.respond_to?(:connected?)
17
+ raise ArgumentError, "provided client does not respond to 'connected?'"
18
+ end
16
19
  end
17
20
 
18
21
  def write(message)
19
- if @client.connected?
22
+ if @client && @client.connected?
20
23
  @client.publish @topic, message
21
24
  end
22
25
  end
@@ -142,6 +142,8 @@ module Fancybox2
142
142
  return
143
143
  end
144
144
 
145
+ @status = :on_shutdown
146
+
145
147
  shutdown_ok = true
146
148
  logger.debug "Received 'shutdown' command"
147
149
  # Stop sending alive messages
@@ -162,17 +164,20 @@ module Fancybox2
162
164
  message_to :core, :shutdown, { status: shutdown_message }
163
165
  sleep 0.05 # Wait some time in order to be sure that the message has been published (message is not mandatory)
164
166
 
165
- if mqtt_client && mqtt_client.connected?
166
- # Gracefully disconnect from broker and exit
167
- logger.debug 'Disconnecting from broker'
168
- mqtt_client.disconnect
169
- end
167
+ Thread.new do
168
+ if mqtt_client && mqtt_client.connected?
169
+ # Gracefully disconnect from broker and exit
170
+ logger.debug 'Disconnecting from broker, bye'
171
+ mqtt_client.disconnect
172
+ @mqtt_client = nil
173
+ end
170
174
 
171
- if do_exit
172
- # Exit from process
173
- status_code = shutdown_ok ? 0 : 1
174
- logger.debug "Exiting with status code #{status_code}"
175
- exit status_code
175
+ if do_exit
176
+ # Exit from process
177
+ status_code = shutdown_ok ? 0 : 1
178
+ logger.debug "Exiting with status code #{status_code}"
179
+ exit status_code
180
+ end
176
181
  end
177
182
  end
178
183
 
@@ -358,12 +363,12 @@ module Fancybox2
358
363
 
359
364
  def create_default_logger
360
365
  stdout_logger = ::Logger.new STDOUT
361
- broker_logger = ::Logger.new(Logger::MQTTLogDevice.new(topic_for(dest: :core, action: :logs),
362
- client: mqtt_client),
363
- formatter: Logger::JSONFormatter.new)
364
- logger = Logger::Multi.new stdout_logger, broker_logger,
365
- level: @log_level,
366
- progname: @log_progname
366
+ # broker_logger = ::Logger.new(Logger::MQTTLogDevice.new(topic_for(dest: :core, action: :logs),
367
+ # client: mqtt_client),
368
+ # formatter: Logger::JSONFormatter.new)
369
+ logger = Logger::Multi.new stdout_logger,# broker_logger,
370
+ level: @log_level,
371
+ progname: @log_progname
367
372
  logger
368
373
  end
369
374
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Fancybox2
4
- VERSION = '0.0.3'
4
+ VERSION = '0.0.4'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fancybox2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alessandro Verlato
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-19 00:00:00.000000000 Z
11
+ date: 2020-10-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: zeitwerk