connectator 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -32,7 +32,7 @@ module Connectator
32
32
  end
33
33
 
34
34
  def ping?
35
- if Pinger.pong?(connection_params.server, 3)
35
+ if Pinger.ping?(connection_params.server, 3)
36
36
  true
37
37
  else
38
38
  @connection_error = "Could not ping: #{connection_params.server}"
@@ -0,0 +1,20 @@
1
+ require 'timeout'
2
+
3
+ module Connectator
4
+ module Pinger
5
+ def self.ping?(host, timeout = 1)
6
+ Timeout::timeout(timeout) do
7
+ `#{system_ping_command(host, timeout)}`
8
+ ($?.exitstatus == 0)
9
+ end
10
+ rescue Timeout::Error
11
+ false
12
+ end
13
+
14
+ private
15
+
16
+ def self.system_ping_command(host, timeout)
17
+ "ping #{host} -W #{timeout} -c 1 2> /dev/null"
18
+ end
19
+ end
20
+ end
data/lib/connectator.rb CHANGED
@@ -5,3 +5,4 @@ require 'connectator/sql/connection'
5
5
  require 'connectator/sql/connection/server_instance_string'
6
6
  require 'connectator/sybase/connection'
7
7
  require 'connectator/factory'
8
+ require 'connectator/pinger'
metadata CHANGED
@@ -1,105 +1,153 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: connectator
3
- version: !ruby/object:Gem::Version
4
- hash: 27
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.3
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 0
9
- - 2
10
- version: 0.0.2
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Benjamin Wagaman
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2013-02-14 00:00:00 -05:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2013-02-14 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: dbi
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 5
30
- segments:
31
- - 0
32
- - 4
33
- - 5
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
34
21
  version: 0.4.5
35
22
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: dbd-odbc
39
23
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.4.5
30
+ - !ruby/object:Gem::Dependency
31
+ name: dbd-odbc
32
+ requirement: !ruby/object:Gem::Requirement
41
33
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 29
46
- segments:
47
- - 0
48
- - 2
49
- - 5
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
50
37
  version: 0.2.5
51
38
  type: :runtime
52
- version_requirements: *id002
53
- description: This gem lets you make connections to multiple kinds of DBMS systems through DBI
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: 0.2.5
46
+ - !ruby/object:Gem::Dependency
47
+ name: bundler
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: rake
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: rspec
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: rspec-given
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ description: This gem lets you make connections to multiple kinds of DBMS systems
111
+ through DBI
54
112
  email: ben@wagaman.org
55
113
  executables: []
56
-
57
114
  extensions: []
58
-
59
115
  extra_rdoc_files: []
60
-
61
- files:
116
+ files:
62
117
  - lib/connectator.rb
63
118
  - lib/connectator/factory.rb
64
119
  - lib/connectator/oracle/connection.rb
65
120
  - lib/connectator/base/connection.rb
121
+ - lib/connectator/pinger.rb
66
122
  - lib/connectator/db2/connection.rb
67
123
  - lib/connectator/sybase/connection.rb
68
124
  - lib/connectator/sql/connection.rb
69
125
  - lib/connectator/sql/connection/server_instance_string.rb
70
- has_rdoc: true
71
- homepage: http://rubygems.org/gems/connecator
126
+ homepage: http://rubygems.org/gems/connectator
72
127
  licenses: []
73
-
74
128
  post_install_message:
75
129
  rdoc_options: []
76
-
77
- require_paths:
130
+ require_paths:
78
131
  - lib
79
- required_ruby_version: !ruby/object:Gem::Requirement
132
+ required_ruby_version: !ruby/object:Gem::Requirement
80
133
  none: false
81
- requirements:
82
- - - ">="
83
- - !ruby/object:Gem::Version
84
- hash: 3
85
- segments:
134
+ requirements:
135
+ - - ! '>='
136
+ - !ruby/object:Gem::Version
137
+ version: '0'
138
+ segments:
86
139
  - 0
87
- version: "0"
88
- required_rubygems_version: !ruby/object:Gem::Requirement
140
+ hash: 2689105201860434706
141
+ required_rubygems_version: !ruby/object:Gem::Requirement
89
142
  none: false
90
- requirements:
91
- - - ">="
92
- - !ruby/object:Gem::Version
93
- hash: 3
94
- segments:
95
- - 0
96
- version: "0"
143
+ requirements:
144
+ - - ! '>='
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
97
147
  requirements: []
98
-
99
148
  rubyforge_project:
100
- rubygems_version: 1.5.3
149
+ rubygems_version: 1.8.24
101
150
  signing_key:
102
151
  specification_version: 3
103
152
  summary: Multi DBMS connection abstraction
104
153
  test_files: []
105
-