maxcube-client 0.4.1 → 0.5.0

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 (109) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +6 -0
  3. data/.rubocop.yml +0 -3
  4. data/.yardopts +1 -0
  5. data/README.md +17 -2
  6. data/bin/maxcube-client +2 -27
  7. data/doc/MaxCube.html +502 -0
  8. data/doc/MaxCube/Messages.html +1927 -0
  9. data/doc/MaxCube/Messages/Handler.html +2912 -0
  10. data/doc/MaxCube/Messages/InvalidMessage.html +140 -0
  11. data/doc/MaxCube/Messages/InvalidMessageBody.html +264 -0
  12. data/doc/MaxCube/Messages/InvalidMessageFormat.html +247 -0
  13. data/doc/MaxCube/Messages/InvalidMessageLength.html +247 -0
  14. data/doc/MaxCube/Messages/InvalidMessageType.html +263 -0
  15. data/doc/MaxCube/Messages/Parser.html +520 -0
  16. data/doc/MaxCube/Messages/Serializer.html +701 -0
  17. data/doc/MaxCube/Messages/TCP.html +172 -0
  18. data/doc/MaxCube/Messages/TCP/Handler.html +1396 -0
  19. data/doc/MaxCube/Messages/TCP/Parser.html +462 -0
  20. data/doc/MaxCube/Messages/TCP/Parser/MessageA.html +186 -0
  21. data/doc/MaxCube/Messages/TCP/Parser/MessageC.html +1077 -0
  22. data/doc/MaxCube/Messages/TCP/Parser/MessageF.html +206 -0
  23. data/doc/MaxCube/Messages/TCP/Parser/MessageH.html +338 -0
  24. data/doc/MaxCube/Messages/TCP/Parser/MessageL.html +535 -0
  25. data/doc/MaxCube/Messages/TCP/Parser/MessageM.html +510 -0
  26. data/doc/MaxCube/Messages/TCP/Parser/MessageN.html +226 -0
  27. data/doc/MaxCube/Messages/TCP/Parser/MessageS.html +225 -0
  28. data/doc/MaxCube/Messages/TCP/Serializer.html +460 -0
  29. data/doc/MaxCube/Messages/TCP/Serializer/MessageA.html +186 -0
  30. data/doc/MaxCube/Messages/TCP/Serializer/MessageC.html +185 -0
  31. data/doc/MaxCube/Messages/TCP/Serializer/MessageF.html +206 -0
  32. data/doc/MaxCube/Messages/TCP/Serializer/MessageL.html +185 -0
  33. data/doc/MaxCube/Messages/TCP/Serializer/MessageM.html +428 -0
  34. data/doc/MaxCube/Messages/TCP/Serializer/MessageN.html +209 -0
  35. data/doc/MaxCube/Messages/TCP/Serializer/MessageQ.html +185 -0
  36. data/doc/MaxCube/Messages/TCP/Serializer/MessageS.html +1168 -0
  37. data/doc/MaxCube/Messages/TCP/Serializer/MessageT.html +240 -0
  38. data/doc/MaxCube/Messages/TCP/Serializer/MessageU.html +206 -0
  39. data/doc/MaxCube/Messages/TCP/Serializer/MessageZ.html +252 -0
  40. data/doc/MaxCube/Messages/UDP.html +164 -0
  41. data/doc/MaxCube/Messages/UDP/Handler.html +832 -0
  42. data/doc/MaxCube/Messages/UDP/Parser.html +609 -0
  43. data/doc/MaxCube/Messages/UDP/Parser/MessageH.html +218 -0
  44. data/doc/MaxCube/Messages/UDP/Parser/MessageI.html +215 -0
  45. data/doc/MaxCube/Messages/UDP/Parser/MessageN.html +226 -0
  46. data/doc/MaxCube/Messages/UDP/Serializer.html +484 -0
  47. data/doc/MaxCube/Network.html +167 -0
  48. data/doc/MaxCube/Network/TCP.html +150 -0
  49. data/doc/MaxCube/Network/TCP/Client.html +1930 -0
  50. data/doc/MaxCube/Network/TCP/Client/Commands.html +2457 -0
  51. data/doc/MaxCube/Network/TCP/SampleServer.html +910 -0
  52. data/doc/MaxCube/Network/UDP.html +150 -0
  53. data/doc/MaxCube/Network/UDP/Client.html +518 -0
  54. data/doc/MaxCube/Network/UDP/SampleSocket.html +628 -0
  55. data/doc/MaxCube/Runner.html +355 -0
  56. data/doc/_index.html +518 -0
  57. data/doc/class_list.html +51 -0
  58. data/doc/css/common.css +1 -0
  59. data/doc/css/full_list.css +58 -0
  60. data/doc/css/style.css +499 -0
  61. data/doc/file.README.html +140 -0
  62. data/doc/file_list.html +56 -0
  63. data/doc/frames.html +17 -0
  64. data/doc/index.html +140 -0
  65. data/doc/js/app.js +248 -0
  66. data/doc/js/full_list.js +216 -0
  67. data/doc/js/jquery.js +4 -0
  68. data/doc/method_list.html +1699 -0
  69. data/doc/top-level-namespace.html +110 -0
  70. data/lib/maxcube.rb +11 -0
  71. data/lib/maxcube/messages.rb +85 -8
  72. data/lib/maxcube/messages/handler.rb +138 -4
  73. data/lib/maxcube/messages/parser.rb +33 -2
  74. data/lib/maxcube/messages/serializer.rb +64 -16
  75. data/lib/maxcube/messages/tcp.rb +11 -7
  76. data/lib/maxcube/messages/tcp/handler.rb +50 -2
  77. data/lib/maxcube/messages/tcp/parser.rb +18 -17
  78. data/lib/maxcube/messages/tcp/serializer.rb +20 -21
  79. data/lib/maxcube/messages/tcp/type/a.rb +6 -6
  80. data/lib/maxcube/messages/tcp/type/c.rb +5 -3
  81. data/lib/maxcube/messages/tcp/type/f.rb +5 -3
  82. data/lib/maxcube/messages/tcp/type/h.rb +3 -2
  83. data/lib/maxcube/messages/tcp/type/l.rb +8 -7
  84. data/lib/maxcube/messages/tcp/type/m.rb +11 -7
  85. data/lib/maxcube/messages/tcp/type/n.rb +5 -3
  86. data/lib/maxcube/messages/tcp/type/q.rb +2 -2
  87. data/lib/maxcube/messages/tcp/type/s.rb +5 -2
  88. data/lib/maxcube/messages/tcp/type/t.rb +5 -4
  89. data/lib/maxcube/messages/tcp/type/u.rb +2 -1
  90. data/lib/maxcube/messages/tcp/type/z.rb +4 -2
  91. data/lib/maxcube/messages/udp.rb +7 -0
  92. data/lib/maxcube/messages/udp/handler.rb +28 -0
  93. data/lib/maxcube/messages/udp/parser.rb +23 -6
  94. data/lib/maxcube/messages/udp/serializer.rb +17 -1
  95. data/lib/maxcube/messages/udp/type/h.rb +2 -0
  96. data/lib/maxcube/messages/udp/type/i.rb +3 -0
  97. data/lib/maxcube/messages/udp/type/n.rb +3 -0
  98. data/lib/maxcube/network.rb +5 -1
  99. data/lib/maxcube/network/tcp.rb +3 -0
  100. data/lib/maxcube/network/tcp/client.rb +117 -3
  101. data/lib/maxcube/network/tcp/client/commands.rb +306 -239
  102. data/lib/maxcube/network/tcp/sample_server.rb +1 -0
  103. data/lib/maxcube/network/udp.rb +3 -0
  104. data/lib/maxcube/network/udp/client.rb +2 -0
  105. data/lib/maxcube/network/udp/sample_socket.rb +1 -0
  106. data/lib/maxcube/runner.rb +45 -0
  107. data/lib/maxcube/version.rb +2 -1
  108. data/maxcube-client.gemspec +2 -0
  109. metadata +84 -3
@@ -0,0 +1,2457 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ Module: MaxCube::Network::TCP::Client::Commands
8
+
9
+ &mdash; Documentation by YARD 0.9.12
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../../../../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../../../../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ pathId = "MaxCube::Network::TCP::Client::Commands";
19
+ relpath = '../../../../';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="../../../../js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="../../../../js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="../../../../class_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="../../../../_index.html">Index (C)</a> &raquo;
40
+ <span class='title'><span class='object_link'><a href="../../../../MaxCube.html" title="MaxCube (module)">MaxCube</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../../../Network.html" title="MaxCube::Network (module)">Network</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../../TCP.html" title="MaxCube::Network::TCP (module)">TCP</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Client.html" title="MaxCube::Network::TCP::Client (class)">Client</a></span></span>
41
+ &raquo;
42
+ <span class="title">Commands</span>
43
+
44
+ </div>
45
+
46
+ <div id="search">
47
+
48
+ <a class="full_list_link" id="class_list_link"
49
+ href="../../../../class_list.html">
50
+
51
+ <svg width="24" height="24">
52
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
+ </svg>
56
+ </a>
57
+
58
+ </div>
59
+ <div class="clear"></div>
60
+ </div>
61
+
62
+ <div id="content"><h1>Module: MaxCube::Network::TCP::Client::Commands
63
+
64
+
65
+
66
+ </h1>
67
+ <div class="box_info">
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+ <dl>
78
+ <dt>Included in:</dt>
79
+ <dd><span class='object_link'><a href="../Client.html" title="MaxCube::Network::TCP::Client (class)">MaxCube::Network::TCP::Client</a></span></dd>
80
+ </dl>
81
+
82
+
83
+
84
+ <dl>
85
+ <dt>Defined in:</dt>
86
+ <dd>lib/maxcube/network/tcp/client/commands.rb</dd>
87
+ </dl>
88
+
89
+ </div>
90
+
91
+ <h2>Overview</h2><div class="docstring">
92
+ <div class="discussion">
93
+
94
+ <p>Provides handling of concrete commands from shell command line.</p>
95
+
96
+
97
+ </div>
98
+ </div>
99
+ <div class="tags">
100
+
101
+
102
+ </div>
103
+ <h2>Constant Summary</h2>
104
+ <dl class="constants">
105
+
106
+ <dt id="COMMANDS-constant" class="">COMMANDS =
107
+ <div class="docstring">
108
+ <div class="discussion">
109
+
110
+ <p>List of commands and their aliases.</p>
111
+
112
+
113
+ </div>
114
+ </div>
115
+ <div class="tags">
116
+
117
+
118
+ </div>
119
+ </dt>
120
+ <dd><pre class="code"><span class='lbrace'>{</span>
121
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>usage</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>?</span><span class='words_sep'> </span><span class='tstring_content'>h</span><span class='words_sep'> </span><span class='tstring_content'>help</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
122
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>data</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>B</span><span class='words_sep'> </span><span class='tstring_content'>buffer</span><span class='words_sep'> </span><span class='tstring_content'>d</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
123
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>history</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>H</span><span class='words_sep'> </span><span class='tstring_content'>hist</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
124
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>clear</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>C</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
125
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>dump</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>D</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
126
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>list</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>l</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
127
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>config</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>c</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
128
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>send</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>cmd</span><span class='words_sep'> </span><span class='tstring_content'>s</span><span class='words_sep'> </span><span class='tstring_content'>set</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
129
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>pair</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>n</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
130
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>ntp</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>N</span><span class='words_sep'> </span><span class='tstring_content'>f</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
131
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>url</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>U</span><span class='words_sep'> </span><span class='tstring_content'>u</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
132
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>wake</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>w</span><span class='words_sep'> </span><span class='tstring_content'>z</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
133
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>metadata</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>m</span><span class='words_sep'> </span><span class='tstring_content'>meta</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
134
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>delete</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>del</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
135
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>reset</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
136
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>verbose</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>V</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
137
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>save</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>S</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
138
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>load</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>L</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
139
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>persist</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>P</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
140
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>quit</span><span class='tstring_end'>&#39;</span></span> <span class='op'>=&gt;</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>q</span><span class='tstring_end'>]</span></span><span class='comma'>,</span>
141
+ <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
142
+
143
+ </dl>
144
+
145
+
146
+
147
+
148
+
149
+
150
+
151
+
152
+ <h2>
153
+ Instance Method Summary
154
+ <small><a href="#" class="summary_toggle">collapse</a></small>
155
+ </h2>
156
+
157
+ <ul class="summary">
158
+
159
+ <li class="private ">
160
+ <span class="summary_signature">
161
+
162
+ <a href="#assign_hash-instance_method" title="#assign_hash (instance method)">#<strong>assign_hash</strong>(hash) &#x21d2; Object </a>
163
+
164
+
165
+
166
+ </span>
167
+
168
+
169
+
170
+ <span class="note title private">private</span>
171
+
172
+
173
+
174
+
175
+
176
+ <span class="summary_desc"><div class='inline'></div></span>
177
+
178
+ </li>
179
+
180
+
181
+ <li class="private ">
182
+ <span class="summary_signature">
183
+
184
+ <a href="#cmd_clear-instance_method" title="#cmd_clear (instance method)">#<strong>cmd_clear</strong> &#x21d2; Object </a>
185
+
186
+
187
+
188
+ </span>
189
+
190
+
191
+
192
+ <span class="note title private">private</span>
193
+
194
+
195
+
196
+
197
+
198
+ <span class="summary_desc"><div class='inline'>
199
+ <p>Clears all buffered received data (i.e. moves them to history).</p>
200
+ </div></span>
201
+
202
+ </li>
203
+
204
+
205
+ <li class="private ">
206
+ <span class="summary_signature">
207
+
208
+ <a href="#cmd_config-instance_method" title="#cmd_config (instance method)">#<strong>cmd_config</strong> &#x21d2; Object </a>
209
+
210
+
211
+
212
+ </span>
213
+
214
+
215
+
216
+ <span class="note title private">private</span>
217
+
218
+
219
+
220
+
221
+
222
+ <span class="summary_desc"><div class='inline'>
223
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;c&#39; (configuration message
224
+ request).</p>
225
+ </div></span>
226
+
227
+ </li>
228
+
229
+
230
+ <li class="private ">
231
+ <span class="summary_signature">
232
+
233
+ <a href="#cmd_data-instance_method" title="#cmd_data (instance method)">#<strong>cmd_data</strong> &#x21d2; Object </a>
234
+
235
+
236
+
237
+ </span>
238
+
239
+
240
+
241
+ <span class="note title private">private</span>
242
+
243
+
244
+
245
+
246
+
247
+ <span class="summary_desc"><div class='inline'>
248
+ <p>Calls <span class='object_link'><a href="#list_hashes-instance_method" title="MaxCube::Network::TCP::Client::Commands#list_hashes (method)">#list_hashes</a></span> without history.</p>
249
+ </div></span>
250
+
251
+ </li>
252
+
253
+
254
+ <li class="private ">
255
+ <span class="summary_signature">
256
+
257
+ <a href="#cmd_delete-instance_method" title="#cmd_delete (instance method)">#<strong>cmd_delete</strong>(*args) &#x21d2; Object </a>
258
+
259
+
260
+
261
+ </span>
262
+
263
+
264
+
265
+ <span class="note title private">private</span>
266
+
267
+
268
+
269
+
270
+
271
+ <span class="summary_desc"><div class='inline'>
272
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;t&#39; (delete a device request)
273
+ and <code>args</code>, and <code>last_array</code> and
274
+ <code>array_nonempty</code> options.</p>
275
+ </div></span>
276
+
277
+ </li>
278
+
279
+
280
+ <li class="private ">
281
+ <span class="summary_signature">
282
+
283
+ <a href="#cmd_dump-instance_method" title="#cmd_dump (instance method)">#<strong>cmd_dump</strong> &#x21d2; Object </a>
284
+
285
+
286
+
287
+ </span>
288
+
289
+
290
+
291
+ <span class="note title private">private</span>
292
+
293
+
294
+
295
+
296
+
297
+ <span class="summary_desc"><div class='inline'>
298
+ <p>Calls <span class='object_link'><a href="#cmd_data-instance_method" title="MaxCube::Network::TCP::Client::Commands#cmd_data (method)">#cmd_data</a></span> and <span class='object_link'><a href="#cmd_clear-instance_method" title="MaxCube::Network::TCP::Client::Commands#cmd_clear (method)">#cmd_clear</a></span>.</p>
299
+ </div></span>
300
+
301
+ </li>
302
+
303
+
304
+ <li class="private ">
305
+ <span class="summary_signature">
306
+
307
+ <a href="#cmd_history-instance_method" title="#cmd_history (instance method)">#<strong>cmd_history</strong> &#x21d2; Object </a>
308
+
309
+
310
+
311
+ </span>
312
+
313
+
314
+
315
+ <span class="note title private">private</span>
316
+
317
+
318
+
319
+
320
+
321
+ <span class="summary_desc"><div class='inline'>
322
+ <p>Calls <span class='object_link'><a href="#list_hashes-instance_method" title="MaxCube::Network::TCP::Client::Commands#list_hashes (method)">#list_hashes</a></span> with history.</p>
323
+ </div></span>
324
+
325
+ </li>
326
+
327
+
328
+ <li class="private ">
329
+ <span class="summary_signature">
330
+
331
+ <a href="#cmd_list-instance_method" title="#cmd_list (instance method)">#<strong>cmd_list</strong> &#x21d2; Object </a>
332
+
333
+
334
+
335
+ </span>
336
+
337
+
338
+
339
+ <span class="note title private">private</span>
340
+
341
+
342
+
343
+
344
+
345
+ <span class="summary_desc"><div class='inline'>
346
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;l&#39; (device list request).</p>
347
+ </div></span>
348
+
349
+ </li>
350
+
351
+
352
+ <li class="private ">
353
+ <span class="summary_signature">
354
+
355
+ <a href="#cmd_load-instance_method" title="#cmd_load (instance method)">#<strong>cmd_load</strong>(path = nil) &#x21d2; Object </a>
356
+
357
+
358
+
359
+ </span>
360
+
361
+
362
+
363
+ <span class="note title private">private</span>
364
+
365
+
366
+
367
+
368
+
369
+ <span class="summary_desc"><div class='inline'></div></span>
370
+
371
+ </li>
372
+
373
+
374
+ <li class="private ">
375
+ <span class="summary_signature">
376
+
377
+ <a href="#cmd_metadata-instance_method" title="#cmd_metadata (instance method)">#<strong>cmd_metadata</strong>(*args) &#x21d2; Object </a>
378
+
379
+
380
+
381
+ </span>
382
+
383
+
384
+
385
+ <span class="note title private">private</span>
386
+
387
+
388
+
389
+
390
+
391
+ <span class="summary_desc"><div class='inline'>
392
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;m&#39; (metadata message) and
393
+ <code>args</code> and <code>load_only</code> option.</p>
394
+ </div></span>
395
+
396
+ </li>
397
+
398
+
399
+ <li class="private ">
400
+ <span class="summary_signature">
401
+
402
+ <a href="#cmd_ntp-instance_method" title="#cmd_ntp (instance method)">#<strong>cmd_ntp</strong>(*args) &#x21d2; Object </a>
403
+
404
+
405
+
406
+ </span>
407
+
408
+
409
+
410
+ <span class="note title private">private</span>
411
+
412
+
413
+
414
+
415
+
416
+ <span class="summary_desc"><div class='inline'>
417
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;f&#39; (NTP servers message) and
418
+ <code>args</code> and <code>last_array</code> option.</p>
419
+ </div></span>
420
+
421
+ </li>
422
+
423
+
424
+ <li class="private ">
425
+ <span class="summary_signature">
426
+
427
+ <a href="#cmd_pair-instance_method" title="#cmd_pair (instance method)">#<strong>cmd_pair</strong>(*args) &#x21d2; Object </a>
428
+
429
+
430
+
431
+ </span>
432
+
433
+
434
+
435
+ <span class="note title private">private</span>
436
+
437
+
438
+
439
+
440
+
441
+ <span class="summary_desc"><div class='inline'>
442
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;n&#39; (new device request) and
443
+ <code>args</code>.</p>
444
+ </div></span>
445
+
446
+ </li>
447
+
448
+
449
+ <li class="private ">
450
+ <span class="summary_signature">
451
+
452
+ <a href="#cmd_persist-instance_method" title="#cmd_persist (instance method)">#<strong>cmd_persist</strong> &#x21d2; Object </a>
453
+
454
+
455
+
456
+ </span>
457
+
458
+
459
+
460
+ <span class="note title private">private</span>
461
+
462
+
463
+
464
+
465
+
466
+ <span class="summary_desc"><div class='inline'>
467
+ <p>Calls <span class='object_link'><a href="#toggle-instance_method" title="MaxCube::Network::TCP::Client::Commands#toggle (method)">#toggle</a></span> with persist mode variable.</p>
468
+ </div></span>
469
+
470
+ </li>
471
+
472
+
473
+ <li class="private ">
474
+ <span class="summary_signature">
475
+
476
+ <a href="#cmd_quit-instance_method" title="#cmd_quit (instance method)">#<strong>cmd_quit</strong> &#x21d2; Object </a>
477
+
478
+
479
+
480
+ </span>
481
+
482
+
483
+
484
+ <span class="note title private">private</span>
485
+
486
+
487
+
488
+
489
+
490
+ <span class="summary_desc"><div class='inline'>
491
+ <p>Manages to close the client gracefully (it should lead to <span class='object_link'><a href="../Client.html#close-instance_method" title="MaxCube::Network::TCP::Client#close (method)">#close</a></span>).</p>
492
+ </div></span>
493
+
494
+ </li>
495
+
496
+
497
+ <li class="private ">
498
+ <span class="summary_signature">
499
+
500
+ <a href="#cmd_reset-instance_method" title="#cmd_reset (instance method)">#<strong>cmd_reset</strong> &#x21d2; Object </a>
501
+
502
+
503
+
504
+ </span>
505
+
506
+
507
+
508
+ <span class="note title private">private</span>
509
+
510
+
511
+
512
+
513
+
514
+ <span class="summary_desc"><div class='inline'>
515
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;a&#39; (factory reset request).</p>
516
+ </div></span>
517
+
518
+ </li>
519
+
520
+
521
+ <li class="private ">
522
+ <span class="summary_signature">
523
+
524
+ <a href="#cmd_save-instance_method" title="#cmd_save (instance method)">#<strong>cmd_save</strong>(what = nil) &#x21d2; Object </a>
525
+
526
+
527
+
528
+ </span>
529
+
530
+
531
+
532
+ <span class="note title private">private</span>
533
+
534
+
535
+
536
+
537
+
538
+ <span class="summary_desc"><div class='inline'></div></span>
539
+
540
+ </li>
541
+
542
+
543
+ <li class="private ">
544
+ <span class="summary_signature">
545
+
546
+ <a href="#cmd_send-instance_method" title="#cmd_send (instance method)">#<strong>cmd_send</strong>(*args) &#x21d2; Object </a>
547
+
548
+
549
+
550
+ </span>
551
+
552
+
553
+
554
+ <span class="note title private">private</span>
555
+
556
+
557
+
558
+
559
+
560
+ <span class="summary_desc"><div class='inline'>
561
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;s&#39; (send command message) and
562
+ <code>args</code> and <code>load_only</code> option.</p>
563
+ </div></span>
564
+
565
+ </li>
566
+
567
+
568
+ <li class="private ">
569
+ <span class="summary_signature">
570
+
571
+ <a href="#cmd_url-instance_method" title="#cmd_url (instance method)">#<strong>cmd_url</strong>(*args) &#x21d2; Object </a>
572
+
573
+
574
+
575
+ </span>
576
+
577
+
578
+
579
+ <span class="note title private">private</span>
580
+
581
+
582
+
583
+
584
+
585
+ <span class="summary_desc"><div class='inline'>
586
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;u&#39; (set portal URL message)
587
+ and <code>args</code>.</p>
588
+ </div></span>
589
+
590
+ </li>
591
+
592
+
593
+ <li class="private ">
594
+ <span class="summary_signature">
595
+
596
+ <a href="#cmd_usage-instance_method" title="#cmd_usage (instance method)">#<strong>cmd_usage</strong> &#x21d2; Object </a>
597
+
598
+
599
+
600
+ </span>
601
+
602
+
603
+
604
+ <span class="note title private">private</span>
605
+
606
+
607
+
608
+
609
+
610
+ <span class="summary_desc"><div class='inline'>
611
+ <p>Prints usage message composed mainly from particular <span class='object_link'><a href="#usage_cmd-instance_method" title="MaxCube::Network::TCP::Client::Commands#usage_cmd (method)">#usage_cmd</a></span> calls.</p>
612
+ </div></span>
613
+
614
+ </li>
615
+
616
+
617
+ <li class="private ">
618
+ <span class="summary_signature">
619
+
620
+ <a href="#cmd_verbose-instance_method" title="#cmd_verbose (instance method)">#<strong>cmd_verbose</strong> &#x21d2; Object </a>
621
+
622
+
623
+
624
+ </span>
625
+
626
+
627
+
628
+ <span class="note title private">private</span>
629
+
630
+
631
+
632
+
633
+
634
+ <span class="summary_desc"><div class='inline'>
635
+ <p>Calls <span class='object_link'><a href="#toggle-instance_method" title="MaxCube::Network::TCP::Client::Commands#toggle (method)">#toggle</a></span> with verbose mode variable.</p>
636
+ </div></span>
637
+
638
+ </li>
639
+
640
+
641
+ <li class="private ">
642
+ <span class="summary_signature">
643
+
644
+ <a href="#cmd_wake-instance_method" title="#cmd_wake (instance method)">#<strong>cmd_wake</strong>(*args) &#x21d2; Object </a>
645
+
646
+
647
+
648
+ </span>
649
+
650
+
651
+
652
+ <span class="note title private">private</span>
653
+
654
+
655
+
656
+
657
+
658
+ <span class="summary_desc"><div class='inline'>
659
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">#send_msg</a></span> with message type &#39;z&#39; (wake-up message) and
660
+ <code>args</code>.</p>
661
+ </div></span>
662
+
663
+ </li>
664
+
665
+
666
+ <li class="private ">
667
+ <span class="summary_signature">
668
+
669
+ <a href="#list_hashes-instance_method" title="#list_hashes (instance method)">#<strong>list_hashes</strong>(history) &#x21d2; Object </a>
670
+
671
+
672
+
673
+ </span>
674
+
675
+
676
+
677
+ <span class="note title private">private</span>
678
+
679
+
680
+
681
+
682
+
683
+ <span class="summary_desc"><div class='inline'>
684
+ <p>Displays received hashes optionally with history.</p>
685
+ </div></span>
686
+
687
+ </li>
688
+
689
+
690
+ <li class="private ">
691
+ <span class="summary_signature">
692
+
693
+ <a href="#load_hash-instance_method" title="#load_hash (instance method)">#<strong>load_hash</strong>(path = nil) &#x21d2; Object </a>
694
+
695
+
696
+
697
+ </span>
698
+
699
+
700
+
701
+ <span class="note title private">private</span>
702
+
703
+
704
+
705
+
706
+
707
+ <span class="summary_desc"><div class='inline'></div></span>
708
+
709
+ </li>
710
+
711
+
712
+ <li class="private ">
713
+ <span class="summary_signature">
714
+
715
+ <a href="#parse_hash-instance_method" title="#parse_hash (instance method)">#<strong>parse_hash</strong>(path) &#x21d2; Object </a>
716
+
717
+
718
+
719
+ </span>
720
+
721
+
722
+
723
+ <span class="note title private">private</span>
724
+
725
+
726
+
727
+
728
+
729
+ <span class="summary_desc"><div class='inline'></div></span>
730
+
731
+ </li>
732
+
733
+
734
+ <li class="private ">
735
+ <span class="summary_signature">
736
+
737
+ <a href="#toggle-instance_method" title="#toggle (instance method)">#<strong>toggle</strong>(name, flag) &#x21d2; Boolean </a>
738
+
739
+
740
+
741
+ </span>
742
+
743
+
744
+
745
+ <span class="note title private">private</span>
746
+
747
+
748
+
749
+
750
+
751
+ <span class="summary_desc"><div class='inline'>
752
+ <p>Helper method that &#39;toggles&#39; boolean value and prints context info.</p>
753
+ </div></span>
754
+
755
+ </li>
756
+
757
+
758
+ <li class="private ">
759
+ <span class="summary_signature">
760
+
761
+ <a href="#usage_cmd-instance_method" title="#usage_cmd (instance method)">#<strong>usage_cmd</strong>(command, args, description, message = nil, response = nil) &#x21d2; String </a>
762
+
763
+
764
+
765
+ </span>
766
+
767
+
768
+
769
+ <span class="note title private">private</span>
770
+
771
+
772
+
773
+
774
+
775
+ <span class="summary_desc"><div class='inline'>
776
+ <p>Returns usage message for a single command.</p>
777
+ </div></span>
778
+
779
+ </li>
780
+
781
+
782
+ </ul>
783
+
784
+
785
+
786
+
787
+ <div id="instance_method_details" class="method_details_list">
788
+ <h2>Instance Method Details</h2>
789
+
790
+
791
+ <div class="method_details first">
792
+ <h3 class="signature first" id="assign_hash-instance_method">
793
+
794
+ #<strong>assign_hash</strong>(hash) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
795
+
796
+
797
+
798
+
799
+
800
+ </h3><table class="source_code">
801
+ <tr>
802
+ <td>
803
+ <pre class="lines">
804
+
805
+
806
+ 309
807
+ 310
808
+ 311
809
+ 312
810
+ 313
811
+ 314</pre>
812
+ </td>
813
+ <td>
814
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 309</span>
815
+
816
+ <span class='kw'>def</span> <span class='id identifier rubyid_assign_hash'>assign_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_hash'>hash</span><span class='rparen'>)</span>
817
+ <span class='id identifier rubyid_valid_hash'>valid_hash</span> <span class='op'>=</span> <span class='op'>!</span><span class='id identifier rubyid_hash'>hash</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
818
+ <span class='ivar'>@hash</span> <span class='op'>=</span> <span class='id identifier rubyid_hash'>hash</span> <span class='kw'>if</span> <span class='id identifier rubyid_valid_hash'>valid_hash</span>
819
+ <span class='ivar'>@hash_set</span> <span class='op'>|=</span> <span class='id identifier rubyid_valid_hash'>valid_hash</span>
820
+ <span class='id identifier rubyid_valid_hash'>valid_hash</span>
821
+ <span class='kw'>end</span></pre>
822
+ </td>
823
+ </tr>
824
+ </table>
825
+ </div>
826
+
827
+ <div class="method_details ">
828
+ <h3 class="signature " id="cmd_clear-instance_method">
829
+
830
+ #<strong>cmd_clear</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
831
+
832
+
833
+
834
+
835
+
836
+ </h3><div class="docstring">
837
+ <div class="discussion">
838
+
839
+ <p>Clears all buffered received data (i.e. moves them to history).</p>
840
+
841
+
842
+ </div>
843
+ </div>
844
+ <div class="tags">
845
+
846
+
847
+ </div><table class="source_code">
848
+ <tr>
849
+ <td>
850
+ <pre class="lines">
851
+
852
+
853
+ 163
854
+ 164
855
+ 165
856
+ 166
857
+ 167
858
+ 168</pre>
859
+ </td>
860
+ <td>
861
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 163</span>
862
+
863
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_clear'>cmd_clear</span>
864
+ <span class='qsymbols_beg'>%i[</span><span class='tstring_content'>data</span><span class='words_sep'> </span><span class='tstring_content'>hashes</span><span class='tstring_end'>]</span></span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_sym'>sym</span><span class='op'>|</span>
865
+ <span class='ivar'>@history</span><span class='lbracket'>[</span><span class='symbol'>:recv</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_sym'>sym</span><span class='rbracket'>]</span> <span class='op'>+=</span> <span class='ivar'>@buffer</span><span class='lbracket'>[</span><span class='symbol'>:recv</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_sym'>sym</span><span class='rbracket'>]</span>
866
+ <span class='ivar'>@buffer</span><span class='lbracket'>[</span><span class='symbol'>:recv</span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='id identifier rubyid_sym'>sym</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_clear'>clear</span>
867
+ <span class='kw'>end</span>
868
+ <span class='kw'>end</span></pre>
869
+ </td>
870
+ </tr>
871
+ </table>
872
+ </div>
873
+
874
+ <div class="method_details ">
875
+ <h3 class="signature " id="cmd_config-instance_method">
876
+
877
+ #<strong>cmd_config</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
878
+
879
+
880
+
881
+
882
+
883
+ </h3><div class="docstring">
884
+ <div class="discussion">
885
+
886
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;c&#39; (configuration message
887
+ request).</p>
888
+
889
+
890
+ </div>
891
+ </div>
892
+ <div class="tags">
893
+
894
+
895
+ </div><table class="source_code">
896
+ <tr>
897
+ <td>
898
+ <pre class="lines">
899
+
900
+
901
+ 184
902
+ 185
903
+ 186</pre>
904
+ </td>
905
+ <td>
906
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 184</span>
907
+
908
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_config'>cmd_config</span>
909
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>c</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
910
+ <span class='kw'>end</span></pre>
911
+ </td>
912
+ </tr>
913
+ </table>
914
+ </div>
915
+
916
+ <div class="method_details ">
917
+ <h3 class="signature " id="cmd_data-instance_method">
918
+
919
+ #<strong>cmd_data</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
920
+
921
+
922
+
923
+
924
+
925
+ </h3><div class="docstring">
926
+ <div class="discussion">
927
+
928
+ <p>Calls <span class='object_link'><a href="#list_hashes-instance_method" title="MaxCube::Network::TCP::Client::Commands#list_hashes (method)">#list_hashes</a></span> without history.</p>
929
+
930
+
931
+ </div>
932
+ </div>
933
+ <div class="tags">
934
+
935
+
936
+ </div><table class="source_code">
937
+ <tr>
938
+ <td>
939
+ <pre class="lines">
940
+
941
+
942
+ 152
943
+ 153
944
+ 154</pre>
945
+ </td>
946
+ <td>
947
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 152</span>
948
+
949
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_data'>cmd_data</span>
950
+ <span class='id identifier rubyid_list_hashes'>list_hashes</span><span class='lparen'>(</span><span class='kw'>false</span><span class='rparen'>)</span>
951
+ <span class='kw'>end</span></pre>
952
+ </td>
953
+ </tr>
954
+ </table>
955
+ </div>
956
+
957
+ <div class="method_details ">
958
+ <h3 class="signature " id="cmd_delete-instance_method">
959
+
960
+ #<strong>cmd_delete</strong>(*args) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
961
+
962
+
963
+
964
+
965
+
966
+ </h3><div class="docstring">
967
+ <div class="discussion">
968
+
969
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;t&#39; (delete a device request)
970
+ and <code>args</code>, and <code>last_array</code> and
971
+ <code>array_nonempty</code> options.</p>
972
+
973
+
974
+ </div>
975
+ </div>
976
+ <div class="tags">
977
+ <p class="tag_title">Parameters:</p>
978
+ <ul class="param">
979
+
980
+ <li>
981
+
982
+ <span class='name'>args</span>
983
+
984
+
985
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
986
+
987
+
988
+
989
+ &mdash;
990
+ <div class='inline'>
991
+ <p>arguments from command line.</p>
992
+ </div>
993
+
994
+ </li>
995
+
996
+ </ul>
997
+
998
+
999
+ </div><table class="source_code">
1000
+ <tr>
1001
+ <td>
1002
+ <pre class="lines">
1003
+
1004
+
1005
+ 240
1006
+ 241
1007
+ 242</pre>
1008
+ </td>
1009
+ <td>
1010
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 240</span>
1011
+
1012
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_delete'>cmd_delete</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1013
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>t</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='label'>last_array:</span> <span class='kw'>true</span><span class='comma'>,</span> <span class='label'>array_nonempty:</span> <span class='kw'>true</span><span class='rparen'>)</span>
1014
+ <span class='kw'>end</span></pre>
1015
+ </td>
1016
+ </tr>
1017
+ </table>
1018
+ </div>
1019
+
1020
+ <div class="method_details ">
1021
+ <h3 class="signature " id="cmd_dump-instance_method">
1022
+
1023
+ #<strong>cmd_dump</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1024
+
1025
+
1026
+
1027
+
1028
+
1029
+ </h3><div class="docstring">
1030
+ <div class="discussion">
1031
+
1032
+ <p>Calls <span class='object_link'><a href="#cmd_data-instance_method" title="MaxCube::Network::TCP::Client::Commands#cmd_data (method)">#cmd_data</a></span> and <span class='object_link'><a href="#cmd_clear-instance_method" title="MaxCube::Network::TCP::Client::Commands#cmd_clear (method)">#cmd_clear</a></span>.</p>
1033
+
1034
+
1035
+ </div>
1036
+ </div>
1037
+ <div class="tags">
1038
+
1039
+
1040
+ </div><table class="source_code">
1041
+ <tr>
1042
+ <td>
1043
+ <pre class="lines">
1044
+
1045
+
1046
+ 171
1047
+ 172
1048
+ 173
1049
+ 174</pre>
1050
+ </td>
1051
+ <td>
1052
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 171</span>
1053
+
1054
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_dump'>cmd_dump</span>
1055
+ <span class='id identifier rubyid_cmd_data'>cmd_data</span>
1056
+ <span class='id identifier rubyid_cmd_clear'>cmd_clear</span>
1057
+ <span class='kw'>end</span></pre>
1058
+ </td>
1059
+ </tr>
1060
+ </table>
1061
+ </div>
1062
+
1063
+ <div class="method_details ">
1064
+ <h3 class="signature " id="cmd_history-instance_method">
1065
+
1066
+ #<strong>cmd_history</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1067
+
1068
+
1069
+
1070
+
1071
+
1072
+ </h3><div class="docstring">
1073
+ <div class="discussion">
1074
+
1075
+ <p>Calls <span class='object_link'><a href="#list_hashes-instance_method" title="MaxCube::Network::TCP::Client::Commands#list_hashes (method)">#list_hashes</a></span> with history.</p>
1076
+
1077
+
1078
+ </div>
1079
+ </div>
1080
+ <div class="tags">
1081
+
1082
+
1083
+ </div><table class="source_code">
1084
+ <tr>
1085
+ <td>
1086
+ <pre class="lines">
1087
+
1088
+
1089
+ 157
1090
+ 158
1091
+ 159</pre>
1092
+ </td>
1093
+ <td>
1094
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 157</span>
1095
+
1096
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_history'>cmd_history</span>
1097
+ <span class='id identifier rubyid_list_hashes'>list_hashes</span><span class='lparen'>(</span><span class='kw'>true</span><span class='rparen'>)</span>
1098
+ <span class='kw'>end</span></pre>
1099
+ </td>
1100
+ </tr>
1101
+ </table>
1102
+ </div>
1103
+
1104
+ <div class="method_details ">
1105
+ <h3 class="signature " id="cmd_list-instance_method">
1106
+
1107
+ #<strong>cmd_list</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1108
+
1109
+
1110
+
1111
+
1112
+
1113
+ </h3><div class="docstring">
1114
+ <div class="discussion">
1115
+
1116
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;l&#39; (device list request).</p>
1117
+
1118
+
1119
+ </div>
1120
+ </div>
1121
+ <div class="tags">
1122
+
1123
+
1124
+ </div><table class="source_code">
1125
+ <tr>
1126
+ <td>
1127
+ <pre class="lines">
1128
+
1129
+
1130
+ 178
1131
+ 179
1132
+ 180</pre>
1133
+ </td>
1134
+ <td>
1135
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 178</span>
1136
+
1137
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_list'>cmd_list</span>
1138
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>l</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1139
+ <span class='kw'>end</span></pre>
1140
+ </td>
1141
+ </tr>
1142
+ </table>
1143
+ </div>
1144
+
1145
+ <div class="method_details ">
1146
+ <h3 class="signature " id="cmd_load-instance_method">
1147
+
1148
+ #<strong>cmd_load</strong>(path = nil) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1149
+
1150
+
1151
+
1152
+
1153
+
1154
+ </h3><table class="source_code">
1155
+ <tr>
1156
+ <td>
1157
+ <pre class="lines">
1158
+
1159
+
1160
+ 316
1161
+ 317
1162
+ 318
1163
+ 319
1164
+ 320
1165
+ 321</pre>
1166
+ </td>
1167
+ <td>
1168
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 316</span>
1169
+
1170
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_load'>cmd_load</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1171
+ <span class='id identifier rubyid_hash'>hash</span> <span class='op'>=</span> <span class='id identifier rubyid_load_hash'>load_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
1172
+ <span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>unless</span> <span class='id identifier rubyid_assign_hash'>assign_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_hash'>hash</span><span class='rparen'>)</span>
1173
+ <span class='id identifier rubyid_print_hash'>print_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_hash'>hash</span><span class='rparen'>)</span>
1174
+ <span class='kw'>true</span>
1175
+ <span class='kw'>end</span></pre>
1176
+ </td>
1177
+ </tr>
1178
+ </table>
1179
+ </div>
1180
+
1181
+ <div class="method_details ">
1182
+ <h3 class="signature " id="cmd_metadata-instance_method">
1183
+
1184
+ #<strong>cmd_metadata</strong>(*args) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1185
+
1186
+
1187
+
1188
+
1189
+
1190
+ </h3><div class="docstring">
1191
+ <div class="discussion">
1192
+
1193
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;m&#39; (metadata message) and
1194
+ <code>args</code> and <code>load_only</code> option.</p>
1195
+
1196
+
1197
+ </div>
1198
+ </div>
1199
+ <div class="tags">
1200
+ <p class="tag_title">Parameters:</p>
1201
+ <ul class="param">
1202
+
1203
+ <li>
1204
+
1205
+ <span class='name'>args</span>
1206
+
1207
+
1208
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
1209
+
1210
+
1211
+
1212
+ &mdash;
1213
+ <div class='inline'>
1214
+ <p>arguments from command line.</p>
1215
+ </div>
1216
+
1217
+ </li>
1218
+
1219
+ </ul>
1220
+
1221
+
1222
+ </div><table class="source_code">
1223
+ <tr>
1224
+ <td>
1225
+ <pre class="lines">
1226
+
1227
+
1228
+ 232
1229
+ 233
1230
+ 234</pre>
1231
+ </td>
1232
+ <td>
1233
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 232</span>
1234
+
1235
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_metadata'>cmd_metadata</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1236
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>m</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='label'>load_only:</span> <span class='kw'>true</span><span class='rparen'>)</span>
1237
+ <span class='kw'>end</span></pre>
1238
+ </td>
1239
+ </tr>
1240
+ </table>
1241
+ </div>
1242
+
1243
+ <div class="method_details ">
1244
+ <h3 class="signature " id="cmd_ntp-instance_method">
1245
+
1246
+ #<strong>cmd_ntp</strong>(*args) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1247
+
1248
+
1249
+
1250
+
1251
+
1252
+ </h3><div class="docstring">
1253
+ <div class="discussion">
1254
+
1255
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;f&#39; (NTP servers message) and
1256
+ <code>args</code> and <code>last_array</code> option.</p>
1257
+
1258
+
1259
+ </div>
1260
+ </div>
1261
+ <div class="tags">
1262
+ <p class="tag_title">Parameters:</p>
1263
+ <ul class="param">
1264
+
1265
+ <li>
1266
+
1267
+ <span class='name'>args</span>
1268
+
1269
+
1270
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
1271
+
1272
+
1273
+
1274
+ &mdash;
1275
+ <div class='inline'>
1276
+ <p>arguments from command line.</p>
1277
+ </div>
1278
+
1279
+ </li>
1280
+
1281
+ </ul>
1282
+
1283
+
1284
+ </div><table class="source_code">
1285
+ <tr>
1286
+ <td>
1287
+ <pre class="lines">
1288
+
1289
+
1290
+ 216
1291
+ 217
1292
+ 218</pre>
1293
+ </td>
1294
+ <td>
1295
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 216</span>
1296
+
1297
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_ntp'>cmd_ntp</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1298
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>f</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='label'>last_array:</span> <span class='kw'>true</span><span class='rparen'>)</span>
1299
+ <span class='kw'>end</span></pre>
1300
+ </td>
1301
+ </tr>
1302
+ </table>
1303
+ </div>
1304
+
1305
+ <div class="method_details ">
1306
+ <h3 class="signature " id="cmd_pair-instance_method">
1307
+
1308
+ #<strong>cmd_pair</strong>(*args) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1309
+
1310
+
1311
+
1312
+
1313
+
1314
+ </h3><div class="docstring">
1315
+ <div class="discussion">
1316
+
1317
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;n&#39; (new device request) and
1318
+ <code>args</code>.</p>
1319
+
1320
+
1321
+ </div>
1322
+ </div>
1323
+ <div class="tags">
1324
+ <p class="tag_title">Parameters:</p>
1325
+ <ul class="param">
1326
+
1327
+ <li>
1328
+
1329
+ <span class='name'>args</span>
1330
+
1331
+
1332
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
1333
+
1334
+
1335
+
1336
+ &mdash;
1337
+ <div class='inline'>
1338
+ <p>arguments from command line.</p>
1339
+ </div>
1340
+
1341
+ </li>
1342
+
1343
+ </ul>
1344
+
1345
+
1346
+ </div><table class="source_code">
1347
+ <tr>
1348
+ <td>
1349
+ <pre class="lines">
1350
+
1351
+
1352
+ 200
1353
+ 201
1354
+ 202</pre>
1355
+ </td>
1356
+ <td>
1357
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 200</span>
1358
+
1359
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_pair'>cmd_pair</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1360
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>n</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1361
+ <span class='kw'>end</span></pre>
1362
+ </td>
1363
+ </tr>
1364
+ </table>
1365
+ </div>
1366
+
1367
+ <div class="method_details ">
1368
+ <h3 class="signature " id="cmd_persist-instance_method">
1369
+
1370
+ #<strong>cmd_persist</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1371
+
1372
+
1373
+
1374
+
1375
+
1376
+ </h3><div class="docstring">
1377
+ <div class="discussion">
1378
+
1379
+ <p>Calls <span class='object_link'><a href="#toggle-instance_method" title="MaxCube::Network::TCP::Client::Commands#toggle (method)">#toggle</a></span> with persist mode variable.</p>
1380
+
1381
+
1382
+ </div>
1383
+ </div>
1384
+ <div class="tags">
1385
+
1386
+
1387
+ </div><table class="source_code">
1388
+ <tr>
1389
+ <td>
1390
+ <pre class="lines">
1391
+
1392
+
1393
+ 339
1394
+ 340
1395
+ 341
1396
+ 342</pre>
1397
+ </td>
1398
+ <td>
1399
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 339</span>
1400
+
1401
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_persist'>cmd_persist</span>
1402
+ <span class='ivar'>@persist</span> <span class='op'>=</span> <span class='id identifier rubyid_toggle'>toggle</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>persist</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='ivar'>@persist</span><span class='rparen'>)</span>
1403
+ <span class='ivar'>@hash_set</span> <span class='op'>=</span> <span class='ivar'>@persist</span> <span class='kw'>if</span> <span class='ivar'>@hash</span>
1404
+ <span class='kw'>end</span></pre>
1405
+ </td>
1406
+ </tr>
1407
+ </table>
1408
+ </div>
1409
+
1410
+ <div class="method_details ">
1411
+ <h3 class="signature " id="cmd_quit-instance_method">
1412
+
1413
+ #<strong>cmd_quit</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1414
+
1415
+
1416
+
1417
+
1418
+
1419
+ </h3><div class="docstring">
1420
+ <div class="discussion">
1421
+
1422
+ <p>Manages to close the client gracefully (it should lead to <span class='object_link'><a href="../Client.html#close-instance_method" title="MaxCube::Network::TCP::Client#close (method)">MaxCube::Network::TCP::Client#close</a></span>).</p>
1423
+
1424
+
1425
+ </div>
1426
+ </div>
1427
+ <div class="tags">
1428
+
1429
+ <p class="tag_title">Raises:</p>
1430
+ <ul class="raise">
1431
+
1432
+ <li>
1433
+
1434
+
1435
+ <span class='type'>(<tt>Interrupt</tt>)</span>
1436
+
1437
+
1438
+
1439
+ </li>
1440
+
1441
+ </ul>
1442
+
1443
+ </div><table class="source_code">
1444
+ <tr>
1445
+ <td>
1446
+ <pre class="lines">
1447
+
1448
+
1449
+ 346
1450
+ 347
1451
+ 348</pre>
1452
+ </td>
1453
+ <td>
1454
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 346</span>
1455
+
1456
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_quit'>cmd_quit</span>
1457
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>Interrupt</span>
1458
+ <span class='kw'>end</span></pre>
1459
+ </td>
1460
+ </tr>
1461
+ </table>
1462
+ </div>
1463
+
1464
+ <div class="method_details ">
1465
+ <h3 class="signature " id="cmd_reset-instance_method">
1466
+
1467
+ #<strong>cmd_reset</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1468
+
1469
+
1470
+
1471
+
1472
+
1473
+ </h3><div class="docstring">
1474
+ <div class="discussion">
1475
+
1476
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;a&#39; (factory reset request).</p>
1477
+
1478
+
1479
+ </div>
1480
+ </div>
1481
+ <div class="tags">
1482
+
1483
+
1484
+ </div><table class="source_code">
1485
+ <tr>
1486
+ <td>
1487
+ <pre class="lines">
1488
+
1489
+
1490
+ 246
1491
+ 247
1492
+ 248</pre>
1493
+ </td>
1494
+ <td>
1495
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 246</span>
1496
+
1497
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_reset'>cmd_reset</span>
1498
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>a</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1499
+ <span class='kw'>end</span></pre>
1500
+ </td>
1501
+ </tr>
1502
+ </table>
1503
+ </div>
1504
+
1505
+ <div class="method_details ">
1506
+ <h3 class="signature " id="cmd_save-instance_method">
1507
+
1508
+ #<strong>cmd_save</strong>(what = nil) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1509
+
1510
+
1511
+
1512
+
1513
+
1514
+ </h3><table class="source_code">
1515
+ <tr>
1516
+ <td>
1517
+ <pre class="lines">
1518
+
1519
+
1520
+ 250
1521
+ 251
1522
+ 252
1523
+ 253
1524
+ 254
1525
+ 255
1526
+ 256
1527
+ 257
1528
+ 258
1529
+ 259
1530
+ 260
1531
+ 261
1532
+ 262
1533
+ 263
1534
+ 264
1535
+ 265
1536
+ 266
1537
+ 267
1538
+ 268
1539
+ 269
1540
+ 270
1541
+ 271
1542
+ 272
1543
+ 273
1544
+ 274
1545
+ 275
1546
+ 276
1547
+ 277
1548
+ 278</pre>
1549
+ </td>
1550
+ <td>
1551
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 250</span>
1552
+
1553
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_save'>cmd_save</span><span class='lparen'>(</span><span class='id identifier rubyid_what'>what</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1554
+ <span class='id identifier rubyid_buffer'>buffer</span> <span class='op'>=</span> <span class='op'>!</span><span class='id identifier rubyid_what'>what</span>
1555
+ <span class='id identifier rubyid_all'>all</span> <span class='op'>=</span> <span class='qwords_beg'>%w[</span><span class='tstring_content'>a</span><span class='words_sep'> </span><span class='tstring_content'>A</span><span class='words_sep'> </span><span class='tstring_content'>all</span><span class='tstring_end'>]</span></span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span><span class='lparen'>(</span><span class='id identifier rubyid_what'>what</span><span class='rparen'>)</span>
1556
+ <span class='kw'>unless</span> <span class='id identifier rubyid_all'>all</span> <span class='op'>||</span> <span class='id identifier rubyid_buffer'>buffer</span>
1557
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Unrecognized argument: &#39;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_what'>what</span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39;</span><span class='tstring_end'>&quot;</span></span>
1558
+ <span class='kw'>return</span>
1559
+ <span class='kw'>end</span>
1560
+
1561
+ <span class='id identifier rubyid_dir'>dir</span> <span class='op'>=</span> <span class='ivar'>@save_data_dir</span> <span class='op'>+</span> <span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span><span class='period'>.</span><span class='id identifier rubyid_strftime'>strftime</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>%Y%m%d-%H%M</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1562
+ <span class='id identifier rubyid_dir'>dir</span><span class='period'>.</span><span class='id identifier rubyid_mkpath'>mkpath</span>
1563
+
1564
+ <span class='qsymbols_beg'>%i[</span><span class='tstring_content'>recv</span><span class='words_sep'> </span><span class='tstring_content'>sent</span><span class='tstring_end'>]</span></span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_sym'>sym</span><span class='op'>|</span>
1565
+ <span class='id identifier rubyid_data_fn'>data_fn</span> <span class='op'>=</span> <span class='id identifier rubyid_dir'>dir</span> <span class='op'>+</span> <span class='lparen'>(</span><span class='id identifier rubyid_sym'>sym</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>.data</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1566
+ <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_data_fn'>data_fn</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>w</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span>
1567
+ <span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_puts'>puts</span><span class='lparen'>(</span><span class='id identifier rubyid_buffer'>buffer</span><span class='lparen'>(</span><span class='id identifier rubyid_sym'>sym</span><span class='comma'>,</span> <span class='symbol'>:data</span><span class='comma'>,</span> <span class='id identifier rubyid_all'>all</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='rparen'>)</span>
1568
+ <span class='kw'>end</span>
1569
+
1570
+ <span class='id identifier rubyid_hashes_fn'>hashes_fn</span> <span class='op'>=</span> <span class='id identifier rubyid_dir'>dir</span> <span class='op'>+</span> <span class='lparen'>(</span><span class='id identifier rubyid_sym'>sym</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>.yaml</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1571
+ <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_hashes_fn'>hashes_fn</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>w</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_f'>f</span><span class='op'>|</span>
1572
+ <span class='id identifier rubyid_buffer'>buffer</span><span class='lparen'>(</span><span class='id identifier rubyid_sym'>sym</span><span class='comma'>,</span> <span class='symbol'>:hashes</span><span class='comma'>,</span> <span class='id identifier rubyid_all'>all</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_yaml'>to_yaml</span><span class='lparen'>(</span><span class='id identifier rubyid_f'>f</span><span class='rparen'>)</span>
1573
+ <span class='kw'>end</span>
1574
+ <span class='kw'>end</span>
1575
+
1576
+ <span class='id identifier rubyid_which'>which</span> <span class='op'>=</span> <span class='id identifier rubyid_buffer'>buffer</span> <span class='op'>?</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Buffered</span><span class='tstring_end'>&#39;</span></span> <span class='op'>:</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>All</span><span class='tstring_end'>&#39;</span></span>
1577
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_which'>which</span><span class='embexpr_end'>}</span><span class='tstring_content'> received and sent raw data and hashes</span><span class='tstring_end'>&quot;</span></span> \
1578
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> saved into &#39;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_dir'>dir</span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39;</span><span class='tstring_end'>&quot;</span></span>
1579
+ <span class='kw'>rescue</span> <span class='const'>SystemCallError</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
1580
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Files could not been saved:\n</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_e'>e</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
1581
+ <span class='kw'>end</span></pre>
1582
+ </td>
1583
+ </tr>
1584
+ </table>
1585
+ </div>
1586
+
1587
+ <div class="method_details ">
1588
+ <h3 class="signature " id="cmd_send-instance_method">
1589
+
1590
+ #<strong>cmd_send</strong>(*args) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1591
+
1592
+
1593
+
1594
+
1595
+
1596
+ </h3><div class="docstring">
1597
+ <div class="discussion">
1598
+
1599
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;s&#39; (send command message) and
1600
+ <code>args</code> and <code>load_only</code> option.</p>
1601
+
1602
+
1603
+ </div>
1604
+ </div>
1605
+ <div class="tags">
1606
+ <p class="tag_title">Parameters:</p>
1607
+ <ul class="param">
1608
+
1609
+ <li>
1610
+
1611
+ <span class='name'>args</span>
1612
+
1613
+
1614
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
1615
+
1616
+
1617
+
1618
+ &mdash;
1619
+ <div class='inline'>
1620
+ <p>arguments from command line.</p>
1621
+ </div>
1622
+
1623
+ </li>
1624
+
1625
+ </ul>
1626
+
1627
+
1628
+ </div><table class="source_code">
1629
+ <tr>
1630
+ <td>
1631
+ <pre class="lines">
1632
+
1633
+
1634
+ 192
1635
+ 193
1636
+ 194</pre>
1637
+ </td>
1638
+ <td>
1639
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 192</span>
1640
+
1641
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_send'>cmd_send</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1642
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>s</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='label'>load_only:</span> <span class='kw'>true</span><span class='rparen'>)</span>
1643
+ <span class='kw'>end</span></pre>
1644
+ </td>
1645
+ </tr>
1646
+ </table>
1647
+ </div>
1648
+
1649
+ <div class="method_details ">
1650
+ <h3 class="signature " id="cmd_url-instance_method">
1651
+
1652
+ #<strong>cmd_url</strong>(*args) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1653
+
1654
+
1655
+
1656
+
1657
+
1658
+ </h3><div class="docstring">
1659
+ <div class="discussion">
1660
+
1661
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;u&#39; (set portal URL message)
1662
+ and <code>args</code>.</p>
1663
+
1664
+
1665
+ </div>
1666
+ </div>
1667
+ <div class="tags">
1668
+ <p class="tag_title">Parameters:</p>
1669
+ <ul class="param">
1670
+
1671
+ <li>
1672
+
1673
+ <span class='name'>args</span>
1674
+
1675
+
1676
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
1677
+
1678
+
1679
+
1680
+ &mdash;
1681
+ <div class='inline'>
1682
+ <p>arguments from command line.</p>
1683
+ </div>
1684
+
1685
+ </li>
1686
+
1687
+ </ul>
1688
+
1689
+
1690
+ </div><table class="source_code">
1691
+ <tr>
1692
+ <td>
1693
+ <pre class="lines">
1694
+
1695
+
1696
+ 208
1697
+ 209
1698
+ 210</pre>
1699
+ </td>
1700
+ <td>
1701
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 208</span>
1702
+
1703
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_url'>cmd_url</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1704
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>u</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1705
+ <span class='kw'>end</span></pre>
1706
+ </td>
1707
+ </tr>
1708
+ </table>
1709
+ </div>
1710
+
1711
+ <div class="method_details ">
1712
+ <h3 class="signature " id="cmd_usage-instance_method">
1713
+
1714
+ #<strong>cmd_usage</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1715
+
1716
+
1717
+
1718
+
1719
+
1720
+ </h3><div class="docstring">
1721
+ <div class="discussion">
1722
+
1723
+ <p>Prints usage message composed mainly from particular <span class='object_link'><a href="#usage_cmd-instance_method" title="MaxCube::Network::TCP::Client::Commands#usage_cmd (method)">#usage_cmd</a></span> calls.</p>
1724
+
1725
+
1726
+ </div>
1727
+ </div>
1728
+ <div class="tags">
1729
+
1730
+
1731
+ </div><table class="source_code">
1732
+ <tr>
1733
+ <td>
1734
+ <pre class="lines">
1735
+
1736
+
1737
+ 63
1738
+ 64
1739
+ 65
1740
+ 66
1741
+ 67
1742
+ 68
1743
+ 69
1744
+ 70
1745
+ 71
1746
+ 72
1747
+ 73
1748
+ 74
1749
+ 75
1750
+ 76
1751
+ 77
1752
+ 78
1753
+ 79
1754
+ 80
1755
+ 81
1756
+ 82
1757
+ 83
1758
+ 84
1759
+ 85
1760
+ 86
1761
+ 87
1762
+ 88
1763
+ 89
1764
+ 90
1765
+ 91
1766
+ 92
1767
+ 93
1768
+ 94
1769
+ 95
1770
+ 96
1771
+ 97
1772
+ 98
1773
+ 99
1774
+ 100
1775
+ 101
1776
+ 102
1777
+ 103
1778
+ 104
1779
+ 105
1780
+ 106
1781
+ 107
1782
+ 108
1783
+ 109
1784
+ 110
1785
+ 111
1786
+ 112
1787
+ 113
1788
+ 114
1789
+ 115
1790
+ 116
1791
+ 117
1792
+ 118
1793
+ 119
1794
+ 120
1795
+ 121
1796
+ 122
1797
+ 123
1798
+ 124
1799
+ 125
1800
+ 126
1801
+ 127
1802
+ 128
1803
+ 129
1804
+ 130
1805
+ 131
1806
+ 132
1807
+ 133
1808
+ 134
1809
+ 135
1810
+ 136
1811
+ 137
1812
+ 138</pre>
1813
+ </td>
1814
+ <td>
1815
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 63</span>
1816
+
1817
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_usage'>cmd_usage</span>
1818
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\nUSAGE: &lt;command&gt; [&lt;arguments...&gt;]\nCOMMADS:\n</span><span class='tstring_end'>&quot;</span></span> <span class='op'>&lt;&lt;</span>
1819
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>usage</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1820
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Prints this message</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1821
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>data</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1822
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Lists buffered received data (hashes)</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1823
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>history</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1824
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Lists all received data incl. the cleared</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1825
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>clear</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1826
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Clears collected data\n</span><span class='tstring_end'>&quot;</span></span> \
1827
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>(resp. moves it to history)</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1828
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>dump</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1829
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Shortcut for &#39;data&#39; + &#39;clear&#39;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1830
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>list</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1831
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Requests for new list of devices</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>l</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>L</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1832
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>config</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1833
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Requests for configuration message</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>c</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>C</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1834
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>send</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>{}</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1835
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Sends settings to connected devices</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1836
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>s</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>S</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1837
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>pair</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>{&lt;timeout&gt;}</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1838
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Sets device into pairing mode</span><span class='tstring_end'>&#39;</span></span> \
1839
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> with optional timeout\n</span><span class='tstring_end'>&quot;</span></span> \
1840
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>(request for a new device)</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>n</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>N</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1841
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>ntp</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>{&lt;NTP servers...&gt;}</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1842
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Requests for NTP servers</span><span class='tstring_end'>&#39;</span></span> \
1843
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'> and optionally updates them</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1844
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>f</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>F</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1845
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>url</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>{&lt;URL&gt; &lt;port&gt;}</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1846
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Configures Cube\&#39;s portal URL</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>u</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1847
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>wake</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>{&lt;time&gt; &lt;scope&gt; [&lt;ID&gt;]}</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1848
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Wake-ups the Cube</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1849
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>z</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>A</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1850
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>metadata</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>{}</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1851
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Serializes metadata for the Cube</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1852
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>m</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>M</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1853
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>delete</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>{&lt;count&gt; &lt;force&gt; &lt;RF addresses...&gt;}</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1854
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Deletes one or more devices from the Cube (!)</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1855
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>t</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>A</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1856
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>reset</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1857
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Requests for factory reset (!)</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>a</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>A</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1858
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>verbose</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1859
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Toggles verbose mode (whether is incoming data\n</span><span class='tstring_end'>&quot;</span></span> \
1860
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>printed immediately or is not printed)</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1861
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>save</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>[a|A|all]</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1862
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Saves buffered [all] received and sent data\n</span><span class='tstring_end'>&quot;</span></span> \
1863
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>into files at &#39;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@save_data_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39;</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1864
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>load</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>[&lt;path&gt;]</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1865
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Loads first hash from YAML file</span><span class='tstring_end'>&#39;</span></span> \
1866
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> to internal variable\n</span><span class='tstring_end'>&quot;</span></span> \
1867
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>-&gt; to pass data with outgoing message\n</span><span class='tstring_end'>&quot;</span></span> \
1868
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>If path is relative,</span><span class='tstring_end'>&#39;</span></span> \
1869
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> it looks in &#39;</span><span class='embexpr_beg'>#{</span><span class='ivar'>@load_data_dir</span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39;\n</span><span class='tstring_end'>&quot;</span></span> \
1870
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>(loads previous valid hash if no file given)\n</span><span class='tstring_end'>&quot;</span></span> \
1871
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>(command can be combined</span><span class='tstring_end'>&#39;</span></span> \
1872
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> using &#39;</span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="../Client.html#ARGS_FROM_HASH-constant" title="MaxCube::Network::TCP::Client::ARGS_FROM_HASH (constant)">ARGS_FROM_HASH</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39;\n</span><span class='tstring_end'>&quot;</span></span> \
1873
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'> with other commands</span><span class='tstring_end'>&#39;</span></span> \
1874
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> which have &#39;{}&#39; arguments)</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1875
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>persist</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1876
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Toggles persistent mode</span><span class='tstring_end'>&#39;</span></span> \
1877
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>(whether is internal hash\n</span><span class='tstring_end'>&quot;</span></span> \
1878
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>not invalidated after use)</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1879
+ <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>quit</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span>
1880
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Shuts the client down gracefully\n</span><span class='tstring_end'>&quot;</span></span> \
1881
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>(SIGINT and EOF also work)</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>q</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
1882
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n[&lt;arg&gt;] means optional argument &lt;arg&gt;</span><span class='tstring_end'>&quot;</span></span> \
1883
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n[&lt;args...&gt;] means multiple arguments &lt;args...&gt; or none</span><span class='tstring_end'>&quot;</span></span> \
1884
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n (&lt;args...&gt; requires at least one)</span><span class='tstring_end'>&quot;</span></span> \
1885
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n{&lt;arg&gt;} means that either &lt;arg&gt;</span><span class='tstring_end'>&quot;</span></span> \
1886
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> or &#39;</span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="../Client.html#ARGS_FROM_HASH-constant" title="MaxCube::Network::TCP::Client::ARGS_FROM_HASH (constant)">ARGS_FROM_HASH</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39; is expected</span><span class='tstring_end'>&quot;</span></span> \
1887
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n (when &#39;</span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="../Client.html#ARGS_FROM_HASH-constant" title="MaxCube::Network::TCP::Client::ARGS_FROM_HASH (constant)">ARGS_FROM_HASH</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39; specified as first argument,</span><span class='tstring_end'>&quot;</span></span> \
1888
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'> internal hash is used</span><span class='tstring_end'>&#39;</span></span> \
1889
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n -&gt; &#39;load&#39; command is called with rest arguments)</span><span class='tstring_end'>&quot;</span></span> \
1890
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n ({} means that only internal hash can be used,</span><span class='tstring_end'>&quot;</span></span> \
1891
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n &#39;</span><span class='embexpr_beg'>#{</span><span class='const'><span class='object_link'><a href="../Client.html#ARGS_FROM_HASH-constant" title="MaxCube::Network::TCP::Client::ARGS_FROM_HASH (constant)">ARGS_FROM_HASH</a></span></span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39; is not necessary in this case)</span><span class='tstring_end'>&quot;</span></span>
1892
+ <span class='kw'>end</span></pre>
1893
+ </td>
1894
+ </tr>
1895
+ </table>
1896
+ </div>
1897
+
1898
+ <div class="method_details ">
1899
+ <h3 class="signature " id="cmd_verbose-instance_method">
1900
+
1901
+ #<strong>cmd_verbose</strong> &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1902
+
1903
+
1904
+
1905
+
1906
+
1907
+ </h3><div class="docstring">
1908
+ <div class="discussion">
1909
+
1910
+ <p>Calls <span class='object_link'><a href="#toggle-instance_method" title="MaxCube::Network::TCP::Client::Commands#toggle (method)">#toggle</a></span> with verbose mode variable.</p>
1911
+
1912
+
1913
+ </div>
1914
+ </div>
1915
+ <div class="tags">
1916
+
1917
+
1918
+ </div><table class="source_code">
1919
+ <tr>
1920
+ <td>
1921
+ <pre class="lines">
1922
+
1923
+
1924
+ 334
1925
+ 335
1926
+ 336</pre>
1927
+ </td>
1928
+ <td>
1929
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 334</span>
1930
+
1931
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_verbose'>cmd_verbose</span>
1932
+ <span class='ivar'>@verbose</span> <span class='op'>=</span> <span class='id identifier rubyid_toggle'>toggle</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>verbose</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='ivar'>@verbose</span><span class='rparen'>)</span>
1933
+ <span class='kw'>end</span></pre>
1934
+ </td>
1935
+ </tr>
1936
+ </table>
1937
+ </div>
1938
+
1939
+ <div class="method_details ">
1940
+ <h3 class="signature " id="cmd_wake-instance_method">
1941
+
1942
+ #<strong>cmd_wake</strong>(*args) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
1943
+
1944
+
1945
+
1946
+
1947
+
1948
+ </h3><div class="docstring">
1949
+ <div class="discussion">
1950
+
1951
+ <p>Calls <span class='object_link'><a href="../Client.html#send_msg-instance_method" title="MaxCube::Network::TCP::Client#send_msg (method)">MaxCube::Network::TCP::Client#send_msg</a></span> with message type &#39;z&#39; (wake-up message) and
1952
+ <code>args</code>.</p>
1953
+
1954
+
1955
+ </div>
1956
+ </div>
1957
+ <div class="tags">
1958
+ <p class="tag_title">Parameters:</p>
1959
+ <ul class="param">
1960
+
1961
+ <li>
1962
+
1963
+ <span class='name'>args</span>
1964
+
1965
+
1966
+ <span class='type'>(<tt>Array&lt;String&gt;</tt>)</span>
1967
+
1968
+
1969
+
1970
+ &mdash;
1971
+ <div class='inline'>
1972
+ <p>arguments from command line.</p>
1973
+ </div>
1974
+
1975
+ </li>
1976
+
1977
+ </ul>
1978
+
1979
+
1980
+ </div><table class="source_code">
1981
+ <tr>
1982
+ <td>
1983
+ <pre class="lines">
1984
+
1985
+
1986
+ 224
1987
+ 225
1988
+ 226</pre>
1989
+ </td>
1990
+ <td>
1991
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 224</span>
1992
+
1993
+ <span class='kw'>def</span> <span class='id identifier rubyid_cmd_wake'>cmd_wake</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1994
+ <span class='id identifier rubyid_send_msg'>send_msg</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>z</span><span class='tstring_end'>&#39;</span></span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
1995
+ <span class='kw'>end</span></pre>
1996
+ </td>
1997
+ </tr>
1998
+ </table>
1999
+ </div>
2000
+
2001
+ <div class="method_details ">
2002
+ <h3 class="signature " id="list_hashes-instance_method">
2003
+
2004
+ #<strong>list_hashes</strong>(history) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
2005
+
2006
+
2007
+
2008
+
2009
+
2010
+ </h3><div class="docstring">
2011
+ <div class="discussion">
2012
+
2013
+ <p>Displays received hashes optionally with history. Calls <span class='object_link'><a href="../Client.html#buffer-instance_method" title="MaxCube::Network::TCP::Client#buffer (method)">MaxCube::Network::TCP::Client#buffer</a></span>.</p>
2014
+
2015
+
2016
+ </div>
2017
+ </div>
2018
+ <div class="tags">
2019
+ <p class="tag_title">Parameters:</p>
2020
+ <ul class="param">
2021
+
2022
+ <li>
2023
+
2024
+ <span class='name'>history</span>
2025
+
2026
+
2027
+ <span class='type'>(<tt>Boolean</tt>)</span>
2028
+
2029
+
2030
+
2031
+ &mdash;
2032
+ <div class='inline'>
2033
+ <p>whether to include history.</p>
2034
+ </div>
2035
+
2036
+ </li>
2037
+
2038
+ </ul>
2039
+
2040
+
2041
+ </div><table class="source_code">
2042
+ <tr>
2043
+ <td>
2044
+ <pre class="lines">
2045
+
2046
+
2047
+ 143
2048
+ 144
2049
+ 145
2050
+ 146
2051
+ 147
2052
+ 148
2053
+ 149</pre>
2054
+ </td>
2055
+ <td>
2056
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 143</span>
2057
+
2058
+ <span class='kw'>def</span> <span class='id identifier rubyid_list_hashes'>list_hashes</span><span class='lparen'>(</span><span class='id identifier rubyid_history'>history</span><span class='rparen'>)</span>
2059
+ <span class='id identifier rubyid_buffer'>buffer</span><span class='lparen'>(</span><span class='symbol'>:recv</span><span class='comma'>,</span> <span class='symbol'>:hashes</span><span class='comma'>,</span> <span class='id identifier rubyid_history'>history</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_each_with_index'>each_with_index</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_h'>h</span><span class='comma'>,</span> <span class='id identifier rubyid_i'>i</span><span class='op'>|</span>
2060
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&lt;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_i'>i</span> <span class='op'>+</span> <span class='int'>1</span><span class='embexpr_end'>}</span><span class='tstring_content'>&gt;</span><span class='tstring_end'>&quot;</span></span>
2061
+ <span class='id identifier rubyid_print_hash'>print_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_h'>h</span><span class='rparen'>)</span>
2062
+ <span class='id identifier rubyid_puts'>puts</span>
2063
+ <span class='kw'>end</span>
2064
+ <span class='kw'>end</span></pre>
2065
+ </td>
2066
+ </tr>
2067
+ </table>
2068
+ </div>
2069
+
2070
+ <div class="method_details ">
2071
+ <h3 class="signature " id="load_hash-instance_method">
2072
+
2073
+ #<strong>load_hash</strong>(path = nil) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
2074
+
2075
+
2076
+
2077
+
2078
+
2079
+ </h3><table class="source_code">
2080
+ <tr>
2081
+ <td>
2082
+ <pre class="lines">
2083
+
2084
+
2085
+ 293
2086
+ 294
2087
+ 295
2088
+ 296
2089
+ 297
2090
+ 298
2091
+ 299
2092
+ 300
2093
+ 301
2094
+ 302
2095
+ 303
2096
+ 304
2097
+ 305
2098
+ 306
2099
+ 307</pre>
2100
+ </td>
2101
+ <td>
2102
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 293</span>
2103
+
2104
+ <span class='kw'>def</span> <span class='id identifier rubyid_load_hash'>load_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
2105
+ <span class='kw'>if</span> <span class='id identifier rubyid_path'>path</span>
2106
+ <span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='const'>Pathname</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
2107
+ <span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='ivar'>@load_data_dir</span> <span class='op'>+</span> <span class='id identifier rubyid_path'>path</span> <span class='kw'>if</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_relative?'>relative?</span>
2108
+ <span class='kw'>return</span> <span class='id identifier rubyid_parse_hash'>parse_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
2109
+ <span class='kw'>end</span>
2110
+ <span class='kw'>return</span> <span class='ivar'>@hash</span> <span class='kw'>if</span> <span class='ivar'>@hash</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@hash_set</span>
2111
+
2112
+ <span class='kw'>if</span> <span class='ivar'>@hash</span>
2113
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>Internal hash is not set</span><span class='tstring_end'>&#39;</span></span>
2114
+ <span class='kw'>else</span>
2115
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>No internal hash loaded yet</span><span class='tstring_end'>&#39;</span></span>
2116
+ <span class='id identifier rubyid_cmd_usage'>cmd_usage</span>
2117
+ <span class='kw'>end</span>
2118
+ <span class='kw'>end</span></pre>
2119
+ </td>
2120
+ </tr>
2121
+ </table>
2122
+ </div>
2123
+
2124
+ <div class="method_details ">
2125
+ <h3 class="signature " id="parse_hash-instance_method">
2126
+
2127
+ #<strong>parse_hash</strong>(path) &#x21d2; <tt>Object</tt> <span class="extras">(private)</span>
2128
+
2129
+
2130
+
2131
+
2132
+
2133
+ </h3><table class="source_code">
2134
+ <tr>
2135
+ <td>
2136
+ <pre class="lines">
2137
+
2138
+
2139
+ 280
2140
+ 281
2141
+ 282
2142
+ 283
2143
+ 284
2144
+ 285
2145
+ 286
2146
+ 287
2147
+ 288
2148
+ 289
2149
+ 290
2150
+ 291</pre>
2151
+ </td>
2152
+ <td>
2153
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 280</span>
2154
+
2155
+ <span class='kw'>def</span> <span class='id identifier rubyid_parse_hash'>parse_hash</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
2156
+ <span class='kw'>unless</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_file?'>file?</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_path'>path</span><span class='period'>.</span><span class='id identifier rubyid_readable?'>readable?</span>
2157
+ <span class='kw'>return</span> <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>File is not readable: &#39;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_path'>path</span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39;</span><span class='tstring_end'>&quot;</span></span>
2158
+ <span class='kw'>end</span>
2159
+
2160
+ <span class='id identifier rubyid_hash'>hash</span> <span class='op'>=</span> <span class='const'>YAML</span><span class='period'>.</span><span class='id identifier rubyid_load_file'>load_file</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span>
2161
+ <span class='id identifier rubyid_hash'>hash</span> <span class='op'>=</span> <span class='id identifier rubyid_hash'>hash</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span> <span class='kw'>while</span> <span class='id identifier rubyid_hash'>hash</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Array</span><span class='rparen'>)</span>
2162
+ <span class='id identifier rubyid_raise'>raise</span> <span class='const'>YAML</span><span class='op'>::</span><span class='const'>SyntaxError</span> <span class='kw'>unless</span> <span class='id identifier rubyid_hash'>hash</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Hash</span><span class='rparen'>)</span>
2163
+ <span class='id identifier rubyid_hash'>hash</span>
2164
+ <span class='kw'>rescue</span> <span class='const'>YAML</span><span class='op'>::</span><span class='const'>SyntaxError</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
2165
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>File &#39;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_path'>path</span><span class='embexpr_end'>}</span><span class='tstring_content'>&#39; does not contain proper YAML hash</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='id identifier rubyid_e'>e</span>
2166
+ <span class='kw'>end</span></pre>
2167
+ </td>
2168
+ </tr>
2169
+ </table>
2170
+ </div>
2171
+
2172
+ <div class="method_details ">
2173
+ <h3 class="signature " id="toggle-instance_method">
2174
+
2175
+ #<strong>toggle</strong>(name, flag) &#x21d2; <tt>Boolean</tt> <span class="extras">(private)</span>
2176
+
2177
+
2178
+
2179
+
2180
+
2181
+ </h3><div class="docstring">
2182
+ <div class="discussion">
2183
+
2184
+ <p>Helper method that &#39;toggles&#39; boolean value and prints context info.
2185
+ (It actually does not modify <code>flag</code>.)</p>
2186
+
2187
+
2188
+ </div>
2189
+ </div>
2190
+ <div class="tags">
2191
+ <p class="tag_title">Parameters:</p>
2192
+ <ul class="param">
2193
+
2194
+ <li>
2195
+
2196
+ <span class='name'>name</span>
2197
+
2198
+
2199
+ <span class='type'>(<tt>String</tt>)</span>
2200
+
2201
+
2202
+
2203
+ &mdash;
2204
+ <div class='inline'>
2205
+ <p>variable name.</p>
2206
+ </div>
2207
+
2208
+ </li>
2209
+
2210
+ <li>
2211
+
2212
+ <span class='name'>flag</span>
2213
+
2214
+
2215
+ <span class='type'>(<tt>Boolean</tt>)</span>
2216
+
2217
+
2218
+
2219
+ &mdash;
2220
+ <div class='inline'>
2221
+ <p>boolean value to be &#39;toggled&#39;.</p>
2222
+ </div>
2223
+
2224
+ </li>
2225
+
2226
+ </ul>
2227
+
2228
+ <p class="tag_title">Returns:</p>
2229
+ <ul class="return">
2230
+
2231
+ <li>
2232
+
2233
+
2234
+ <span class='type'>(<tt>Boolean</tt>)</span>
2235
+
2236
+
2237
+
2238
+ &mdash;
2239
+ <div class='inline'>
2240
+ <p>negated value of <code>flag</code>.</p>
2241
+ </div>
2242
+
2243
+ </li>
2244
+
2245
+ </ul>
2246
+
2247
+ </div><table class="source_code">
2248
+ <tr>
2249
+ <td>
2250
+ <pre class="lines">
2251
+
2252
+
2253
+ 328
2254
+ 329
2255
+ 330
2256
+ 331</pre>
2257
+ </td>
2258
+ <td>
2259
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 328</span>
2260
+
2261
+ <span class='kw'>def</span> <span class='id identifier rubyid_toggle'>toggle</span><span class='lparen'>(</span><span class='id identifier rubyid_name'>name</span><span class='comma'>,</span> <span class='id identifier rubyid_flag'>flag</span><span class='rparen'>)</span>
2262
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_name'>name</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_flag'>flag</span><span class='embexpr_end'>}</span><span class='tstring_content'> -&gt; </span><span class='embexpr_beg'>#{</span><span class='op'>!</span><span class='id identifier rubyid_flag'>flag</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span>
2263
+ <span class='op'>!</span><span class='id identifier rubyid_flag'>flag</span>
2264
+ <span class='kw'>end</span></pre>
2265
+ </td>
2266
+ </tr>
2267
+ </table>
2268
+ </div>
2269
+
2270
+ <div class="method_details ">
2271
+ <h3 class="signature " id="usage_cmd-instance_method">
2272
+
2273
+ #<strong>usage_cmd</strong>(command, args, description, message = nil, response = nil) &#x21d2; <tt>String</tt> <span class="extras">(private)</span>
2274
+
2275
+
2276
+
2277
+
2278
+
2279
+ </h3><div class="docstring">
2280
+ <div class="discussion">
2281
+
2282
+ <p>Returns usage message for a single command.</p>
2283
+
2284
+
2285
+ </div>
2286
+ </div>
2287
+ <div class="tags">
2288
+ <p class="tag_title">Parameters:</p>
2289
+ <ul class="param">
2290
+
2291
+ <li>
2292
+
2293
+ <span class='name'>command</span>
2294
+
2295
+
2296
+ <span class='type'>(<tt>String</tt>)</span>
2297
+
2298
+
2299
+
2300
+ &mdash;
2301
+ <div class='inline'>
2302
+ <p>command key from <span class='object_link'><a href="#COMMANDS-constant" title="MaxCube::Network::TCP::Client::Commands::COMMANDS (constant)">COMMANDS</a></span>.</p>
2303
+ </div>
2304
+
2305
+ </li>
2306
+
2307
+ <li>
2308
+
2309
+ <span class='name'>args</span>
2310
+
2311
+
2312
+ <span class='type'>(<tt>String</tt>)</span>
2313
+
2314
+
2315
+
2316
+ &mdash;
2317
+ <div class='inline'>
2318
+ <p>arguments accepted by command.</p>
2319
+ </div>
2320
+
2321
+ </li>
2322
+
2323
+ <li>
2324
+
2325
+ <span class='name'>description</span>
2326
+
2327
+
2328
+ <span class='type'>(<tt>String</tt>)</span>
2329
+
2330
+
2331
+
2332
+ &mdash;
2333
+ <div class='inline'>
2334
+ <p>description of command.</p>
2335
+ </div>
2336
+
2337
+ </li>
2338
+
2339
+ <li>
2340
+
2341
+ <span class='name'>message</span>
2342
+
2343
+
2344
+ <span class='type'>(<tt>String</tt>, <tt>nil</tt>)</span>
2345
+
2346
+
2347
+ <em class="default">(defaults to: <tt>nil</tt>)</em>
2348
+
2349
+
2350
+ &mdash;
2351
+ <div class='inline'>
2352
+ <p>optional message type that is about to be sent by the command.</p>
2353
+ </div>
2354
+
2355
+ </li>
2356
+
2357
+ <li>
2358
+
2359
+ <span class='name'>response</span>
2360
+
2361
+
2362
+ <span class='type'>(<tt>String</tt>, <tt>nil</tt>)</span>
2363
+
2364
+
2365
+ <em class="default">(defaults to: <tt>nil</tt>)</em>
2366
+
2367
+
2368
+ &mdash;
2369
+ <div class='inline'>
2370
+ <p>optional message type of expected response to this message.</p>
2371
+ </div>
2372
+
2373
+ </li>
2374
+
2375
+ </ul>
2376
+
2377
+ <p class="tag_title">Returns:</p>
2378
+ <ul class="return">
2379
+
2380
+ <li>
2381
+
2382
+
2383
+ <span class='type'>(<tt>String</tt>)</span>
2384
+
2385
+
2386
+
2387
+ &mdash;
2388
+ <div class='inline'>
2389
+ <p>usage message for <code>command</code>.</p>
2390
+ </div>
2391
+
2392
+ </li>
2393
+
2394
+ </ul>
2395
+
2396
+ </div><table class="source_code">
2397
+ <tr>
2398
+ <td>
2399
+ <pre class="lines">
2400
+
2401
+
2402
+ 43
2403
+ 44
2404
+ 45
2405
+ 46
2406
+ 47
2407
+ 48
2408
+ 49
2409
+ 50
2410
+ 51
2411
+ 52
2412
+ 53
2413
+ 54
2414
+ 55
2415
+ 56
2416
+ 57
2417
+ 58
2418
+ 59</pre>
2419
+ </td>
2420
+ <td>
2421
+ <pre class="code"><span class="info file"># File 'lib/maxcube/network/tcp/client/commands.rb', line 43</span>
2422
+
2423
+ <span class='kw'>def</span> <span class='id identifier rubyid_usage_cmd'>usage_cmd</span><span class='lparen'>(</span><span class='id identifier rubyid_command'>command</span><span class='comma'>,</span> <span class='id identifier rubyid_args'>args</span><span class='comma'>,</span> <span class='id identifier rubyid_description'>description</span><span class='comma'>,</span>
2424
+ <span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
2425
+ <span class='id identifier rubyid_cmds_str'>cmds_str</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='const'><span class='object_link'><a href="#COMMANDS-constant" title="MaxCube::Network::TCP::Client::Commands::COMMANDS (constant)">COMMANDS</a></span></span><span class='lbracket'>[</span><span class='id identifier rubyid_command'>command</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_command'>command</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>|</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
2426
+ <span class='id identifier rubyid_cmds_str'>cmds_str</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'> </span><span class='tstring_end'>&#39;</span></span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_args'>args</span> <span class='kw'>unless</span> <span class='id identifier rubyid_args'>args</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
2427
+
2428
+ <span class='id identifier rubyid_description'>description</span><span class='comma'>,</span> <span class='op'>*</span><span class='id identifier rubyid_rest'>rest</span> <span class='op'>=</span> <span class='id identifier rubyid_description'>description</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
2429
+ <span class='id identifier rubyid_rest'>rest</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>[</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_message'>message</span><span class='embexpr_end'>}</span><span class='tstring_content'> message]</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_message'>message</span>
2430
+ <span class='id identifier rubyid_rest'>rest</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>[</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_response'>response</span><span class='embexpr_end'>}</span><span class='tstring_content'> response]</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_response'>response</span>
2431
+ <span class='id identifier rubyid_rest'>rest</span> <span class='op'>=</span> <span class='kw'>if</span> <span class='id identifier rubyid_rest'>rest</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
2432
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_end'>&#39;</span></span>
2433
+ <span class='kw'>else</span>
2434
+ <span class='id identifier rubyid_rest'>rest</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_s'>s</span><span class='op'>|</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'> </span><span class='tstring_end'>&#39;</span></span> <span class='op'>*</span> <span class='int'>52</span> <span class='op'>+</span> <span class='id identifier rubyid_s'>s</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span>
2435
+ <span class='kw'>end</span>
2436
+
2437
+ <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'> </span><span class='tstring_end'>&#39;</span></span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_cmds_str'>cmds_str</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'> </span><span class='tstring_end'>&#39;</span></span> <span class='op'>*</span> <span class='lparen'>(</span><span class='int'>48</span> <span class='op'>-</span> <span class='id identifier rubyid_cmds_str'>cmds_str</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='rparen'>)</span> <span class='op'>&lt;&lt;</span>
2438
+ <span class='id identifier rubyid_description'>description</span> <span class='op'>&lt;&lt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_rest'>rest</span>
2439
+ <span class='kw'>end</span></pre>
2440
+ </td>
2441
+ </tr>
2442
+ </table>
2443
+ </div>
2444
+
2445
+ </div>
2446
+
2447
+ </div>
2448
+
2449
+ <div id="footer">
2450
+ Generated on Fri Feb 16 13:44:02 2018 by
2451
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
2452
+ 0.9.12 (ruby-2.5.0).
2453
+ </div>
2454
+
2455
+ </div>
2456
+ </body>
2457
+ </html>