rumai 1.0.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (179) hide show
  1. data/Rakefile +1 -1
  2. data/doc/api/classes/Integer.src/M000002.html +1 -1
  3. data/doc/api/classes/Rumai.html +1 -1
  4. data/doc/api/classes/Rumai.src/M000015.html +1 -1
  5. data/doc/api/classes/Rumai.src/M000016.html +1 -1
  6. data/doc/api/classes/Rumai.src/M000017.html +1 -1
  7. data/doc/api/classes/Rumai.src/M000018.html +1 -1
  8. data/doc/api/classes/Rumai.src/M000019.html +1 -1
  9. data/doc/api/classes/Rumai.src/M000020.html +1 -1
  10. data/doc/api/classes/Rumai.src/M000021.html +1 -1
  11. data/doc/api/classes/Rumai.src/M000022.html +1 -1
  12. data/doc/api/classes/Rumai.src/M000023.html +1 -1
  13. data/doc/api/classes/Rumai.src/M000024.html +1 -1
  14. data/doc/api/classes/Rumai.src/M000025.html +1 -1
  15. data/doc/api/classes/Rumai.src/M000026.html +1 -1
  16. data/doc/api/classes/Rumai/Area.html +87 -87
  17. data/doc/api/classes/Rumai/Area.src/{M000091.html → M000079.html} +5 -8
  18. data/doc/api/classes/Rumai/Area.src/M000080.html +4 -5
  19. data/doc/api/classes/Rumai/Area.src/M000081.html +3 -3
  20. data/doc/api/classes/Rumai/Area.src/M000082.html +5 -5
  21. data/doc/api/classes/Rumai/Area.src/M000083.html +3 -3
  22. data/doc/api/classes/Rumai/Area.src/M000084.html +3 -3
  23. data/doc/api/classes/Rumai/Area.src/M000085.html +4 -4
  24. data/doc/api/classes/Rumai/Area.src/M000086.html +4 -4
  25. data/doc/api/classes/Rumai/Area.src/M000087.html +4 -4
  26. data/doc/api/classes/Rumai/Area.src/M000088.html +4 -4
  27. data/doc/api/classes/Rumai/Area.src/M000089.html +4 -4
  28. data/doc/api/classes/Rumai/Area.src/M000090.html +7 -3
  29. data/doc/api/classes/Rumai/Area.src/M000092.html +23 -0
  30. data/doc/api/classes/Rumai/Area.src/M000093.html +8 -3
  31. data/doc/api/classes/Rumai/Area.src/M000094.html +4 -14
  32. data/doc/api/classes/Rumai/Area.src/M000095.html +17 -4
  33. data/doc/api/classes/Rumai/Chain.html +18 -18
  34. data/doc/api/classes/Rumai/Chain.src/{M000079.html → M000076.html} +4 -4
  35. data/doc/api/classes/Rumai/Chain.src/M000077.html +4 -4
  36. data/doc/api/classes/Rumai/Chain.src/M000078.html +4 -4
  37. data/doc/api/classes/Rumai/Client.html +48 -30
  38. data/doc/api/classes/Rumai/Client.src/M000113.html +18 -0
  39. data/doc/api/classes/Rumai/Client.src/M000114.html +4 -4
  40. data/doc/api/classes/Rumai/Client.src/M000115.html +5 -5
  41. data/doc/api/classes/Rumai/Client.src/M000116.html +26 -5
  42. data/doc/api/classes/Rumai/Client.src/M000117.html +5 -25
  43. data/doc/api/classes/Rumai/Client.src/M000118.html +4 -13
  44. data/doc/api/classes/Rumai/Client.src/M000119.html +4 -5
  45. data/doc/api/classes/Rumai/Client.src/M000120.html +1 -1
  46. data/doc/api/classes/Rumai/Client.src/M000121.html +1 -1
  47. data/doc/api/classes/Rumai/Client.src/M000122.html +1 -1
  48. data/doc/api/classes/Rumai/Client.src/M000123.html +1 -1
  49. data/doc/api/classes/Rumai/Client.src/M000124.html +1 -1
  50. data/doc/api/classes/Rumai/Client.src/M000125.html +1 -1
  51. data/doc/api/classes/Rumai/Client.src/M000126.html +1 -1
  52. data/doc/api/classes/Rumai/Client.src/M000127.html +1 -1
  53. data/doc/api/classes/Rumai/Client.src/M000128.html +1 -1
  54. data/doc/api/classes/Rumai/Client.src/M000129.html +1 -1
  55. data/doc/api/classes/Rumai/Client.src/M000130.html +1 -1
  56. data/doc/api/classes/Rumai/ClientContainer.src/M000027.html +1 -1
  57. data/doc/api/classes/Rumai/ClientContainer.src/M000028.html +1 -1
  58. data/doc/api/classes/Rumai/ClientContainer.src/M000029.html +1 -1
  59. data/doc/api/classes/Rumai/IXP/Agent.html +77 -77
  60. data/doc/api/classes/Rumai/IXP/Agent.src/M000044.html +53 -0
  61. data/doc/api/classes/Rumai/IXP/Agent.src/M000045.html +36 -0
  62. data/doc/api/classes/Rumai/IXP/Agent.src/M000046.html +20 -28
  63. data/doc/api/classes/Rumai/IXP/Agent.src/M000047.html +5 -29
  64. data/doc/api/classes/Rumai/IXP/Agent.src/M000048.html +7 -24
  65. data/doc/api/classes/Rumai/IXP/Agent.src/M000049.html +5 -5
  66. data/doc/api/classes/Rumai/IXP/Agent.src/M000050.html +18 -7
  67. data/doc/api/classes/Rumai/IXP/Agent.src/M000051.html +5 -6
  68. data/doc/api/classes/Rumai/IXP/Agent.src/M000052.html +4 -19
  69. data/doc/api/classes/Rumai/IXP/Agent.src/M000053.html +7 -5
  70. data/doc/api/classes/Rumai/IXP/Agent.src/M000054.html +6 -4
  71. data/doc/api/classes/Rumai/IXP/Agent.src/M000055.html +6 -7
  72. data/doc/api/classes/Rumai/IXP/Agent.src/M000056.html +8 -6
  73. data/doc/api/classes/Rumai/IXP/Agent.src/M000057.html +9 -6
  74. data/doc/api/classes/Rumai/IXP/Agent.src/M000058.html +5 -8
  75. data/doc/api/classes/Rumai/IXP/Agent/FidStream.html +93 -35
  76. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000060.html +23 -0
  77. data/doc/api/classes/Rumai/IXP/{Struct/Field.src/M000040.html → Agent/FidStream.src/M000061.html} +5 -4
  78. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000062.html +8 -8
  79. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000063.html +4 -7
  80. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000064.html +12 -9
  81. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000065.html +21 -11
  82. data/doc/api/classes/Rumai/IXP/Agent/MODES.html +5 -5
  83. data/doc/api/classes/Rumai/IXP/Agent/MODES.src/{M000061.html → M000059.html} +0 -0
  84. data/doc/api/classes/Rumai/IXP/Agent/RangedPool.html +16 -16
  85. data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000067.html +22 -0
  86. data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000068.html +21 -8
  87. data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000069.html +4 -18
  88. data/doc/api/classes/Rumai/IXP/Fcall.html +21 -21
  89. data/doc/api/classes/Rumai/IXP/Fcall.src/M000070.html +20 -0
  90. data/doc/api/classes/Rumai/IXP/Fcall.src/M000071.html +11 -6
  91. data/doc/api/classes/Rumai/IXP/Fcall.src/M000072.html +4 -11
  92. data/doc/api/classes/Rumai/IXP/Fcall.src/M000073.html +3 -3
  93. data/doc/api/classes/Rumai/IXP/Stat.html +5 -5
  94. data/doc/api/classes/Rumai/IXP/Stat.src/{M000076.html → M000075.html} +1 -1
  95. data/doc/api/classes/Rumai/IXP/Stream.html +5 -5
  96. data/doc/api/classes/Rumai/IXP/Stream.src/{M000045.html → M000043.html} +1 -2
  97. data/doc/api/classes/Rumai/IXP/Struct.html +11 -47
  98. data/doc/api/classes/Rumai/IXP/Struct.src/M000030.html +1 -1
  99. data/doc/api/classes/Rumai/IXP/Struct.src/M000031.html +4 -4
  100. data/doc/api/classes/Rumai/IXP/Struct.src/M000032.html +5 -3
  101. data/doc/api/classes/Rumai/IXP/Struct.src/M000033.html +43 -4
  102. data/doc/api/classes/Rumai/IXP/Struct/Field.html +34 -42
  103. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000034.html +21 -0
  104. data/doc/api/classes/Rumai/IXP/Struct/Field.src/{M000041.html → M000035.html} +7 -4
  105. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000036.html +6 -7
  106. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000037.html +13 -5
  107. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000038.html +4 -6
  108. data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000039.html +4 -15
  109. data/doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.html +12 -12
  110. data/doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.src/{M000043.html → M000041.html} +3 -3
  111. data/doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.src/{M000044.html → M000042.html} +4 -4
  112. data/doc/api/classes/Rumai/IXP/Struct/Field/CounterField.html +6 -6
  113. data/doc/api/classes/Rumai/IXP/Struct/Field/CounterField.src/{M000042.html → M000040.html} +3 -3
  114. data/doc/api/classes/Rumai/IXP/Terror.html +5 -5
  115. data/doc/api/classes/Rumai/IXP/Terror.src/{M000075.html → M000074.html} +1 -1
  116. data/doc/api/classes/Rumai/Node.html +88 -88
  117. data/doc/api/classes/Rumai/Node.src/M000096.html +18 -0
  118. data/doc/api/classes/Rumai/Node.src/M000097.html +4 -4
  119. data/doc/api/classes/Rumai/Node.src/M000098.html +8 -4
  120. data/doc/api/classes/Rumai/Node.src/M000099.html +4 -8
  121. data/doc/api/classes/Rumai/Node.src/M000100.html +4 -4
  122. data/doc/api/classes/Rumai/Node.src/M000101.html +4 -4
  123. data/doc/api/classes/Rumai/Node.src/M000102.html +4 -4
  124. data/doc/api/classes/Rumai/Node.src/M000103.html +8 -4
  125. data/doc/api/classes/Rumai/Node.src/M000104.html +4 -8
  126. data/doc/api/classes/Rumai/Node.src/M000105.html +4 -4
  127. data/doc/api/classes/Rumai/Node.src/M000106.html +4 -4
  128. data/doc/api/classes/Rumai/Node.src/M000107.html +4 -4
  129. data/doc/api/classes/Rumai/Node.src/M000108.html +4 -4
  130. data/doc/api/classes/Rumai/Node.src/M000109.html +4 -4
  131. data/doc/api/classes/Rumai/Node.src/M000110.html +5 -5
  132. data/doc/api/classes/Rumai/Node.src/M000111.html +7 -5
  133. data/doc/api/classes/Rumai/Node.src/M000112.html +12 -5
  134. data/doc/api/classes/Rumai/View.html +2 -2
  135. data/doc/api/classes/Rumai/View.src/M000131.html +1 -1
  136. data/doc/api/classes/Rumai/View.src/M000132.html +1 -1
  137. data/doc/api/classes/Rumai/View.src/M000133.html +1 -1
  138. data/doc/api/classes/Rumai/View.src/M000134.html +1 -1
  139. data/doc/api/classes/Rumai/View.src/M000135.html +1 -1
  140. data/doc/api/classes/Rumai/View.src/M000136.html +1 -1
  141. data/doc/api/classes/Rumai/View.src/M000137.html +1 -1
  142. data/doc/api/classes/Rumai/View.src/M000138.html +1 -1
  143. data/doc/api/classes/Rumai/View.src/M000139.html +1 -1
  144. data/doc/api/classes/Rumai/View.src/M000140.html +1 -1
  145. data/doc/api/classes/Rumai/View.src/M000141.html +3 -3
  146. data/doc/api/classes/Rumai/View.src/M000142.html +1 -1
  147. data/doc/api/classes/Rumai/View.src/M000143.html +1 -1
  148. data/doc/api/classes/Rumai/View.src/M000144.html +1 -1
  149. data/doc/api/classes/Rumai/View.src/M000145.html +1 -1
  150. data/doc/api/classes/Rumai/View.src/M000146.html +1 -1
  151. data/doc/api/classes/String.src/M000005.html +1 -1
  152. data/doc/api/classes/String.src/M000006.html +2 -3
  153. data/doc/api/classes/Time.src/M000003.html +1 -1
  154. data/doc/api/classes/Time.src/M000004.html +1 -1
  155. data/doc/api/created.rid +1 -1
  156. data/doc/api/files/lib/rumai/fs_rb.html +1 -1
  157. data/doc/api/files/lib/rumai/ixp/message_rb.html +1 -1
  158. data/doc/api/files/lib/rumai/ixp/transport_rb.html +1 -1
  159. data/doc/api/files/lib/rumai/nfo_rb.html +1 -1
  160. data/doc/api/files/lib/rumai/wm_rb.html +1 -1
  161. data/doc/api/fr_method_index.html +91 -91
  162. data/doc/guide.erb +2 -2
  163. data/doc/guide.html +49 -41
  164. data/lib/rumai/fs.rb +3 -3
  165. data/lib/rumai/ixp/message.rb +19 -36
  166. data/lib/rumai/ixp/transport.rb +98 -85
  167. data/lib/rumai/nfo.rb +2 -2
  168. data/lib/rumai/wm.rb +15 -25
  169. metadata +24 -25
  170. data/doc/api/classes/Rumai/Area.src/M000096.html +0 -31
  171. data/doc/api/classes/Rumai/IXP/Agent.src/M000059.html +0 -23
  172. data/doc/api/classes/Rumai/IXP/Agent.src/M000060.html +0 -19
  173. data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000066.html +0 -36
  174. data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000070.html +0 -20
  175. data/doc/api/classes/Rumai/IXP/Fcall.src/M000074.html +0 -18
  176. data/doc/api/classes/Rumai/IXP/Struct.src/M000034.html +0 -20
  177. data/doc/api/classes/Rumai/IXP/Struct.src/M000035.html +0 -57
  178. data/doc/api/classes/Rumai/Node.src/M000113.html +0 -27
  179. data/doc/index.html +0 -2035
@@ -5,43 +5,35 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>new (Rumai::IXP::Agent)</title>
8
+ <title>open (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 16</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span> <span class="ruby-identifier">aStream</span>
15
- <span class="ruby-ivar">@stream</span> = <span class="ruby-identifier">aStream</span>
16
- <span class="ruby-ivar">@sendLock</span> = <span class="ruby-constant">Mutex</span>.<span class="ruby-identifier">new</span>
17
- <span class="ruby-ivar">@recvLock</span> = <span class="ruby-constant">Mutex</span>.<span class="ruby-identifier">new</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 147</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">open</span> <span class="ruby-identifier">aPath</span>, <span class="ruby-identifier">aMode</span> = <span class="ruby-value str">'r'</span> <span class="ruby-comment cmt"># :yields: FidStream</span>
15
+ <span class="ruby-identifier">mode</span> = <span class="ruby-constant">MODES</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">aMode</span>)
18
16
 
19
- <span class="ruby-ivar">@responses</span> = {} <span class="ruby-comment cmt"># tag =&gt; message</span>
20
- <span class="ruby-ivar">@tagPool</span> = <span class="ruby-constant">RangedPool</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">0</span><span class="ruby-operator">...</span><span class="ruby-constant">BYTE2_MASK</span>)
17
+ <span class="ruby-comment cmt"># open the file</span>
18
+ <span class="ruby-identifier">pathFid</span> = <span class="ruby-identifier">walk</span>(<span class="ruby-identifier">aPath</span>)
21
19
 
22
- <span class="ruby-ivar">@fidPool</span> = <span class="ruby-constant">RangedPool</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">0</span><span class="ruby-operator">...</span><span class="ruby-constant">BYTE4_MASK</span>)
23
- <span class="ruby-ivar">@msize</span> = <span class="ruby-constant">Tversion</span><span class="ruby-operator">::</span><span class="ruby-constant">MSIZE</span>
24
-
25
- <span class="ruby-comment cmt"># establish connection with 9P2000 server</span>
26
- <span class="ruby-identifier">req</span> = <span class="ruby-constant">Tversion</span>.<span class="ruby-identifier">new</span>(
27
- <span class="ruby-identifier">:tag</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">Fcall</span><span class="ruby-operator">::</span><span class="ruby-constant">NOTAG</span>,
28
- <span class="ruby-identifier">:msize</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">Tversion</span><span class="ruby-operator">::</span><span class="ruby-constant">MSIZE</span>,
29
- <span class="ruby-identifier">:version</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">Tversion</span><span class="ruby-operator">::</span><span class="ruby-constant">VERSION</span>
20
+ <span class="ruby-identifier">talk</span> <span class="ruby-constant">Topen</span>.<span class="ruby-identifier">new</span>(
21
+ <span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">pathFid</span>,
22
+ <span class="ruby-identifier">:mode</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">mode</span>
30
23
  )
31
- <span class="ruby-identifier">rsp</span> = <span class="ruby-identifier">talk</span>(<span class="ruby-identifier">req</span>)
32
24
 
33
- <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">req</span>.<span class="ruby-identifier">version</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">rsp</span>.<span class="ruby-identifier">version</span>
34
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">Error</span>, <span class="ruby-node">&quot;protocol mismatch: self=#{req.version.inspect} server=#{rsp.version.inspect}&quot;</span>
25
+ <span class="ruby-identifier">stream</span> = <span class="ruby-constant">FidStream</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>, <span class="ruby-identifier">pathFid</span>, <span class="ruby-ivar">@msize</span>)
26
+
27
+ <span class="ruby-comment cmt"># return the file stream</span>
28
+ <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block_given?</span>
29
+ <span class="ruby-keyword kw">begin</span>
30
+ <span class="ruby-keyword kw">yield</span> <span class="ruby-identifier">stream</span>
31
+ <span class="ruby-keyword kw">ensure</span>
32
+ <span class="ruby-identifier">stream</span>.<span class="ruby-identifier">close</span>
33
+ <span class="ruby-keyword kw">end</span>
34
+ <span class="ruby-keyword kw">else</span>
35
+ <span class="ruby-identifier">stream</span>
35
36
  <span class="ruby-keyword kw">end</span>
36
-
37
- <span class="ruby-ivar">@msize</span> = <span class="ruby-identifier">rsp</span>.<span class="ruby-identifier">msize</span>
38
-
39
- <span class="ruby-comment cmt"># authenticate the connection (not necessary for wmii)</span>
40
- <span class="ruby-ivar">@authFid</span> = <span class="ruby-constant">Fcall</span><span class="ruby-operator">::</span><span class="ruby-constant">NOFID</span>
41
-
42
- <span class="ruby-comment cmt"># attach to filesystem root</span>
43
- <span class="ruby-ivar">@rootFid</span> = <span class="ruby-ivar">@fidPool</span>.<span class="ruby-identifier">obtain</span>
44
- <span class="ruby-identifier">attach</span> <span class="ruby-ivar">@rootFid</span>, <span class="ruby-ivar">@authFid</span>
45
37
  <span class="ruby-keyword kw">end</span></pre>
46
38
  </body>
47
39
  </html>
@@ -5,39 +5,15 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>talk (Rumai::IXP::Agent)</title>
8
+ <title>read (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 96</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">talk</span> <span class="ruby-identifier">aRequest</span>
15
- <span class="ruby-comment cmt"># send the messsage</span>
16
- <span class="ruby-identifier">ticket</span> = <span class="ruby-identifier">aRequest</span>.<span class="ruby-identifier">tag</span> = <span class="ruby-ivar">@tagPool</span>.<span class="ruby-identifier">obtain</span>
17
-
18
- <span class="ruby-ivar">@sendLock</span>.<span class="ruby-identifier">synchronize</span> <span class="ruby-keyword kw">do</span>
19
- <span class="ruby-ivar">@stream</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">aRequest</span>.<span class="ruby-identifier">to_9p</span>
20
- <span class="ruby-keyword kw">end</span>
21
-
22
- <span class="ruby-comment cmt"># receive the response</span>
23
- <span class="ruby-keyword kw">while</span> <span class="ruby-keyword kw">true</span>
24
- <span class="ruby-comment cmt"># check for *my* response in the bucket</span>
25
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">response</span> = <span class="ruby-ivar">@recvLock</span>.<span class="ruby-identifier">synchronize</span> { <span class="ruby-ivar">@responses</span>.<span class="ruby-identifier">delete</span> <span class="ruby-identifier">ticket</span> }
26
- <span class="ruby-ivar">@tagPool</span>.<span class="ruby-identifier">release</span> <span class="ruby-identifier">ticket</span>
27
-
28
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">response</span>.<span class="ruby-identifier">is_a?</span> <span class="ruby-constant">Rerror</span>
29
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">Error</span>, <span class="ruby-node">&quot;#{response.ename.inspect} in response to #{aRequest.inspect}&quot;</span>
30
- <span class="ruby-keyword kw">else</span>
31
- <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">response</span>
32
- <span class="ruby-keyword kw">end</span>
33
-
34
- <span class="ruby-comment cmt"># put the next response into the bucket</span>
35
- <span class="ruby-keyword kw">else</span>
36
- <span class="ruby-ivar">@recvLock</span>.<span class="ruby-identifier">synchronize</span> <span class="ruby-keyword kw">do</span>
37
- <span class="ruby-identifier">response</span> = <span class="ruby-constant">Fcall</span>.<span class="ruby-identifier">from_9p</span> <span class="ruby-ivar">@stream</span>
38
- <span class="ruby-ivar">@responses</span>[<span class="ruby-identifier">response</span>.<span class="ruby-identifier">tag</span>] = <span class="ruby-identifier">response</span>
39
- <span class="ruby-keyword kw">end</span>
40
- <span class="ruby-keyword kw">end</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 280</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">read</span> <span class="ruby-identifier">aPath</span>, <span class="ruby-operator">*</span><span class="ruby-identifier">aArgs</span>
15
+ <span class="ruby-identifier">open</span> <span class="ruby-identifier">aPath</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
16
+ <span class="ruby-identifier">f</span>.<span class="ruby-identifier">read</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">aArgs</span>)
41
17
  <span class="ruby-keyword kw">end</span>
42
18
  <span class="ruby-keyword kw">end</span></pre>
43
19
  </body>
@@ -5,35 +5,18 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>open (Rumai::IXP::Agent)</title>
8
+ <title>entries (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 147</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">open</span> <span class="ruby-identifier">aPath</span>, <span class="ruby-identifier">aMode</span> = <span class="ruby-value str">'r'</span> <span class="ruby-comment cmt"># :yields: FidStream</span>
15
- <span class="ruby-identifier">mode</span> = <span class="ruby-constant">MODES</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">aMode</span>)
16
-
17
- <span class="ruby-comment cmt"># open the file</span>
18
- <span class="ruby-identifier">pathFid</span> = <span class="ruby-identifier">walk</span>(<span class="ruby-identifier">aPath</span>)
19
-
20
- <span class="ruby-identifier">talk</span> <span class="ruby-constant">Topen</span>.<span class="ruby-identifier">new</span>(
21
- <span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">pathFid</span>,
22
- <span class="ruby-identifier">:mode</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">mode</span>
23
- )
24
-
25
- <span class="ruby-identifier">stream</span> = <span class="ruby-constant">FidStream</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>, <span class="ruby-identifier">pathFid</span>, <span class="ruby-ivar">@msize</span>)
26
-
27
- <span class="ruby-comment cmt"># return the file stream</span>
28
- <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block_given?</span>
29
- <span class="ruby-keyword kw">begin</span>
30
- <span class="ruby-keyword kw">yield</span> <span class="ruby-identifier">stream</span>
31
- <span class="ruby-keyword kw">ensure</span>
32
- <span class="ruby-identifier">stream</span>.<span class="ruby-identifier">close</span>
33
- <span class="ruby-keyword kw">end</span>
34
- <span class="ruby-keyword kw">else</span>
35
- <span class="ruby-identifier">stream</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 287</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">entries</span> <span class="ruby-identifier">aPath</span>
15
+ <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">stat</span>(<span class="ruby-identifier">aPath</span>).<span class="ruby-identifier">directory?</span>
16
+ <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;#{aPath.inspect} is not a directory&quot;</span>
36
17
  <span class="ruby-keyword kw">end</span>
18
+
19
+ <span class="ruby-identifier">read</span>(<span class="ruby-identifier">aPath</span>).<span class="ruby-identifier">map!</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">name</span>}
37
20
  <span class="ruby-keyword kw">end</span></pre>
38
21
  </body>
39
22
  </html>
@@ -5,15 +5,15 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>read (Rumai::IXP::Agent)</title>
8
+ <title>write (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 267</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">read</span> <span class="ruby-identifier">aPath</span>
15
- <span class="ruby-identifier">open</span> <span class="ruby-identifier">aPath</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
16
- <span class="ruby-identifier">f</span>.<span class="ruby-identifier">read</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 296</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">write</span> <span class="ruby-identifier">aPath</span>, <span class="ruby-identifier">aContent</span>
15
+ <span class="ruby-identifier">open</span> <span class="ruby-identifier">aPath</span>, <span class="ruby-value str">'w'</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
16
+ <span class="ruby-identifier">f</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">aContent</span>
17
17
  <span class="ruby-keyword kw">end</span>
18
18
  <span class="ruby-keyword kw">end</span></pre>
19
19
  </body>
@@ -5,18 +5,29 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>entries (Rumai::IXP::Agent)</title>
8
+ <title>create (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 274</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">entries</span> <span class="ruby-identifier">aPath</span>
15
- <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">stat</span>(<span class="ruby-identifier">aPath</span>).<span class="ruby-identifier">directory?</span>
16
- <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">&quot;#{aPath.inspect} is not a directory&quot;</span>
17
- <span class="ruby-keyword kw">end</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 304</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">create</span> <span class="ruby-identifier">aPath</span>, <span class="ruby-identifier">aMode</span> = <span class="ruby-value str">'rw'</span>, <span class="ruby-identifier">aPerm</span> = <span class="ruby-value">0644</span>
15
+ <span class="ruby-identifier">prefix</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-identifier">aPath</span>)
16
+ <span class="ruby-identifier">target</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">basename</span>(<span class="ruby-identifier">aPath</span>)
17
+
18
+ <span class="ruby-identifier">mode</span> = <span class="ruby-constant">MODES</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">aMode</span>)
18
19
 
19
- <span class="ruby-identifier">read</span>(<span class="ruby-identifier">aPath</span>).<span class="ruby-identifier">map!</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">t</span><span class="ruby-operator">|</span> <span class="ruby-identifier">t</span>.<span class="ruby-identifier">name</span>}
20
+ <span class="ruby-identifier">with_fid</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">prefixFid</span><span class="ruby-operator">|</span>
21
+ <span class="ruby-identifier">walk_fid</span> <span class="ruby-identifier">prefixFid</span>, <span class="ruby-identifier">prefix</span>
22
+
23
+ <span class="ruby-comment cmt"># create the file</span>
24
+ <span class="ruby-identifier">talk</span> <span class="ruby-constant">Tcreate</span>.<span class="ruby-identifier">new</span>(
25
+ <span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">prefixFid</span>,
26
+ <span class="ruby-identifier">:name</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">target</span>,
27
+ <span class="ruby-identifier">:perm</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPerm</span>,
28
+ <span class="ruby-identifier">:mode</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">mode</span>
29
+ )
30
+ <span class="ruby-keyword kw">end</span>
20
31
  <span class="ruby-keyword kw">end</span></pre>
21
32
  </body>
22
33
  </html>
@@ -5,16 +5,15 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>write (Rumai::IXP::Agent)</title>
8
+ <title>remove (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 283</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">write</span> <span class="ruby-identifier">aPath</span>, <span class="ruby-identifier">aContent</span>
15
- <span class="ruby-identifier">open</span> <span class="ruby-identifier">aPath</span>, <span class="ruby-value str">'w'</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span>
16
- <span class="ruby-identifier">f</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">aContent</span>
17
- <span class="ruby-keyword kw">end</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 324</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove</span> <span class="ruby-identifier">aPath</span>
15
+ <span class="ruby-identifier">pathFid</span> = <span class="ruby-identifier">walk</span>(<span class="ruby-identifier">aPath</span>)
16
+ <span class="ruby-identifier">remove_fid</span> <span class="ruby-identifier">pathFid</span> <span class="ruby-comment cmt"># remove also does clunk</span>
18
17
  <span class="ruby-keyword kw">end</span></pre>
19
18
  </body>
20
19
  </html>
@@ -5,29 +5,14 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>create (Rumai::IXP::Agent)</title>
8
+ <title>remove_fid (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 291</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">create</span> <span class="ruby-identifier">aPath</span>, <span class="ruby-identifier">aMode</span> = <span class="ruby-value str">'rw'</span>, <span class="ruby-identifier">aPerm</span> = <span class="ruby-value">0644</span>
15
- <span class="ruby-identifier">prefix</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-identifier">aPath</span>)
16
- <span class="ruby-identifier">target</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">basename</span>(<span class="ruby-identifier">aPath</span>)
17
-
18
- <span class="ruby-identifier">mode</span> = <span class="ruby-constant">MODES</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">aMode</span>)
19
-
20
- <span class="ruby-identifier">with_fid</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">prefixFid</span><span class="ruby-operator">|</span>
21
- <span class="ruby-identifier">walk_fid</span> <span class="ruby-identifier">prefixFid</span>, <span class="ruby-identifier">prefix</span>
22
-
23
- <span class="ruby-comment cmt"># create the file</span>
24
- <span class="ruby-identifier">talk</span> <span class="ruby-constant">Tcreate</span>.<span class="ruby-identifier">new</span>(
25
- <span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">prefixFid</span>,
26
- <span class="ruby-identifier">:name</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">target</span>,
27
- <span class="ruby-identifier">:perm</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPerm</span>,
28
- <span class="ruby-identifier">:mode</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">mode</span>
29
- )
30
- <span class="ruby-keyword kw">end</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 331</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove_fid</span> <span class="ruby-identifier">aPathFid</span>
15
+ <span class="ruby-identifier">talk</span> <span class="ruby-constant">Tremove</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPathFid</span>)
31
16
  <span class="ruby-keyword kw">end</span></pre>
32
17
  </body>
33
18
  </html>
@@ -5,15 +5,17 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>remove (Rumai::IXP::Agent)</title>
8
+ <title>stat (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 311</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove</span> <span class="ruby-identifier">aPath</span>
15
- <span class="ruby-identifier">pathFid</span> = <span class="ruby-identifier">walk</span>(<span class="ruby-identifier">aPath</span>)
16
- <span class="ruby-identifier">remove_fid</span> <span class="ruby-identifier">pathFid</span> <span class="ruby-comment cmt"># remove also does clunk</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 336</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">stat</span> <span class="ruby-identifier">aPath</span>
15
+ <span class="ruby-identifier">with_fid</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">pathFid</span><span class="ruby-operator">|</span>
16
+ <span class="ruby-identifier">walk_fid</span> <span class="ruby-identifier">pathFid</span>, <span class="ruby-identifier">aPath</span>
17
+ <span class="ruby-identifier">stat_fid</span> <span class="ruby-identifier">pathFid</span>
18
+ <span class="ruby-keyword kw">end</span>
17
19
  <span class="ruby-keyword kw">end</span></pre>
18
20
  </body>
19
21
  </html>
@@ -5,14 +5,16 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>remove_fid (Rumai::IXP::Agent)</title>
8
+ <title>stat_fid (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 318</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove_fid</span> <span class="ruby-identifier">aPathFid</span>
15
- <span class="ruby-identifier">talk</span> <span class="ruby-constant">Tremove</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPathFid</span>)
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 344</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">stat_fid</span> <span class="ruby-identifier">aPathFid</span>
15
+ <span class="ruby-identifier">req</span> = <span class="ruby-constant">Tstat</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPathFid</span>)
16
+ <span class="ruby-identifier">rsp</span> = <span class="ruby-identifier">talk</span>(<span class="ruby-identifier">req</span>)
17
+ <span class="ruby-identifier">rsp</span>.<span class="ruby-identifier">stat</span>
16
18
  <span class="ruby-keyword kw">end</span></pre>
17
19
  </body>
18
20
  </html>
@@ -5,17 +5,16 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>stat (Rumai::IXP::Agent)</title>
8
+ <title>walk (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 323</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">stat</span> <span class="ruby-identifier">aPath</span>
15
- <span class="ruby-identifier">with_fid</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">pathFid</span><span class="ruby-operator">|</span>
16
- <span class="ruby-identifier">walk_fid</span> <span class="ruby-identifier">pathFid</span>, <span class="ruby-identifier">aPath</span>
17
- <span class="ruby-identifier">stat_fid</span> <span class="ruby-identifier">pathFid</span>
18
- <span class="ruby-keyword kw">end</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 351</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">walk</span> <span class="ruby-identifier">aPath</span>
15
+ <span class="ruby-identifier">fid</span> = <span class="ruby-ivar">@fidPool</span>.<span class="ruby-identifier">obtain</span>
16
+ <span class="ruby-identifier">walk_fid</span> <span class="ruby-identifier">fid</span>, <span class="ruby-identifier">aPath</span>
17
+ <span class="ruby-identifier">fid</span>
19
18
  <span class="ruby-keyword kw">end</span></pre>
20
19
  </body>
21
20
  </html>
@@ -5,16 +5,18 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>stat_fid (Rumai::IXP::Agent)</title>
8
+ <title>walk_fid (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 331</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">stat_fid</span> <span class="ruby-identifier">aPathFid</span>
15
- <span class="ruby-identifier">req</span> = <span class="ruby-constant">Tstat</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPathFid</span>)
16
- <span class="ruby-identifier">rsp</span> = <span class="ruby-identifier">talk</span>(<span class="ruby-identifier">req</span>)
17
- <span class="ruby-identifier">rsp</span>.<span class="ruby-identifier">stat</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 358</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">walk_fid</span> <span class="ruby-identifier">aPathFid</span>, <span class="ruby-identifier">aPath</span>
15
+ <span class="ruby-identifier">talk</span> <span class="ruby-constant">Twalk</span>.<span class="ruby-identifier">new</span>(
16
+ <span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@rootFid</span>,
17
+ <span class="ruby-identifier">:newfid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPathFid</span>,
18
+ <span class="ruby-identifier">:wname</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPath</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">%r{/+}</span>).<span class="ruby-identifier">reject</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">empty?</span> }
19
+ )
18
20
  <span class="ruby-keyword kw">end</span></pre>
19
21
  </body>
20
22
  </html>
@@ -5,16 +5,19 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>walk (Rumai::IXP::Agent)</title>
8
+ <title>attach (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 338</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">walk</span> <span class="ruby-identifier">aPath</span>
15
- <span class="ruby-identifier">fid</span> = <span class="ruby-ivar">@fidPool</span>.<span class="ruby-identifier">obtain</span>
16
- <span class="ruby-identifier">walk_fid</span> <span class="ruby-identifier">fid</span>, <span class="ruby-identifier">aPath</span>
17
- <span class="ruby-identifier">fid</span>
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 367</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">attach</span> <span class="ruby-identifier">aRootFid</span>, <span class="ruby-identifier">aAuthFid</span> = <span class="ruby-constant">Fcall</span><span class="ruby-operator">::</span><span class="ruby-constant">NOFID</span>, <span class="ruby-identifier">aAuthName</span> = <span class="ruby-constant">ENV</span>[<span class="ruby-value str">'USER'</span>]
15
+ <span class="ruby-identifier">talk</span> <span class="ruby-constant">Tattach</span>.<span class="ruby-identifier">new</span>(
16
+ <span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aRootFid</span>,
17
+ <span class="ruby-identifier">:afid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aAuthFid</span>,
18
+ <span class="ruby-identifier">:uname</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">ENV</span>[<span class="ruby-value str">'USER'</span>],
19
+ <span class="ruby-identifier">:aname</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aAuthName</span>
20
+ )
18
21
  <span class="ruby-keyword kw">end</span></pre>
19
22
  </body>
20
23
  </html>
@@ -5,18 +5,15 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>walk_fid (Rumai::IXP::Agent)</title>
8
+ <title>clunk (Rumai::IXP::Agent)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 345</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">walk_fid</span> <span class="ruby-identifier">aPathFid</span>, <span class="ruby-identifier">aPath</span>
15
- <span class="ruby-identifier">talk</span> <span class="ruby-constant">Twalk</span>.<span class="ruby-identifier">new</span>(
16
- <span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@rootFid</span>,
17
- <span class="ruby-identifier">:newfid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPathFid</span>,
18
- <span class="ruby-identifier">:wname</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aPath</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp re">%r{/+}</span>).<span class="ruby-identifier">reject</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span>.<span class="ruby-identifier">empty?</span> }
19
- )
13
+ <pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 377</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">clunk</span> <span class="ruby-identifier">aFid</span>
15
+ <span class="ruby-identifier">talk</span> <span class="ruby-constant">Tclunk</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:fid</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">aFid</span>)
16
+ <span class="ruby-ivar">@fidPool</span>.<span class="ruby-identifier">release</span> <span class="ruby-identifier">aFid</span>
20
17
  <span class="ruby-keyword kw">end</span></pre>
21
18
  </body>
22
19
  </html>
@@ -82,7 +82,8 @@
82
82
 
83
83
  <div id="description">
84
84
  <p>
85
- Encapsulates I/O access over a file handle (fid).
85
+ Encapsulates I/O access over a file handle (fid). NOTE that this class is
86
+ NOT thread-safe.
86
87
  </p>
87
88
 
88
89
  </div>
@@ -94,12 +95,13 @@ Encapsulates I/O access over a file handle (fid).
94
95
  <h3 class="section-bar">Methods</h3>
95
96
 
96
97
  <div class="name-list">
97
- <a href="#M000067">&lt;&lt;</a>&nbsp;&nbsp;
98
- <a href="#M000063">close</a>&nbsp;&nbsp;
99
- <a href="#M000062">new</a>&nbsp;&nbsp;
98
+ <a href="#M000066">&lt;&lt;</a>&nbsp;&nbsp;
99
+ <a href="#M000062">close</a>&nbsp;&nbsp;
100
+ <a href="#M000063">closed?</a>&nbsp;&nbsp;
101
+ <a href="#M000060">new</a>&nbsp;&nbsp;
100
102
  <a href="#M000064">read</a>&nbsp;&nbsp;
101
- <a href="#M000065">read_partial</a>&nbsp;&nbsp;
102
- <a href="#M000066">write</a>&nbsp;&nbsp;
103
+ <a href="#M000061">rewind</a>&nbsp;&nbsp;
104
+ <a href="#M000065">write</a>&nbsp;&nbsp;
103
105
  </div>
104
106
  </div>
105
107
 
@@ -112,6 +114,24 @@ Encapsulates I/O access over a file handle (fid).
112
114
 
113
115
 
114
116
 
117
+ <div id="aliases-list">
118
+ <h3 class="section-bar">External Aliases</h3>
119
+
120
+ <div class="name-list">
121
+ <table summary="aliases">
122
+ <tr class="top-aligned-row context-row">
123
+ <td class="context-item-name">eof</td>
124
+ <td>-&gt;</td>
125
+ <td class="context-item-value">eof?</td>
126
+ </tr>
127
+ <tr class="top-aligned-row context-row">
128
+ <td class="context-item-name">pos</td>
129
+ <td>-&gt;</td>
130
+ <td class="context-item-value">tell</td>
131
+ </tr>
132
+ </table>
133
+ </div>
134
+ </div>
115
135
 
116
136
 
117
137
  <div id="attribute-list">
@@ -119,11 +139,26 @@ Encapsulates I/O access over a file handle (fid).
119
139
 
120
140
  <div class="name-list">
121
141
  <table>
142
+ <tr class="top-aligned-row context-row">
143
+ <td class="context-item-name">eof</td>
144
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
145
+ <td class="context-item-desc"></td>
146
+ </tr>
122
147
  <tr class="top-aligned-row context-row">
123
148
  <td class="context-item-name">fid</td>
124
149
  <td class="context-item-value">&nbsp;[R]&nbsp;</td>
125
150
  <td class="context-item-desc"></td>
126
151
  </tr>
152
+ <tr class="top-aligned-row context-row">
153
+ <td class="context-item-name">pos</td>
154
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
155
+ <td class="context-item-desc"></td>
156
+ </tr>
157
+ <tr class="top-aligned-row context-row">
158
+ <td class="context-item-name">stat</td>
159
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
160
+ <td class="context-item-desc"></td>
161
+ </tr>
127
162
  </table>
128
163
  </div>
129
164
  </div>
@@ -134,12 +169,12 @@ Encapsulates I/O access over a file handle (fid).
134
169
  <div id="methods">
135
170
  <h3 class="section-bar">Public Class methods</h3>
136
171
 
137
- <div id="method-M000062" class="method-detail">
138
- <a name="M000062"></a>
172
+ <div id="method-M000060" class="method-detail">
173
+ <a name="M000060"></a>
139
174
 
140
175
  <div class="method-heading">
141
- <a href="FidStream.src/M000062.html" target="Code" class="method-signature"
142
- onclick="popupCode('FidStream.src/M000062.html');return false;">
176
+ <a href="FidStream.src/M000060.html" target="Code" class="method-signature"
177
+ onclick="popupCode('FidStream.src/M000060.html');return false;">
143
178
  <span class="method-name">new</span><span class="method-args">(aAgent, aPathFid, aMessageSize)</span>
144
179
  </a>
145
180
  </div>
@@ -150,8 +185,8 @@ Encapsulates I/O access over a file handle (fid).
150
185
 
151
186
  <h3 class="section-bar">Public Instance methods</h3>
152
187
 
153
- <div id="method-M000067" class="method-detail">
154
- <a name="M000067"></a>
188
+ <div id="method-M000066" class="method-detail">
189
+ <a name="M000066"></a>
155
190
 
156
191
  <div class="method-heading">
157
192
  <span class="method-name">&lt;&lt;</span><span class="method-args">(aContent)</span>
@@ -159,7 +194,24 @@ Encapsulates I/O access over a file handle (fid).
159
194
 
160
195
  <div class="method-description">
161
196
  <p>
162
- Alias for <a href="FidStream.html#M000066">write</a>
197
+ Alias for <a href="FidStream.html#M000065">write</a>
198
+ </p>
199
+ </div>
200
+ </div>
201
+
202
+ <div id="method-M000062" class="method-detail">
203
+ <a name="M000062"></a>
204
+
205
+ <div class="method-heading">
206
+ <a href="FidStream.src/M000062.html" target="Code" class="method-signature"
207
+ onclick="popupCode('FidStream.src/M000062.html');return false;">
208
+ <span class="method-name">close</span><span class="method-args">()</span>
209
+ </a>
210
+ </div>
211
+
212
+ <div class="method-description">
213
+ <p>
214
+ Closes this stream.
163
215
  </p>
164
216
  </div>
165
217
  </div>
@@ -170,13 +222,13 @@ Alias for <a href="FidStream.html#M000066">write</a>
170
222
  <div class="method-heading">
171
223
  <a href="FidStream.src/M000063.html" target="Code" class="method-signature"
172
224
  onclick="popupCode('FidStream.src/M000063.html');return false;">
173
- <span class="method-name">close</span><span class="method-args">()</span>
225
+ <span class="method-name">closed?</span><span class="method-args">()</span>
174
226
  </a>
175
227
  </div>
176
228
 
177
229
  <div class="method-description">
178
230
  <p>
179
- Closes this stream.
231
+ Returns true if this stream is closed.
180
232
  </p>
181
233
  </div>
182
234
  </div>
@@ -187,54 +239,60 @@ Closes this stream.
187
239
  <div class="method-heading">
188
240
  <a href="FidStream.src/M000064.html" target="Code" class="method-signature"
189
241
  onclick="popupCode('FidStream.src/M000064.html');return false;">
190
- <span class="method-name">read</span><span class="method-args">()</span>
242
+ <span class="method-name">read</span><span class="method-args">(aPartial = false)</span>
191
243
  </a>
192
244
  </div>
193
245
 
194
246
  <div class="method-description">
195
247
  <p>
196
- Returns the entire content of this stream. If this stream corresponds to a
197
- directory, then an Array of <a href="../Stat.html">Stat</a> (one for each
198
- file in the directory) will be returned.
248
+ Reads some data from this stream at the current position.
249
+ </p>
250
+ <table>
251
+ <tr><td valign="top">aPartial:</td><td>When false, the entire content of this stream is <a
252
+ href="FidStream.html#M000064">read</a> and returned. When true, the maximum
253
+ amount of content that can fit inside a single 9P2000 message is <a
254
+ href="FidStream.html#M000064">read</a> and returned.
255
+
256
+ </td></tr>
257
+ </table>
258
+ <p>
259
+ If this stream corresponds to a directory, then an Array of <a
260
+ href="../Stat.html">Stat</a> (one for each file in the directory) will be
261
+ returned.
199
262
  </p>
200
263
  </div>
201
264
  </div>
202
265
 
203
- <div id="method-M000065" class="method-detail">
204
- <a name="M000065"></a>
266
+ <div id="method-M000061" class="method-detail">
267
+ <a name="M000061"></a>
205
268
 
206
269
  <div class="method-heading">
207
- <a href="FidStream.src/M000065.html" target="Code" class="method-signature"
208
- onclick="popupCode('FidStream.src/M000065.html');return false;">
209
- <span class="method-name">read_partial</span><span class="method-args">(aOffset = 0)</span>
270
+ <a href="FidStream.src/M000061.html" target="Code" class="method-signature"
271
+ onclick="popupCode('FidStream.src/M000061.html');return false;">
272
+ <span class="method-name">rewind</span><span class="method-args">()</span>
210
273
  </a>
211
274
  </div>
212
275
 
213
276
  <div class="method-description">
214
277
  <p>
215
- Returns the maximum amount of content that can fit in one 9P2000 message,
216
- starting from the given offset.
217
- </p>
218
- <p>
219
- The end of file is reached when the returned content string is empty (has
220
- zero length).
278
+ Rewinds the stream to the beginning.
221
279
  </p>
222
280
  </div>
223
281
  </div>
224
282
 
225
- <div id="method-M000066" class="method-detail">
226
- <a name="M000066"></a>
283
+ <div id="method-M000065" class="method-detail">
284
+ <a name="M000065"></a>
227
285
 
228
286
  <div class="method-heading">
229
- <a href="FidStream.src/M000066.html" target="Code" class="method-signature"
230
- onclick="popupCode('FidStream.src/M000066.html');return false;">
287
+ <a href="FidStream.src/M000065.html" target="Code" class="method-signature"
288
+ onclick="popupCode('FidStream.src/M000065.html');return false;">
231
289
  <span class="method-name">write</span><span class="method-args">(aContent)</span>
232
290
  </a>
233
291
  </div>
234
292
 
235
293
  <div class="method-description">
236
294
  <p>
237
- Writes the given content to the beginning of this stream.
295
+ Writes the given content at the current position in this stream.
238
296
  </p>
239
297
  </div>
240
298
  </div>