internet_connection 0.0.1

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/internet_connection.rb +31 -0
  2. metadata +67 -0
@@ -0,0 +1,31 @@
1
+ # :main: README.rdoc
2
+
3
+ require 'resolv'
4
+ require 'resolv-replace'
5
+ if RUBY_VERSION =~ /1.9.*/
6
+ begin
7
+ # if you use evented machine you'll want to install this gem
8
+ require 'em-resolv-replace'
9
+ rescue LoadError
10
+ # send warning on why you should use em-resolv-replace
11
+ end
12
+ end
13
+
14
+ module InternetConnection
15
+ # InternetConnection#on? will try to resolve google.com dns.
16
+ # if it can you've got an internet connection
17
+ def on?
18
+ begin
19
+ !!Resolv.getaddress('www.google.com')
20
+ rescue Errno::EHOSTUNREACH
21
+ return false
22
+ end
23
+ end
24
+
25
+ # exactly the opposite of on?
26
+ def off?
27
+ !on?
28
+ end
29
+ module_function :on?
30
+ module_function :off?
31
+ end
metadata ADDED
@@ -0,0 +1,67 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: internet_connection
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 1
10
+ version: 0.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Diego Scataglini @_sc
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-05-20 00:00:00 -04:00
19
+ default_executable:
20
+ dependencies: []
21
+
22
+ description:
23
+ email: diego@junivi.com
24
+ executables: []
25
+
26
+ extensions: []
27
+
28
+ extra_rdoc_files: []
29
+
30
+ files:
31
+ - lib/internet_connection.rb
32
+ has_rdoc: true
33
+ homepage: http://rubygems.org/gems/internet_connection
34
+ licenses: []
35
+
36
+ post_install_message:
37
+ rdoc_options: []
38
+
39
+ require_paths:
40
+ - lib
41
+ required_ruby_version: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ hash: 3
47
+ segments:
48
+ - 0
49
+ version: "0"
50
+ required_rubygems_version: !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ hash: 3
56
+ segments:
57
+ - 0
58
+ version: "0"
59
+ requirements: []
60
+
61
+ rubyforge_project:
62
+ rubygems_version: 1.3.7
63
+ signing_key:
64
+ specification_version: 3
65
+ summary: Checks if the internet connection is on or off
66
+ test_files: []
67
+