wol 0.3.1 → 0.3.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 (4) hide show
  1. data/VERSION +1 -1
  2. data/bin/wol +2 -3
  3. data/lib/wol/runner.rb +28 -23
  4. metadata +2 -2
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.1
1
+ 0.3.2
data/bin/wol CHANGED
@@ -1,8 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- $LOAD_PATH.push File.join(File.dirname(__FILE__), "/../lib")
3
+ $LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..', 'lib')
4
4
 
5
5
  require 'wol'
6
6
 
7
- Wol::Runner.run!
8
-
7
+ exit Wol::Runner.run!(ARGV)
@@ -43,7 +43,7 @@ module Wol
43
43
  opts = OptionParser.new do |opts|
44
44
  # Set a banner, displayed at the top
45
45
  # of the help screen.
46
- opts.banner = "#{version}\nUsage: wol -a ADDRESS ff:ff:ff:ff:ff:ff"
46
+ opts.banner = "#{version}\nUsage: wol -i ADDRESS ff:ff:ff:ff:ff:ff"
47
47
 
48
48
  opts.separator ""
49
49
  opts.separator "Specific options:"
@@ -117,36 +117,41 @@ module Wol
117
117
 
118
118
  # Send WOL MagicPackets based on the parsed options
119
119
  def self.wake(options = {})
120
- begin
121
- if options[:file]
122
- hosts = ParseFile.read_and_parse_file(options[:file])
120
+ if options[:file]
121
+ hosts = ParseFile.read_and_parse_file(options[:file])
123
122
 
124
- for host in hosts
125
- options[:address], options[:macs], options[:port] = host[:address], host[:mac], host[:port]
123
+ for host in hosts
124
+ options[:address], options[:macs], options[:port] = host[:address], host[:mac], host[:port]
126
125
 
127
- puts WakeOnLan.new(options).wake
128
- end
129
- elsif options[:macs]
130
- options[:macs].each do |mac|
131
- options[:mac] = mac
132
- puts WakeOnLan.new(options).wake
133
- end
134
- else
135
- puts "You have to specify a file or MAC address"
126
+ message = WakeOnLan.new(options).wake.to_s
127
+ puts message unless options[:quiet]
128
+ return 0
136
129
  end
137
- rescue Exception => e
138
- puts "An error occured. Please check your inputs."
139
- puts "If you used a file, please check that it is properly formatted."
140
- STDERR.puts e.message
141
- exit(-1)
130
+ elsif !options[:macs].empty?
131
+ options[:macs].each do |mac|
132
+ options[:mac] = mac
133
+ message = WakeOnLan.new(options).wake.to_s
134
+ puts message unless options[:quiet]
135
+ return 0
136
+ end
137
+ else
138
+ puts "You have to specify a file or MAC address"
142
139
  end
143
140
  end
144
141
 
145
142
  # Parse the command line options, then use them to wake up any given hosts.
146
- def self.run!
147
- options = parse(ARGV)
143
+ def self.run!(argv)
144
+ begin
145
+ options = parse(argv)
148
146
 
149
- wake(options)
147
+ wake(options)
148
+ return 0
149
+ rescue Exception => e
150
+ puts "An error occured. Please check your inputs."
151
+ puts "If you used a file, please check that it is properly formatted."
152
+ STDERR.puts e.message
153
+ return -1
154
+ end
150
155
  end
151
156
  end
152
157
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wol
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matias Korhonen
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-11-13 00:00:00 +02:00
12
+ date: 2009-11-19 00:00:00 +02:00
13
13
  default_executable: wol
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency