doorkeepr-rails 0.1.4 → 0.1.5

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: d972f6fe35df4f737827c71c69182fdba4c34fb6
4
- data.tar.gz: 6be891d0d01098c2a1d9cafc2673d8f8e4e8ad2e
3
+ metadata.gz: 36bf2c7d2ba5ac45a612dc288182580d8e0b0268
4
+ data.tar.gz: 19fd5f86a99c2b48e48acaa7f1b42ec9b07ddaa1
5
5
  SHA512:
6
- metadata.gz: 2792564e0cccc2b50cdd8d8edcbc6f37ca11a86f16ba3b43b43ef07ac147411a61c366722c34c018da176dd46378d2aaefe92ca52615cca8f96341ef79617f17
7
- data.tar.gz: 85cb5a675b359416a9d72c3508bababa0dd72b3427fb9b57b21c6253bf7f794453c62a461df1e55fc43384e3a6a330c916d4fe5d49ea51e7045cb32e8059e5ee
6
+ metadata.gz: 4afe089e75ac389ac477a7a71bfa87d4dfa093000a78f542bd89668ca0eadecba0e6fa510817c6b066cde028181991c99cc352140872deabe1fba75c1d645b59
7
+ data.tar.gz: 6b4a1220e5ed74aa12eed9f510b5380396443ad90db5598ff69b494e7e7f64262eda90f1f3df0c7a8f6fe0610e15ad6209cfb65c180959952fa16a68ed85d136
@@ -9,6 +9,7 @@ module Doorkeepr
9
9
  Rails.manager = Manager.new
10
10
  Rails.announce Rails.default_service
11
11
  Rails.publish
12
+ at_exit { Rails.depublish }
12
13
  end
13
14
  end
14
15
  end
@@ -1,7 +1,7 @@
1
1
  module Doorkeepr
2
2
  module Rails
3
3
  class Manager
4
- attr_reader :config
4
+ attr_reader :config, :nerve
5
5
  def initialize
6
6
  @config = ::Nerve::Easy::Nerve.new
7
7
  end
@@ -9,7 +9,13 @@ module Doorkeepr
9
9
  @config.announce service
10
10
  end
11
11
  def publish
12
- Nerve.publish if defined? ::Rails::Server
12
+ return unless defined? ::Rails::Server
13
+ @nerve ||= Nerve.new
14
+ nerve.publish
15
+ end
16
+ def depublish
17
+ return unless nerve
18
+ nerve.depublish
13
19
  end
14
20
  end
15
21
  end
@@ -4,19 +4,32 @@ require "nerve/easy"
4
4
  module Doorkeepr
5
5
  module Rails
6
6
  module Nerve
7
- class << self
8
- attr_accessor :nerve, :thread
9
- def publish
10
- ::Rails.logger.debug "start announce service"
11
- Rails.announce Entrance.new.service if Doorkeepr.config.to_h[:entrance]
12
- nerve = ::Nerve::Nerve.new Rails.config.to_nerve
13
- at_exit do
14
- thread.kill
15
- ::Rails.logger.debug "Nerve removed"
16
- end
17
- thread = Thread.new{ nerve.run }
7
+ attr_accessor :nerve, :thread
8
+ def initialize
9
+ return unless Doorkeepr.config.to_h[:entrance]
10
+ Rails.announce Entrance.new.service
11
+ end
12
+ def publish
13
+ return unless Doorkeepr.config.to_h[:entrance]
14
+ ::Rails.logger.debug "publish service"
15
+ @nerve = ::Nerve::Nerve.new Rails.config.to_nerve
16
+ @thread = Thread.new do
17
+ nerve.run
18
18
  end
19
19
  end
20
+ def depublish
21
+ return unless thread
22
+ ::Rails.logger.debug "depublish service"
23
+ thread.kill
24
+ end
25
+ # class << self
26
+ # attr_accessor :nerve, :thread
27
+ # def publish
28
+ # Rails.announce Entrance.new.service if Doorkeepr.config.to_h[:entrance]
29
+ # nerve = ::Nerve::Nerve.new Rails.config.to_nerve
30
+ # thread = Thread.new{ nerve.run }
31
+ # end
32
+ # end
20
33
  end
21
34
  end
22
35
  end
@@ -1,5 +1,5 @@
1
1
  module Doorkeepr
2
2
  module Rails
3
- VERSION = "0.1.4"
3
+ VERSION = "0.1.5"
4
4
  end
5
5
  end
@@ -46,6 +46,9 @@ module Doorkeepr
46
46
  def publish
47
47
  manager.publish
48
48
  end
49
+ def depublish
50
+ manager.depublish
51
+ end
49
52
  end
50
53
  end
51
54
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: doorkeepr-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mathias Kaufmann