trema 0.4.6 → 0.4.7

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 (291) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -0
  3. data/.travis.yml +24 -7
  4. data/Gemfile +19 -27
  5. data/Guardfile +6 -0
  6. data/README.md +13 -5
  7. data/Rakefile +418 -415
  8. data/bin/quality +2 -2
  9. data/bin/trema +103 -105
  10. data/bin/trema-config +7 -7
  11. data/build.rb +2 -2
  12. data/cruise.rb +109 -83
  13. data/features/dsl/switch_port_specifier.feature +1 -1
  14. data/features/examples/dumper.feature +9 -41
  15. data/features/examples/hello_trema.feature +1 -1
  16. data/features/examples/learning_switch.feature +7 -7
  17. data/features/examples/list_switches.feature +5 -5
  18. data/features/examples/message.set_config.feature +11 -11
  19. data/features/examples/message.vendor-action.feature +7 -7
  20. data/features/examples/message.vendor-stats-request.feature +1 -1
  21. data/features/examples/multi_learning_switch.feature +7 -7
  22. data/features/examples/openflow_message.echo.feature +15 -15
  23. data/features/examples/openflow_message.features_request.feature +12 -12
  24. data/features/examples/openflow_message.hello.feature +13 -13
  25. data/features/examples/packet_in.feature +8 -8
  26. data/features/examples/patch_panel.feature +1 -1
  27. data/features/examples/repeater_hub.feature +7 -7
  28. data/features/examples/switch_info.feature +16 -16
  29. data/features/examples/switch_monitor.feature +11 -11
  30. data/features/examples/transparent_firewall.feature +73 -0
  31. data/features/handlers/switch_ready.feature +1 -1
  32. data/features/step_definitions/misc_steps.rb +24 -24
  33. data/features/step_definitions/send_packets_steps.rb +2 -2
  34. data/features/step_definitions/stats_steps.rb +6 -6
  35. data/features/support/env.rb +15 -15
  36. data/features/support/hooks.rb +9 -9
  37. data/features/switch_event/add_forward_entry.feature +3 -3
  38. data/features/switch_event/delete_forward_entry.feature +3 -3
  39. data/features/switch_event/dump_forward_entries.feature +2 -2
  40. data/features/switch_event/set_forward_entries.feature +2 -2
  41. data/features/trema_commands/dump_flows.feature +1 -0
  42. data/features/trema_commands/help.feature +1 -0
  43. data/features/trema_commands/help_option.feature +1 -0
  44. data/features/trema_commands/kill.feature +1 -0
  45. data/features/trema_commands/killall.feature +1 -0
  46. data/features/trema_commands/port_down.feature +1 -0
  47. data/features/trema_commands/port_up.feature +1 -0
  48. data/features/trema_commands/reset_stats.feature +1 -0
  49. data/features/trema_commands/run.feature +1 -0
  50. data/features/trema_commands/send_packets.feature +2 -1
  51. data/features/trema_commands/show_stats.feature +1 -0
  52. data/features/trema_commands/up.feature +1 -0
  53. data/features/trema_commands/version.feature +1 -0
  54. data/features/trema_commands/version_option.feature +1 -0
  55. data/rubocop-todo.yml +159 -0
  56. data/ruby/blocker.rb +15 -17
  57. data/ruby/extconf.rb +19 -19
  58. data/ruby/sub-process.rb +29 -29
  59. data/ruby/trema/aggregate-stats-reply.rb +2 -2
  60. data/ruby/trema/app.rb +13 -13
  61. data/ruby/trema/cli.rb +45 -45
  62. data/ruby/trema/command.rb +14 -14
  63. data/ruby/trema/command/dump_flows.rb +5 -5
  64. data/ruby/trema/command/kill.rb +13 -13
  65. data/ruby/trema/command/killall.rb +1 -1
  66. data/ruby/trema/command/netns.rb +3 -3
  67. data/ruby/trema/command/port_down.rb +7 -7
  68. data/ruby/trema/command/port_up.rb +7 -7
  69. data/ruby/trema/command/reset_stats.rb +6 -6
  70. data/ruby/trema/command/ruby.rb +2 -2
  71. data/ruby/trema/command/run.rb +23 -23
  72. data/ruby/trema/command/send_packets.rb +9 -9
  73. data/ruby/trema/command/shell.rb +14 -16
  74. data/ruby/trema/command/show_stats.rb +9 -9
  75. data/ruby/trema/command/up.rb +4 -4
  76. data/ruby/trema/command/version.rb +1 -1
  77. data/ruby/trema/controller.rb +10 -10
  78. data/ruby/trema/custom-switch.rb +4 -4
  79. data/ruby/trema/daemon.rb +21 -21
  80. data/ruby/trema/desc-stats-reply.rb +2 -2
  81. data/ruby/trema/dsl.rb +5 -5
  82. data/ruby/trema/dsl/configuration.rb +7 -7
  83. data/ruby/trema/dsl/context.rb +10 -10
  84. data/ruby/trema/dsl/custom-switch.rb +3 -3
  85. data/ruby/trema/dsl/link.rb +2 -2
  86. data/ruby/trema/dsl/netns.rb +9 -9
  87. data/ruby/trema/dsl/parser.rb +14 -14
  88. data/ruby/trema/dsl/rswitch.rb +3 -3
  89. data/ruby/trema/dsl/run.rb +4 -4
  90. data/ruby/trema/dsl/runner.rb +20 -20
  91. data/ruby/trema/dsl/stanza.rb +5 -5
  92. data/ruby/trema/dsl/switch.rb +14 -14
  93. data/ruby/trema/dsl/syntax.rb +54 -54
  94. data/ruby/trema/dsl/vhost.rb +9 -9
  95. data/ruby/trema/dsl/vswitch.rb +4 -4
  96. data/ruby/trema/enqueue.rb +11 -11
  97. data/ruby/trema/exact-match.rb +1 -1
  98. data/ruby/trema/executables.rb +19 -19
  99. data/ruby/trema/flow-stats-reply.rb +2 -2
  100. data/ruby/trema/flow.rb +8 -8
  101. data/ruby/trema/hardware-switch.rb +2 -2
  102. data/ruby/trema/host.rb +18 -18
  103. data/ruby/trema/link.rb +9 -9
  104. data/ruby/trema/mac.rb +1 -5
  105. data/ruby/trema/match.c +0 -1
  106. data/ruby/trema/monkey-patch/integer.rb +3 -3
  107. data/ruby/trema/monkey-patch/integer/base-conversions.rb +1 -1
  108. data/ruby/trema/monkey-patch/integer/ranges.rb +2 -2
  109. data/ruby/trema/monkey-patch/integer/validators.rb +1 -1
  110. data/ruby/trema/monkey-patch/module.rb +2 -2
  111. data/ruby/trema/monkey-patch/module/class-method.rb +2 -2
  112. data/ruby/trema/monkey-patch/module/deprecation.rb +1 -1
  113. data/ruby/trema/monkey-patch/string.rb +1 -1
  114. data/ruby/trema/monkey-patch/string/inflectors.rb +7 -7
  115. data/ruby/trema/netns.rb +6 -6
  116. data/ruby/trema/network-component.rb +7 -7
  117. data/ruby/trema/ofctl.rb +13 -13
  118. data/ruby/trema/open-vswitch.rb +25 -25
  119. data/ruby/trema/openflow-switch.rb +1 -1
  120. data/ruby/trema/ordered-hash.rb +8 -8
  121. data/ruby/trema/packet-in.c +0 -1
  122. data/ruby/trema/packet-queue.rb +8 -8
  123. data/ruby/trema/packetin-filter.rb +9 -9
  124. data/ruby/trema/path.rb +32 -32
  125. data/ruby/trema/phost.rb +5 -5
  126. data/ruby/trema/port-mod.c +0 -1
  127. data/ruby/trema/port-stats-reply.rb +2 -2
  128. data/ruby/trema/port-status-add.rb +2 -2
  129. data/ruby/trema/port-status-delete.rb +2 -2
  130. data/ruby/trema/port-status-modify.rb +2 -2
  131. data/ruby/trema/port.c +0 -1
  132. data/ruby/trema/process.rb +7 -7
  133. data/ruby/trema/queue-stats-reply.rb +2 -2
  134. data/ruby/trema/ruby-switch.rb +6 -6
  135. data/ruby/trema/send-out-port.rb +11 -11
  136. data/ruby/trema/set-eth-addr.rb +5 -5
  137. data/ruby/trema/set-eth-dst-addr.rb +1 -1
  138. data/ruby/trema/set-eth-src-addr.rb +1 -1
  139. data/ruby/trema/set-ip-addr.rb +6 -6
  140. data/ruby/trema/set-ip-dst-addr.rb +1 -1
  141. data/ruby/trema/set-ip-src-addr.rb +1 -1
  142. data/ruby/trema/set-ip-tos.rb +6 -6
  143. data/ruby/trema/set-transport-dst-port.rb +2 -2
  144. data/ruby/trema/set-transport-port.rb +7 -7
  145. data/ruby/trema/set-transport-src-port.rb +3 -3
  146. data/ruby/trema/set-vlan-priority.rb +6 -6
  147. data/ruby/trema/set-vlan-vid.rb +6 -6
  148. data/ruby/trema/shell.rb +10 -10
  149. data/ruby/trema/shell/down.rb +3 -3
  150. data/ruby/trema/shell/killall.rb +1 -1
  151. data/ruby/trema/shell/link.rb +14 -14
  152. data/ruby/trema/shell/reset_stats.rb +6 -6
  153. data/ruby/trema/shell/run.rb +7 -7
  154. data/ruby/trema/shell/send_packets.rb +3 -3
  155. data/ruby/trema/shell/show_stats.rb +7 -7
  156. data/ruby/trema/shell/up.rb +5 -5
  157. data/ruby/trema/shell/vhost.rb +4 -4
  158. data/ruby/trema/shell/vswitch.rb +7 -7
  159. data/ruby/trema/stats-helper.rb +3 -3
  160. data/ruby/trema/stats-reply.c +0 -1
  161. data/ruby/trema/strip-vlan-header.rb +1 -1
  162. data/ruby/trema/switch-daemon.rb +9 -9
  163. data/ruby/trema/switch-manager.rb +9 -9
  164. data/ruby/trema/switch.rb +7 -7
  165. data/ruby/trema/table-stats-reply.rb +2 -2
  166. data/ruby/trema/timers.rb +12 -12
  167. data/ruby/trema/trema.c +0 -1
  168. data/ruby/trema/tremashark.rb +1 -1
  169. data/ruby/trema/util.rb +25 -27
  170. data/ruby/trema/vendor-action.rb +10 -10
  171. data/ruby/trema/vendor-stats-reply.rb +2 -2
  172. data/ruby/trema/version.rb +1 -1
  173. data/spec/spec_helper.rb +50 -52
  174. data/spec/support/action.rb +9 -12
  175. data/spec/support/mandatory-option.rb +15 -18
  176. data/spec/support/matchers/constant.rb +7 -7
  177. data/spec/support/openflow-message.rb +76 -79
  178. data/spec/support/port-status.rb +7 -10
  179. data/spec/trema/app_spec.rb +27 -27
  180. data/spec/trema/barrier-reply_spec.rb +10 -10
  181. data/spec/trema/barrier-request_spec.rb +35 -35
  182. data/spec/trema/cli_spec.rb +63 -63
  183. data/spec/trema/controller_spec.rb +3 -3
  184. data/spec/trema/default-logger_spec.rb +4 -4
  185. data/spec/trema/dsl/configuration_spec.rb +47 -47
  186. data/spec/trema/dsl/link_spec.rb +11 -11
  187. data/spec/trema/dsl/run_spec.rb +19 -19
  188. data/spec/trema/dsl/runner_spec.rb +91 -91
  189. data/spec/trema/dsl/switch_spec.rb +16 -16
  190. data/spec/trema/dsl/syntax_spec.rb +22 -22
  191. data/spec/trema/dsl/vhost_spec.rb +37 -37
  192. data/spec/trema/dsl/vswitch_spec.rb +21 -21
  193. data/spec/trema/echo-reply_spec.rb +29 -29
  194. data/spec/trema/echo-request_spec.rb +54 -54
  195. data/spec/trema/enqueue_spec.rb +25 -25
  196. data/spec/trema/error_spec.rb +30 -30
  197. data/spec/trema/executables_spec.rb +20 -20
  198. data/spec/trema/features-reply_spec.rb +41 -41
  199. data/spec/trema/features-request_spec.rb +35 -35
  200. data/spec/trema/flow-mod_spec.rb +32 -32
  201. data/spec/trema/flow-removed_spec.rb +62 -62
  202. data/spec/trema/get-config-reply_spec.rb +14 -12
  203. data/spec/trema/get-config-request_spec.rb +35 -35
  204. data/spec/trema/hardware-switch_spec.rb +12 -12
  205. data/spec/trema/hello_spec.rb +17 -17
  206. data/spec/trema/host_spec.rb +71 -71
  207. data/spec/trema/link_spec.rb +13 -13
  208. data/spec/trema/list-switches-reply_spec.rb +10 -10
  209. data/spec/trema/match_spec.rb +41 -41
  210. data/spec/trema/open-vswitch_spec.rb +45 -45
  211. data/spec/trema/openflow-error_spec.rb +67 -65
  212. data/spec/trema/packet-in_spec.rb +450 -446
  213. data/spec/trema/packet-out_spec.rb +42 -42
  214. data/spec/trema/packetin-filter_spec.rb +5 -5
  215. data/spec/trema/port-mod_spec.rb +32 -32
  216. data/spec/trema/port-status-add_spec.rb +3 -3
  217. data/spec/trema/port-status-delete_spec.rb +3 -3
  218. data/spec/trema/port-status-modify_spec.rb +16 -16
  219. data/spec/trema/port-status_spec.rb +2 -2
  220. data/spec/trema/port_spec.rb +21 -21
  221. data/spec/trema/process_spec.rb +22 -22
  222. data/spec/trema/queue-get-config-reply_spec.rb +21 -20
  223. data/spec/trema/queue-get-config-request_spec.rb +24 -24
  224. data/spec/trema/send-out-port_spec.rb +42 -42
  225. data/spec/trema/set-config_spec.rb +31 -31
  226. data/spec/trema/set-eth-addr_spec.rb +21 -21
  227. data/spec/trema/set-ip-addr_spec.rb +29 -29
  228. data/spec/trema/set-ip-tos_spec.rb +26 -26
  229. data/spec/trema/set-transport-dst-port_spec.rb +22 -22
  230. data/spec/trema/set-transport-src-port_spec.rb +22 -22
  231. data/spec/trema/set-vlan-priority_spec.rb +23 -23
  232. data/spec/trema/set-vlan-vid_spec.rb +23 -23
  233. data/spec/trema/shell/vhost_spec.rb +21 -21
  234. data/spec/trema/shell/vswitch_spec.rb +30 -30
  235. data/spec/trema/stats-reply_spec.rb +183 -173
  236. data/spec/trema/stats-request_spec.rb +66 -66
  237. data/spec/trema/strip-vlan-header_spec.rb +11 -11
  238. data/spec/trema/switch-daemon_spec.rb +34 -34
  239. data/spec/trema/switch-disconnected_spec.rb +17 -17
  240. data/spec/trema/switch-manager_spec.rb +6 -6
  241. data/spec/trema/tremashark_spec.rb +4 -4
  242. data/spec/trema/util_spec.rb +35 -35
  243. data/spec/trema/vendor-action_spec.rb +26 -26
  244. data/spec/trema/vendor_spec.rb +27 -27
  245. data/spec/trema_spec.rb +2 -2
  246. data/src/examples/cbench_switch/cbench-switch.rb +3 -3
  247. data/src/examples/dumper/dumper.rb +31 -31
  248. data/src/examples/hello_trema/hello-trema.rb +2 -2
  249. data/src/examples/learning_switch/fdb.rb +14 -14
  250. data/src/examples/learning_switch/learning-switch.rb +12 -10
  251. data/src/examples/learning_switch/learning_switch.c +22 -39
  252. data/src/examples/list_switches/list-switches.rb +3 -3
  253. data/src/examples/match_compare/match-compare.rb +20 -20
  254. data/src/examples/multi_learning_switch/multi-learning-switch.rb +12 -12
  255. data/src/examples/openflow_message/echo.rb +4 -4
  256. data/src/examples/openflow_message/example.rb +7 -7
  257. data/src/examples/openflow_message/features-request.rb +31 -31
  258. data/src/examples/openflow_message/hello.rb +2 -2
  259. data/src/examples/openflow_message/set-config.rb +4 -4
  260. data/src/examples/openflow_message/vendor-action.rb +3 -3
  261. data/src/examples/openflow_message/vendor-stats-request.rb +9 -9
  262. data/src/examples/packet_in/packet-in.rb +2 -2
  263. data/src/examples/patch_panel/patch-panel.rb +9 -9
  264. data/src/examples/repeater_hub/repeater-hub.rb +4 -4
  265. data/src/examples/repeater_hub/repeater-hub_spec.rb +65 -65
  266. data/src/examples/simple_router/arp-table.rb +7 -7
  267. data/src/examples/simple_router/interface.rb +10 -10
  268. data/src/examples/simple_router/routing-table.rb +4 -4
  269. data/src/examples/simple_router/simple-router.rb +3 -3
  270. data/src/examples/switch_info/switch-info.rb +9 -9
  271. data/src/examples/switch_monitor/switch-monitor.rb +4 -4
  272. data/src/examples/traffic_monitor/counter.rb +6 -6
  273. data/src/examples/traffic_monitor/fdb.rb +4 -4
  274. data/src/examples/traffic_monitor/traffic-monitor.rb +12 -12
  275. data/src/examples/transparent_firewall/README.md +61 -0
  276. data/src/examples/transparent_firewall/aggregated-delegated-afrinic.txt +713 -0
  277. data/src/examples/transparent_firewall/aggregated-delegated-apnic.txt +3440 -0
  278. data/src/examples/transparent_firewall/aggregated-delegated-arin.txt +11342 -0
  279. data/src/examples/transparent_firewall/aggregated-delegated-lacnic.txt +1937 -0
  280. data/src/examples/transparent_firewall/aggregated-delegated-ripencc.txt +7329 -0
  281. data/src/examples/transparent_firewall/block-rfc1918.rb +86 -0
  282. data/src/examples/transparent_firewall/pass-delegated.rb +178 -0
  283. data/src/examples/transparent_firewall/regen_aggregated.sh +53 -0
  284. data/src/examples/transparent_firewall/stats-to-cidrs.rb +59 -0
  285. data/src/lib/messenger.c +14 -5
  286. data/src/lib/openflow_message.c +0 -5
  287. data/tasks/rubocop.rake +22 -0
  288. data/trema +1 -1
  289. data/trema-config +1 -1
  290. data/trema.gemspec +22 -22
  291. metadata +30 -16
@@ -208,7 +208,6 @@ port_mod_advertise( VALUE self ) {
208
208
  */
209
209
  void
210
210
  Init_port_mod() {
211
- rb_require( "rubygems" );
212
211
  rb_require( "pio" );
213
212
 
214
213
  mTrema = rb_eval_string( "Trema" );
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/stats-helper"
19
+ require 'trema/stats-helper'
20
20
 
21
21
 
22
22
  module Trema
@@ -95,7 +95,7 @@ module Trema
95
95
  # @return [PortStatsReply]
96
96
  # an object that encapsulates the OFPST_STATS_REPLY(OFPST_PORT) OpenFlow message.
97
97
  #
98
- def initialize options
98
+ def initialize(options)
99
99
  super FIELDS, options
100
100
  end
101
101
  end
@@ -46,8 +46,8 @@ module Trema
46
46
  #
47
47
  # @return [PortStatusAdd]
48
48
  #
49
- def initialize options
50
- super options.merge( :reason => OFPPR_ADD )
49
+ def initialize(options)
50
+ super options.merge(:reason => OFPPR_ADD)
51
51
  end
52
52
  end
53
53
  end
@@ -46,8 +46,8 @@ module Trema
46
46
  #
47
47
  # @return [PortStatusDelete]
48
48
  #
49
- def initialize options
50
- super options.merge( :reason => OFPPR_DELETE )
49
+ def initialize(options)
50
+ super options.merge(:reason => OFPPR_DELETE)
51
51
  end
52
52
  end
53
53
  end
@@ -46,8 +46,8 @@ module Trema
46
46
  #
47
47
  # @return [PortStatusModify]
48
48
  #
49
- def initialize options
50
- super options.merge( :reason => OFPPR_MODIFY )
49
+ def initialize(options)
50
+ super options.merge(:reason => OFPPR_MODIFY)
51
51
  end
52
52
  end
53
53
  end
@@ -319,7 +319,6 @@ port_compare( VALUE self, VALUE other ) {
319
319
  */
320
320
  void
321
321
  Init_port() {
322
- rb_require( "rubygems" );
323
322
  rb_require( "pio" );
324
323
 
325
324
  mTrema = rb_eval_string( "Trema" );
@@ -38,18 +38,18 @@ module Trema
38
38
  #
39
39
  # @return [Process] the object that encapsulates the process details.
40
40
  #
41
- def self.read pid_file, name = nil
42
- name = File.basename( pid_file.to_s, ".pid" ) if name.nil?
43
- return new( pid_file, name )
41
+ def self.read(pid_file, name = nil)
42
+ name = File.basename(pid_file.to_s, '.pid') if name.nil?
43
+ new(pid_file, name)
44
44
  end
45
45
 
46
46
 
47
- def initialize pid_file, name
47
+ def initialize(pid_file, name)
48
48
  @name = name
49
49
  @pid_file = pid_file
50
50
  begin
51
- @pid = IO.read( @pid_file ).chomp.to_i
52
- @uid = File.stat( @pid_file ).uid
51
+ @pid = IO.read(@pid_file).chomp.to_i
52
+ @uid = File.stat(@pid_file).uid
53
53
  rescue
54
54
  @pid_file = nil
55
55
  end
@@ -77,7 +77,7 @@ module Trema
77
77
  return
78
78
  # return if dead?
79
79
  end
80
- raise "Failed to shut down #{ @name }"
80
+ fail "Failed to shut down #{ @name }"
81
81
  end
82
82
 
83
83
 
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/stats-helper"
19
+ require 'trema/stats-helper'
20
20
 
21
21
 
22
22
  module Trema
@@ -62,7 +62,7 @@ module Trema
62
62
  # @return [QueueStatsReply]
63
63
  # an object that encapsulates the OFPST_STATS_REPLY(OFPST_QUEUE) OpenFlow message.
64
64
  #
65
- def initialize options
65
+ def initialize(options)
66
66
  super FIELDS, options
67
67
  end
68
68
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "rbconfig"
20
- require "trema/hardware-switch"
19
+ require 'rbconfig'
20
+ require 'trema/hardware-switch'
21
21
 
22
22
 
23
23
  module Trema
@@ -25,7 +25,7 @@ module Trema
25
25
  include Trema::Daemon
26
26
 
27
27
 
28
- def initialize stanza
28
+ def initialize(stanza)
29
29
  super stanza
30
30
  end
31
31
 
@@ -41,14 +41,14 @@ module Trema
41
41
 
42
42
 
43
43
  def libruby
44
- File.join Trema.home, "ruby"
44
+ File.join Trema.home, 'ruby'
45
45
  end
46
46
 
47
47
 
48
48
  def ruby
49
49
  File.join(
50
- RbConfig::CONFIG[ "bindir" ],
51
- RbConfig::CONFIG[ "ruby_install_name" ] + RbConfig::CONFIG[ "EXEEXT" ]
50
+ RbConfig::CONFIG[ 'bindir'],
51
+ RbConfig::CONFIG[ 'ruby_install_name'] + RbConfig::CONFIG[ 'EXEEXT']
52
52
  )
53
53
  end
54
54
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/action"
20
- require "trema/monkey-patch/integer"
19
+ require 'trema/action'
20
+ require 'trema/monkey-patch/integer'
21
21
 
22
22
 
23
23
  module Trema
@@ -25,7 +25,7 @@ module Trema
25
25
  # An action to output a packet to a port.
26
26
  #
27
27
  class SendOutPort < Action
28
- DEFAULT_MAX_LEN = 2 ** 16 - 1
28
+ DEFAULT_MAX_LEN = 2**16 - 1
29
29
 
30
30
 
31
31
  # @return [Fixnum] the value of attribute {#max_len}
@@ -58,16 +58,16 @@ module Trema
58
58
  # @raise [ArgumentError] if port_number is not an unsigned 16-bit integer.
59
59
  # @raise [ArgumentError] if max_len is not an unsigned 16-bit integer.
60
60
  #
61
- def initialize options
61
+ def initialize(options)
62
62
  case options
63
63
  when Hash
64
- @port_number = options[ :port_number ] || options[ :port ]
65
- @max_len = options[ :max_len ] || DEFAULT_MAX_LEN
64
+ @port_number = options[ :port_number] || options[ :port]
65
+ @max_len = options[ :max_len] || DEFAULT_MAX_LEN
66
66
  when Integer
67
67
  @port_number = options
68
68
  @max_len = DEFAULT_MAX_LEN
69
69
  else
70
- raise "Invalid option"
70
+ fail 'Invalid option'
71
71
  end
72
72
  check_port_number
73
73
  check_max_len
@@ -75,7 +75,7 @@ module Trema
75
75
 
76
76
 
77
77
  def to_s
78
- "#{ self.class.to_s }: port_number=#{ @port_number }, max_len=#{ @max_len }"
78
+ "#{ self.class }: port_number=#{ @port_number }, max_len=#{ @max_len }"
79
79
  end
80
80
 
81
81
 
@@ -86,17 +86,17 @@ module Trema
86
86
 
87
87
  def check_port_number
88
88
  if @port_number.nil?
89
- raise ArgumentError, "Port number is a mandatory option"
89
+ fail ArgumentError, 'Port number is a mandatory option'
90
90
  end
91
91
  unless @port_number.unsigned_16bit?
92
- raise ArgumentError, "Port number must be an unsigned 16-bit integer"
92
+ fail ArgumentError, 'Port number must be an unsigned 16-bit integer'
93
93
  end
94
94
  end
95
95
 
96
96
 
97
97
  def check_max_len
98
98
  unless @max_len.unsigned_16bit?
99
- raise ArgumentError, "Max length must be an unsigned 16-bit integer"
99
+ fail ArgumentError, 'Max length must be an unsigned 16-bit integer'
100
100
  end
101
101
  end
102
102
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/action"
20
- require "trema/mac"
19
+ require 'trema/action'
20
+ require 'trema/mac'
21
21
 
22
22
 
23
23
  module Trema
@@ -35,13 +35,13 @@ module Trema
35
35
  #
36
36
  # @private
37
37
  #
38
- def initialize mac_address
39
- @mac_address = Mac.new( mac_address )
38
+ def initialize(mac_address)
39
+ @mac_address = Mac.new(mac_address)
40
40
  end
41
41
 
42
42
 
43
43
  def to_s
44
- "#{ self.class.to_s }: mac_address=#{ @mac_address }"
44
+ "#{ self.class }: mac_address=#{ @mac_address }"
45
45
  end
46
46
  end
47
47
  end
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/set-eth-addr"
19
+ require 'trema/set-eth-addr'
20
20
 
21
21
 
22
22
  module Trema
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/set-eth-addr"
19
+ require 'trema/set-eth-addr'
20
20
 
21
21
 
22
22
  module Trema
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/action"
19
+ require 'trema/action'
20
20
 
21
21
 
22
22
  module Trema
@@ -32,16 +32,16 @@ module Trema
32
32
  #
33
33
  # @private
34
34
  #
35
- def initialize ip_address
36
- unless ip_address.is_a?( String )
37
- raise TypeError, "Source IP address must be a String"
35
+ def initialize(ip_address)
36
+ unless ip_address.is_a?(String)
37
+ fail TypeError, 'Source IP address must be a String'
38
38
  end
39
- @ip_address = IPAddr.new( ip_address )
39
+ @ip_address = IPAddr.new(ip_address)
40
40
  end
41
41
 
42
42
 
43
43
  def to_s
44
- "#{ self.class.to_s }: ip_address=#{ @ip_address }"
44
+ "#{ self.class }: ip_address=#{ @ip_address }"
45
45
  end
46
46
  end
47
47
  end
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/set-ip-addr"
19
+ require 'trema/set-ip-addr'
20
20
 
21
21
 
22
22
  module Trema
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/set-ip-addr"
19
+ require 'trema/set-ip-addr'
20
20
 
21
21
 
22
22
  module Trema
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/action"
20
- require "trema/monkey-patch/integer"
19
+ require 'trema/action'
20
+ require 'trema/monkey-patch/integer'
21
21
 
22
22
 
23
23
  module Trema
@@ -41,12 +41,12 @@ module Trema
41
41
  # @raise [ArgumentError] if type_of_service value is invalid.
42
42
  # @raise [TypeError] if type_of_service argument is not an Integer.
43
43
  #
44
- def initialize type_of_service
45
- unless type_of_service.is_a?( Integer )
46
- raise TypeError, "ToS must be an unsigned 8-bit integer"
44
+ def initialize(type_of_service)
45
+ unless type_of_service.is_a?(Integer)
46
+ fail TypeError, 'ToS must be an unsigned 8-bit integer'
47
47
  end
48
48
  unless type_of_service.valid_nw_tos?
49
- raise ArgumentError, "Invalid type_of_service (ToS) value."
49
+ fail ArgumentError, 'Invalid type_of_service (ToS) value.'
50
50
  end
51
51
  @type_of_service = type_of_service
52
52
  end
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/set-transport-port"
19
+ require 'trema/set-transport-port'
20
20
 
21
21
 
22
22
  module Trema
@@ -36,7 +36,7 @@ module Trema
36
36
  # @raise [ArgumentError] if port_number is not an unsigned 16-bit Integer.
37
37
  # @raise [TypeError] if port_number is not an Integer.
38
38
  #
39
- def initialize port_number
39
+ def initialize(port_number)
40
40
  super port_number
41
41
  end
42
42
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/action"
20
- require "trema/monkey-patch/integer"
19
+ require 'trema/action'
20
+ require 'trema/monkey-patch/integer'
21
21
 
22
22
 
23
23
  module Trema
@@ -32,13 +32,13 @@ module Trema
32
32
  #
33
33
  # @private
34
34
  #
35
- def initialize port_number
36
- error_message = "TCP/UDP port must be an unsigned 16-bit integer"
37
- unless port_number.is_a?( Integer )
38
- raise TypeError, error_message
35
+ def initialize(port_number)
36
+ error_message = 'TCP/UDP port must be an unsigned 16-bit integer'
37
+ unless port_number.is_a?(Integer)
38
+ fail TypeError, error_message
39
39
  end
40
40
  unless port_number.unsigned_16bit?
41
- raise ArgumentError, error_message
41
+ fail ArgumentError, error_message
42
42
  end
43
43
  @port_number = port_number
44
44
  end
@@ -16,8 +16,8 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/monkey-patch/integer"
20
- require "trema/set-transport-port"
19
+ require 'trema/monkey-patch/integer'
20
+ require 'trema/set-transport-port'
21
21
 
22
22
 
23
23
  module Trema
@@ -37,7 +37,7 @@ module Trema
37
37
  # @raise [ArgumentError] if port_number is not an unsigned 16-bit Integer.
38
38
  # @raise [TypeError] if port_number is not an Integer.
39
39
  #
40
- def initialize port_number
40
+ def initialize(port_number)
41
41
  super port_number
42
42
  end
43
43
  end
@@ -16,7 +16,7 @@
16
16
  #
17
17
 
18
18
 
19
- require "trema/action"
19
+ require 'trema/action'
20
20
 
21
21
 
22
22
  module Trema
@@ -43,12 +43,12 @@ module Trema
43
43
  # @raise [ArgumentError] if vlan_priority is not within 0 and 7 inclusive.
44
44
  # @raise [TypeError] if vlan_priority is not an Integer.
45
45
  #
46
- def initialize vlan_priority
47
- unless vlan_priority.is_a?( Integer )
48
- raise TypeError, "VLAN priority must be an unsigned 8-bit Integer"
46
+ def initialize(vlan_priority)
47
+ unless vlan_priority.is_a?(Integer)
48
+ fail TypeError, 'VLAN priority must be an unsigned 8-bit Integer'
49
49
  end
50
- unless ( vlan_priority >= 0 and vlan_priority <= 7 )
51
- raise ArgumentError, "Valid VLAN priority values are 0 to 7 inclusive"
50
+ unless ( vlan_priority >= 0 && vlan_priority <= 7)
51
+ fail ArgumentError, 'Valid VLAN priority values are 0 to 7 inclusive'
52
52
  end
53
53
  @vlan_priority = vlan_priority
54
54
  end