thecon 0.0.3 → 0.0.4
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 +4 -4
- data/.travis.yml +12 -0
- data/{LICENSE.txt → LICENSE} +1 -1
- data/README.md +2 -2
- data/Rakefile +10 -0
- data/bin/thecon +7 -0
- data/lib/thecon.rb +24 -7
- data/lib/thecon/version.rb +2 -2
- data/thecon.gemspec +3 -1
- metadata +35 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 85227b028e721a45c7fcd94c6af67f903aa56472
|
4
|
+
data.tar.gz: 325c0486bc017272ccd6f14b01f7f3cc5543ffec
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 23eff59dfe214cb17420772c2e18f26b35a14dbba18f5355865eba40f5c905beaa6a422bd2f75faccf27ebbae97743b0746486e761af5a6de0cca8765d0eafbe
|
7
|
+
data.tar.gz: 05fe9cc2bea503038b0739c818e235e321c851c468678c6c3043d58b694b1cd751213eb902bd11adac058cbc000dc5380af7b46e7cff549e58477cac12a580ec
|
data/.travis.yml
ADDED
data/{LICENSE.txt → LICENSE}
RENAMED
data/README.md
CHANGED
data/Rakefile
CHANGED
data/bin/thecon
ADDED
data/lib/thecon.rb
CHANGED
@@ -10,6 +10,7 @@ module Thecon
|
|
10
10
|
def self.ready?(port=80, ip = "localhost", connection_timeout = 3, read_timeout = 2)
|
11
11
|
@log = Logger.new(STDOUT)
|
12
12
|
|
13
|
+
port ||= 80
|
13
14
|
result = false
|
14
15
|
begin
|
15
16
|
timeout( connection_timeout ) do
|
@@ -18,16 +19,32 @@ module Thecon
|
|
18
19
|
socket.connect sockaddr
|
19
20
|
begin
|
20
21
|
timeout( read_timeout ) do
|
22
|
+
begin
|
23
|
+
|
24
|
+
response = socket.read_nonblock(1)
|
25
|
+
|
21
26
|
r,w,e = select([socket], nil, nil, 1) # nil, nil, nil from inside the network
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
27
|
+
result = true
|
28
|
+
rescue IO::WaitReadable
|
29
|
+
@log.debug "Wait readable"
|
30
|
+
r,w,e = select([socket], nil, nil, 1) # nil, nil, nil from inside the network
|
31
|
+
unless r.nil? then
|
32
|
+
if r[0].read(1).nil?
|
33
|
+
@log.debug "Readable socket was closed / there is NOTHING there"
|
34
|
+
result = false
|
35
|
+
else
|
36
|
+
@log.debug "There is something there"
|
37
|
+
result = true
|
38
|
+
end
|
39
|
+
else
|
40
|
+
@log.debug "not available for read: either doesn't exist or not closed" #TRUE
|
41
|
+
result = true
|
42
|
+
end
|
43
|
+
rescue IO::WaitWritable
|
28
44
|
end
|
45
|
+
|
29
46
|
end
|
30
|
-
rescue StandardError => ka
|
47
|
+
rescue StandardError => ka #This can get triggered i
|
31
48
|
@log.debug "OK, standardERROR #{ka}" #If socket.read there could be errors (this shouldn't be triggered)
|
32
49
|
result = true
|
33
50
|
rescue Timeout::Error => e
|
data/lib/thecon/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module Thecon
|
2
|
-
VERSION = "0.0.
|
3
|
-
end
|
2
|
+
VERSION = "0.0.4"
|
3
|
+
end
|
data/thecon.gemspec
CHANGED
@@ -18,6 +18,8 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
# development dependencies
|
21
|
+
# development dependencies
|
22
|
+
spec.add_development_dependency "bundler"
|
23
|
+
spec.add_development_dependency "rake"
|
22
24
|
spec.add_development_dependency "rspec"
|
23
25
|
end
|
metadata
CHANGED
@@ -1,15 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: thecon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tnarik Innael
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-04-
|
11
|
+
date: 2015-04-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
13
41
|
- !ruby/object:Gem::Dependency
|
14
42
|
name: rspec
|
15
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -28,7 +56,8 @@ description: Simple connection checker to find out if a server is available at a
|
|
28
56
|
port
|
29
57
|
email:
|
30
58
|
- tnarik@lecafeautomatique.co.uk
|
31
|
-
executables:
|
59
|
+
executables:
|
60
|
+
- thecon
|
32
61
|
extensions: []
|
33
62
|
extra_rdoc_files: []
|
34
63
|
files:
|
@@ -36,10 +65,12 @@ files:
|
|
36
65
|
- ".rspec"
|
37
66
|
- ".ruby-gemset"
|
38
67
|
- ".ruby-version"
|
68
|
+
- ".travis.yml"
|
39
69
|
- Gemfile
|
40
|
-
- LICENSE
|
70
|
+
- LICENSE
|
41
71
|
- README.md
|
42
72
|
- Rakefile
|
73
|
+
- bin/thecon
|
43
74
|
- lib/thecon.rb
|
44
75
|
- lib/thecon/version.rb
|
45
76
|
- spec/spec_helper.rb
|