ahoy 0.1.1 → 0.1.2

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.
Files changed (2) hide show
  1. data/lib/ahoy/contact.rb +14 -3
  2. metadata +10 -9
@@ -103,13 +103,19 @@ module Ahoy
103
103
  if use_cache && @target && @port && @interface_addresses.keys.any?
104
104
  return self
105
105
  end
106
+ service = DNSSD::Service.new
107
+ main = Thread.current
106
108
  @interface_addresses.clear
107
- DNSSD::Service.new.resolve(name, Ahoy::SERVICE_TYPE, domain) do |resolved|
109
+ service.resolve(name, Ahoy::SERVICE_TYPE, domain) do |resolved|
108
110
  @target = resolved.target
109
111
  @port = resolved.port
110
112
  @interface_addresses[resolved.interface] = []
111
- break unless resolved.flags.more_coming?
113
+ unless resolved.flags.more_coming?
114
+ service.stop unless service.stopped?
115
+ main.run
116
+ end
112
117
  end
118
+ Thread.stop unless service.stopped?
113
119
  self
114
120
  end
115
121
 
@@ -126,10 +132,15 @@ module Ahoy
126
132
  return self
127
133
  end
128
134
  service = DNSSD::Service.new
135
+ main = Thread.current
129
136
  service.getaddrinfo(target(resolve_cache), 0, 0, interface) do |addressed|
130
137
  @interface_addresses[addressed.interface].push(addressed.address)
131
- break unless addressed.flags.more_coming?
138
+ unless addressed.flags.more_coming?
139
+ service.stop unless service.stopped?
140
+ main.run
141
+ end
132
142
  end
143
+ Thread.stop unless service.stopped?
133
144
  self
134
145
  end
135
146
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ahoy
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
4
+ hash: 31
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 1
10
- version: 0.1.1
9
+ - 2
10
+ version: 0.1.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Mat Sadler
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-05-09 00:00:00 +01:00
18
+ date: 2011-06-02 00:00:00 +01:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -24,13 +24,14 @@ dependencies:
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
- - - ~>
27
+ - - ">="
28
28
  - !ruby/object:Gem::Version
29
- hash: 3
29
+ hash: 25
30
30
  segments:
31
- - 2
32
- - 0
33
- version: "2.0"
31
+ - 1
32
+ - 3
33
+ - 1
34
+ version: 1.3.1
34
35
  type: :runtime
35
36
  version_requirements: *id001
36
37
  - !ruby/object:Gem::Dependency