rumai 1.0.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.
- data/LICENSE +23 -0
- data/README +1 -0
- data/Rakefile +58 -0
- data/bin/rumai +38 -0
- data/doc/api/classes/IO.html +120 -0
- data/doc/api/classes/Integer.html +142 -0
- data/doc/api/classes/Integer.src/M000002.html +18 -0
- data/doc/api/classes/Object.html +113 -0
- data/doc/api/classes/Rumai.html +530 -0
- data/doc/api/classes/Rumai.src/M000007.html +18 -0
- data/doc/api/classes/Rumai.src/M000008.html +18 -0
- data/doc/api/classes/Rumai.src/M000009.html +18 -0
- data/doc/api/classes/Rumai.src/M000010.html +18 -0
- data/doc/api/classes/Rumai.src/M000011.html +18 -0
- data/doc/api/classes/Rumai.src/M000012.html +18 -0
- data/doc/api/classes/Rumai.src/M000013.html +18 -0
- data/doc/api/classes/Rumai.src/M000014.html +20 -0
- data/doc/api/classes/Rumai.src/M000015.html +18 -0
- data/doc/api/classes/Rumai.src/M000016.html +18 -0
- data/doc/api/classes/Rumai.src/M000017.html +18 -0
- data/doc/api/classes/Rumai.src/M000018.html +18 -0
- data/doc/api/classes/Rumai.src/M000019.html +18 -0
- data/doc/api/classes/Rumai.src/M000020.html +18 -0
- data/doc/api/classes/Rumai.src/M000021.html +18 -0
- data/doc/api/classes/Rumai.src/M000022.html +18 -0
- data/doc/api/classes/Rumai.src/M000023.html +18 -0
- data/doc/api/classes/Rumai.src/M000024.html +18 -0
- data/doc/api/classes/Rumai.src/M000025.html +18 -0
- data/doc/api/classes/Rumai.src/M000026.html +18 -0
- data/doc/api/classes/Rumai/Area.html +461 -0
- data/doc/api/classes/Rumai/Area.src/M000080.html +19 -0
- data/doc/api/classes/Rumai/Area.src/M000081.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000082.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000083.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000084.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000085.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000086.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000087.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000088.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000089.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000090.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000091.html +22 -0
- data/doc/api/classes/Rumai/Area.src/M000093.html +23 -0
- data/doc/api/classes/Rumai/Area.src/M000094.html +28 -0
- data/doc/api/classes/Rumai/Area.src/M000095.html +18 -0
- data/doc/api/classes/Rumai/Area.src/M000096.html +31 -0
- data/doc/api/classes/Rumai/Chain.html +179 -0
- data/doc/api/classes/Rumai/Chain.src/M000077.html +18 -0
- data/doc/api/classes/Rumai/Chain.src/M000078.html +18 -0
- data/doc/api/classes/Rumai/Chain.src/M000079.html +18 -0
- data/doc/api/classes/Rumai/Client.html +463 -0
- data/doc/api/classes/Rumai/Client.src/M000114.html +18 -0
- data/doc/api/classes/Rumai/Client.src/M000115.html +18 -0
- data/doc/api/classes/Rumai/Client.src/M000116.html +18 -0
- data/doc/api/classes/Rumai/Client.src/M000117.html +39 -0
- data/doc/api/classes/Rumai/Client.src/M000118.html +28 -0
- data/doc/api/classes/Rumai/Client.src/M000119.html +19 -0
- data/doc/api/classes/Rumai/Client.src/M000120.html +18 -0
- data/doc/api/classes/Rumai/Client.src/M000121.html +18 -0
- data/doc/api/classes/Rumai/Client.src/M000122.html +18 -0
- data/doc/api/classes/Rumai/Client.src/M000123.html +19 -0
- data/doc/api/classes/Rumai/Client.src/M000124.html +20 -0
- data/doc/api/classes/Rumai/Client.src/M000125.html +20 -0
- data/doc/api/classes/Rumai/Client.src/M000126.html +22 -0
- data/doc/api/classes/Rumai/Client.src/M000127.html +18 -0
- data/doc/api/classes/Rumai/Client.src/M000128.html +20 -0
- data/doc/api/classes/Rumai/Client.src/M000129.html +18 -0
- data/doc/api/classes/Rumai/Client.src/M000130.html +22 -0
- data/doc/api/classes/Rumai/ClientContainer.html +180 -0
- data/doc/api/classes/Rumai/ClientContainer.src/M000027.html +18 -0
- data/doc/api/classes/Rumai/ClientContainer.src/M000028.html +18 -0
- data/doc/api/classes/Rumai/ClientContainer.src/M000029.html +18 -0
- data/doc/api/classes/Rumai/ExportInstMethods.html +119 -0
- data/doc/api/classes/Rumai/IXP.html +149 -0
- data/doc/api/classes/Rumai/IXP/Agent.html +447 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000046.html +47 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000047.html +44 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000048.html +39 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000049.html +20 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000050.html +22 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000051.html +20 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000052.html +33 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000053.html +19 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000054.html +18 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000055.html +21 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000056.html +20 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000057.html +20 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000058.html +22 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000059.html +23 -0
- data/doc/api/classes/Rumai/IXP/Agent.src/M000060.html +19 -0
- data/doc/api/classes/Rumai/IXP/Agent/FidStream.html +254 -0
- data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000062.html +22 -0
- data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000063.html +21 -0
- data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000064.html +42 -0
- data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000065.html +26 -0
- data/doc/api/classes/Rumai/IXP/Agent/FidStream.src/M000066.html +36 -0
- data/doc/api/classes/Rumai/IXP/Agent/MODES.html +130 -0
- data/doc/api/classes/Rumai/IXP/Agent/MODES.src/M000061.html +22 -0
- data/doc/api/classes/Rumai/IXP/Agent/RangedPool.html +203 -0
- data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000068.html +23 -0
- data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000069.html +32 -0
- data/doc/api/classes/Rumai/IXP/Agent/RangedPool.src/M000070.html +20 -0
- data/doc/api/classes/Rumai/IXP/Error.html +117 -0
- data/doc/api/classes/Rumai/IXP/Fcall.html +261 -0
- data/doc/api/classes/Rumai/IXP/Fcall.src/M000071.html +20 -0
- data/doc/api/classes/Rumai/IXP/Fcall.src/M000072.html +25 -0
- data/doc/api/classes/Rumai/IXP/Fcall.src/M000073.html +18 -0
- data/doc/api/classes/Rumai/IXP/Fcall.src/M000074.html +18 -0
- data/doc/api/classes/Rumai/IXP/Qid.html +184 -0
- data/doc/api/classes/Rumai/IXP/Rattach.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rauth.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rclunk.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rcreate.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rerror.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rflush.html +119 -0
- data/doc/api/classes/Rumai/IXP/Ropen.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rread.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rremove.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rstat.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rversion.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rwalk.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rwrite.html +119 -0
- data/doc/api/classes/Rumai/IXP/Rwstat.html +119 -0
- data/doc/api/classes/Rumai/IXP/Stat.html +248 -0
- data/doc/api/classes/Rumai/IXP/Stat.src/M000076.html +18 -0
- data/doc/api/classes/Rumai/IXP/Stream.html +158 -0
- data/doc/api/classes/Rumai/IXP/Stream.src/M000045.html +19 -0
- data/doc/api/classes/Rumai/IXP/Struct.html +257 -0
- data/doc/api/classes/Rumai/IXP/Struct.src/M000030.html +19 -0
- data/doc/api/classes/Rumai/IXP/Struct.src/M000031.html +18 -0
- data/doc/api/classes/Rumai/IXP/Struct.src/M000032.html +18 -0
- data/doc/api/classes/Rumai/IXP/Struct.src/M000033.html +18 -0
- data/doc/api/classes/Rumai/IXP/Struct.src/M000034.html +20 -0
- data/doc/api/classes/Rumai/IXP/Struct.src/M000035.html +57 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field.html +304 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000036.html +21 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000037.html +21 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000038.html +20 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000039.html +29 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000040.html +18 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field.src/M000041.html +18 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.html +152 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.src/M000043.html +24 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field/CounteeField.src/M000044.html +25 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field/CounterField.html +137 -0
- data/doc/api/classes/Rumai/IXP/Struct/Field/CounterField.src/M000042.html +18 -0
- data/doc/api/classes/Rumai/IXP/Tattach.html +120 -0
- data/doc/api/classes/Rumai/IXP/Tauth.html +119 -0
- data/doc/api/classes/Rumai/IXP/Tclunk.html +119 -0
- data/doc/api/classes/Rumai/IXP/Tcreate.html +120 -0
- data/doc/api/classes/Rumai/IXP/Terror.html +145 -0
- data/doc/api/classes/Rumai/IXP/Terror.src/M000075.html +18 -0
- data/doc/api/classes/Rumai/IXP/Tflush.html +119 -0
- data/doc/api/classes/Rumai/IXP/Topen.html +193 -0
- data/doc/api/classes/Rumai/IXP/Tread.html +119 -0
- data/doc/api/classes/Rumai/IXP/Tremove.html +119 -0
- data/doc/api/classes/Rumai/IXP/Tstat.html +119 -0
- data/doc/api/classes/Rumai/IXP/Tversion.html +137 -0
- data/doc/api/classes/Rumai/IXP/Twalk.html +120 -0
- data/doc/api/classes/Rumai/IXP/Twrite.html +120 -0
- data/doc/api/classes/Rumai/IXP/Twstat.html +119 -0
- data/doc/api/classes/Rumai/Node.html +461 -0
- data/doc/api/classes/Rumai/Node.src/M000097.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000098.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000099.html +22 -0
- data/doc/api/classes/Rumai/Node.src/M000100.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000101.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000102.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000103.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000104.html +22 -0
- data/doc/api/classes/Rumai/Node.src/M000105.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000106.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000107.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000108.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000109.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000110.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000111.html +18 -0
- data/doc/api/classes/Rumai/Node.src/M000112.html +20 -0
- data/doc/api/classes/Rumai/Node.src/M000113.html +27 -0
- data/doc/api/classes/Rumai/View.html +436 -0
- data/doc/api/classes/Rumai/View.src/M000131.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000132.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000133.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000134.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000135.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000136.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000137.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000138.html +28 -0
- data/doc/api/classes/Rumai/View.src/M000139.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000140.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000141.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000142.html +18 -0
- data/doc/api/classes/Rumai/View.src/M000143.html +29 -0
- data/doc/api/classes/Rumai/View.src/M000144.html +20 -0
- data/doc/api/classes/Rumai/View.src/M000145.html +33 -0
- data/doc/api/classes/Rumai/View.src/M000146.html +50 -0
- data/doc/api/classes/String.html +169 -0
- data/doc/api/classes/String.src/M000005.html +18 -0
- data/doc/api/classes/String.src/M000006.html +19 -0
- data/doc/api/classes/StringIO.html +120 -0
- data/doc/api/classes/Time.html +163 -0
- data/doc/api/classes/Time.src/M000003.html +18 -0
- data/doc/api/classes/Time.src/M000004.html +18 -0
- data/doc/api/created.rid +1 -0
- data/doc/api/files/lib/rumai/fs_rb.html +115 -0
- data/doc/api/files/lib/rumai/ixp/message_rb.html +120 -0
- data/doc/api/files/lib/rumai/ixp/message_spec_rb.html +175 -0
- data/doc/api/files/lib/rumai/ixp/message_spec_rb.src/M000001.html +37 -0
- data/doc/api/files/lib/rumai/ixp/transport_rb.html +115 -0
- data/doc/api/files/lib/rumai/ixp_rb.html +116 -0
- data/doc/api/files/lib/rumai/nfo_rb.html +107 -0
- data/doc/api/files/lib/rumai/wm_rb.html +115 -0
- data/doc/api/files/lib/rumai_rb.html +115 -0
- data/doc/api/fr_class_index.html +82 -0
- data/doc/api/fr_file_index.html +34 -0
- data/doc/api/fr_method_index.html +172 -0
- data/doc/api/index.html +24 -0
- data/doc/api/rdoc-style.css +208 -0
- data/doc/guide.erb +390 -0
- data/doc/guide.html +2035 -0
- data/doc/index.html +2035 -0
- data/lib/rumai.rb +9 -0
- data/lib/rumai/fs.rb +170 -0
- data/lib/rumai/ixp.rb +9 -0
- data/lib/rumai/ixp/message.rb +642 -0
- data/lib/rumai/ixp/message_spec.rb +247 -0
- data/lib/rumai/ixp/transport.rb +382 -0
- data/lib/rumai/nfo.rb +24 -0
- data/lib/rumai/wm.rb +780 -0
- metadata +320 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>new (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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>
|
|
18
|
+
|
|
19
|
+
<span class="ruby-ivar">@responses</span> = {} <span class="ruby-comment cmt"># tag => 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>)
|
|
21
|
+
|
|
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">></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">></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">></span> <span class="ruby-constant">Tversion</span><span class="ruby-operator">::</span><span class="ruby-constant">VERSION</span>
|
|
30
|
+
)
|
|
31
|
+
<span class="ruby-identifier">rsp</span> = <span class="ruby-identifier">talk</span>(<span class="ruby-identifier">req</span>)
|
|
32
|
+
|
|
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">"protocol mismatch: self=#{req.version.inspect} server=#{rsp.version.inspect}"</span>
|
|
35
|
+
<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
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
46
|
+
</body>
|
|
47
|
+
</html>
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>talk (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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"><<</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">"#{response.ename.inspect} in response to #{aRequest.inspect}"</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>
|
|
41
|
+
<span class="ruby-keyword kw">end</span>
|
|
42
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
43
|
+
</body>
|
|
44
|
+
</html>
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>open (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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">></span> <span class="ruby-identifier">pathFid</span>,
|
|
22
|
+
<span class="ruby-identifier">:mode</span> =<span class="ruby-operator">></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>
|
|
36
|
+
<span class="ruby-keyword kw">end</span>
|
|
37
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
38
|
+
</body>
|
|
39
|
+
</html>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>read (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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>
|
|
17
|
+
<span class="ruby-keyword kw">end</span>
|
|
18
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
19
|
+
</body>
|
|
20
|
+
</html>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>entries (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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">"#{aPath.inspect} is not a directory"</span>
|
|
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>}
|
|
20
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
21
|
+
</body>
|
|
22
|
+
</html>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>write (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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"><<</span> <span class="ruby-identifier">aContent</span>
|
|
17
|
+
<span class="ruby-keyword kw">end</span>
|
|
18
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
19
|
+
</body>
|
|
20
|
+
</html>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>create (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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">></span> <span class="ruby-identifier">prefixFid</span>,
|
|
26
|
+
<span class="ruby-identifier">:name</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">target</span>,
|
|
27
|
+
<span class="ruby-identifier">:perm</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">aPerm</span>,
|
|
28
|
+
<span class="ruby-identifier">:mode</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">mode</span>
|
|
29
|
+
)
|
|
30
|
+
<span class="ruby-keyword kw">end</span>
|
|
31
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
32
|
+
</body>
|
|
33
|
+
</html>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>remove (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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>
|
|
17
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
18
|
+
</body>
|
|
19
|
+
</html>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>remove_fid (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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">></span> <span class="ruby-identifier">aPathFid</span>)
|
|
16
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
17
|
+
</body>
|
|
18
|
+
</html>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>stat (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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>
|
|
19
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
20
|
+
</body>
|
|
21
|
+
</html>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>stat_fid (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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">></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>
|
|
18
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
19
|
+
</body>
|
|
20
|
+
</html>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>walk (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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>
|
|
18
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
19
|
+
</body>
|
|
20
|
+
</html>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>walk_fid (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
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">></span> <span class="ruby-ivar">@rootFid</span>,
|
|
17
|
+
<span class="ruby-identifier">:newfid</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">aPathFid</span>,
|
|
18
|
+
<span class="ruby-identifier">:wname</span> =<span class="ruby-operator">></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
|
+
)
|
|
20
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
21
|
+
</body>
|
|
22
|
+
</html>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>attach (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
12
|
+
<body class="standalone-code">
|
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 354</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">></span> <span class="ruby-identifier">aRootFid</span>,
|
|
17
|
+
<span class="ruby-identifier">:afid</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">aAuthFid</span>,
|
|
18
|
+
<span class="ruby-identifier">:uname</span> =<span class="ruby-operator">></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">></span> <span class="ruby-identifier">aAuthName</span>
|
|
20
|
+
)
|
|
21
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
22
|
+
</body>
|
|
23
|
+
</html>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html>
|
|
7
|
+
<head>
|
|
8
|
+
<title>clunk (Rumai::IXP::Agent)</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
+
</head>
|
|
12
|
+
<body class="standalone-code">
|
|
13
|
+
<pre><span class="ruby-comment cmt"># File lib/rumai/ixp/transport.rb, line 364</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">></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>
|
|
17
|
+
<span class="ruby-keyword kw">end</span></pre>
|
|
18
|
+
</body>
|
|
19
|
+
</html>
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
+
|
|
6
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
7
|
+
<head>
|
|
8
|
+
<title>Class: Rumai::IXP::Agent::FidStream</title>
|
|
9
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
+
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
11
|
+
<link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
12
|
+
<script type="text/javascript">
|
|
13
|
+
// <![CDATA[
|
|
14
|
+
|
|
15
|
+
function popupCode( url ) {
|
|
16
|
+
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function toggleCode( id ) {
|
|
20
|
+
if ( document.getElementById )
|
|
21
|
+
elem = document.getElementById( id );
|
|
22
|
+
else if ( document.all )
|
|
23
|
+
elem = eval( "document.all." + id );
|
|
24
|
+
else
|
|
25
|
+
return false;
|
|
26
|
+
|
|
27
|
+
elemStyle = elem.style;
|
|
28
|
+
|
|
29
|
+
if ( elemStyle.display != "block" ) {
|
|
30
|
+
elemStyle.display = "block"
|
|
31
|
+
} else {
|
|
32
|
+
elemStyle.display = "none"
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Make codeblocks hidden by default
|
|
39
|
+
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
|
|
40
|
+
|
|
41
|
+
// ]]>
|
|
42
|
+
</script>
|
|
43
|
+
|
|
44
|
+
</head>
|
|
45
|
+
<body>
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
<div id="classHeader">
|
|
50
|
+
<table class="header-table">
|
|
51
|
+
<tr class="top-aligned-row">
|
|
52
|
+
<td><strong>Class</strong></td>
|
|
53
|
+
<td class="class-name-in-header">Rumai::IXP::Agent::FidStream</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../../../../files/lib/rumai/ixp/transport_rb.html">
|
|
59
|
+
lib/rumai/ixp/transport.rb
|
|
60
|
+
</a>
|
|
61
|
+
<br />
|
|
62
|
+
</td>
|
|
63
|
+
</tr>
|
|
64
|
+
|
|
65
|
+
<tr class="top-aligned-row">
|
|
66
|
+
<td><strong>Parent:</strong></td>
|
|
67
|
+
<td>
|
|
68
|
+
<a href="../../../Object.html">
|
|
69
|
+
Object
|
|
70
|
+
</a>
|
|
71
|
+
</td>
|
|
72
|
+
</tr>
|
|
73
|
+
</table>
|
|
74
|
+
</div>
|
|
75
|
+
<!-- banner header -->
|
|
76
|
+
|
|
77
|
+
<div id="bodyContent">
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
<div id="contextContent">
|
|
82
|
+
|
|
83
|
+
<div id="description">
|
|
84
|
+
<p>
|
|
85
|
+
Encapsulates I/O access over a file handle (fid).
|
|
86
|
+
</p>
|
|
87
|
+
|
|
88
|
+
</div>
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
</div>
|
|
92
|
+
|
|
93
|
+
<div id="method-list">
|
|
94
|
+
<h3 class="section-bar">Methods</h3>
|
|
95
|
+
|
|
96
|
+
<div class="name-list">
|
|
97
|
+
<a href="#M000067"><<</a>
|
|
98
|
+
<a href="#M000063">close</a>
|
|
99
|
+
<a href="#M000062">new</a>
|
|
100
|
+
<a href="#M000064">read</a>
|
|
101
|
+
<a href="#M000065">read_partial</a>
|
|
102
|
+
<a href="#M000066">write</a>
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
|
|
106
|
+
</div>
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
<!-- if includes -->
|
|
110
|
+
|
|
111
|
+
<div id="section">
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
<div id="attribute-list">
|
|
118
|
+
<h3 class="section-bar">Attributes</h3>
|
|
119
|
+
|
|
120
|
+
<div class="name-list">
|
|
121
|
+
<table>
|
|
122
|
+
<tr class="top-aligned-row context-row">
|
|
123
|
+
<td class="context-item-name">fid</td>
|
|
124
|
+
<td class="context-item-value"> [R] </td>
|
|
125
|
+
<td class="context-item-desc"></td>
|
|
126
|
+
</tr>
|
|
127
|
+
</table>
|
|
128
|
+
</div>
|
|
129
|
+
</div>
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
<!-- if method_list -->
|
|
134
|
+
<div id="methods">
|
|
135
|
+
<h3 class="section-bar">Public Class methods</h3>
|
|
136
|
+
|
|
137
|
+
<div id="method-M000062" class="method-detail">
|
|
138
|
+
<a name="M000062"></a>
|
|
139
|
+
|
|
140
|
+
<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;">
|
|
143
|
+
<span class="method-name">new</span><span class="method-args">(aAgent, aPathFid, aMessageSize)</span>
|
|
144
|
+
</a>
|
|
145
|
+
</div>
|
|
146
|
+
|
|
147
|
+
<div class="method-description">
|
|
148
|
+
</div>
|
|
149
|
+
</div>
|
|
150
|
+
|
|
151
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
152
|
+
|
|
153
|
+
<div id="method-M000067" class="method-detail">
|
|
154
|
+
<a name="M000067"></a>
|
|
155
|
+
|
|
156
|
+
<div class="method-heading">
|
|
157
|
+
<span class="method-name"><<</span><span class="method-args">(aContent)</span>
|
|
158
|
+
</div>
|
|
159
|
+
|
|
160
|
+
<div class="method-description">
|
|
161
|
+
<p>
|
|
162
|
+
Alias for <a href="FidStream.html#M000066">write</a>
|
|
163
|
+
</p>
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
|
|
167
|
+
<div id="method-M000063" class="method-detail">
|
|
168
|
+
<a name="M000063"></a>
|
|
169
|
+
|
|
170
|
+
<div class="method-heading">
|
|
171
|
+
<a href="FidStream.src/M000063.html" target="Code" class="method-signature"
|
|
172
|
+
onclick="popupCode('FidStream.src/M000063.html');return false;">
|
|
173
|
+
<span class="method-name">close</span><span class="method-args">()</span>
|
|
174
|
+
</a>
|
|
175
|
+
</div>
|
|
176
|
+
|
|
177
|
+
<div class="method-description">
|
|
178
|
+
<p>
|
|
179
|
+
Closes this stream.
|
|
180
|
+
</p>
|
|
181
|
+
</div>
|
|
182
|
+
</div>
|
|
183
|
+
|
|
184
|
+
<div id="method-M000064" class="method-detail">
|
|
185
|
+
<a name="M000064"></a>
|
|
186
|
+
|
|
187
|
+
<div class="method-heading">
|
|
188
|
+
<a href="FidStream.src/M000064.html" target="Code" class="method-signature"
|
|
189
|
+
onclick="popupCode('FidStream.src/M000064.html');return false;">
|
|
190
|
+
<span class="method-name">read</span><span class="method-args">()</span>
|
|
191
|
+
</a>
|
|
192
|
+
</div>
|
|
193
|
+
|
|
194
|
+
<div class="method-description">
|
|
195
|
+
<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.
|
|
199
|
+
</p>
|
|
200
|
+
</div>
|
|
201
|
+
</div>
|
|
202
|
+
|
|
203
|
+
<div id="method-M000065" class="method-detail">
|
|
204
|
+
<a name="M000065"></a>
|
|
205
|
+
|
|
206
|
+
<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>
|
|
210
|
+
</a>
|
|
211
|
+
</div>
|
|
212
|
+
|
|
213
|
+
<div class="method-description">
|
|
214
|
+
<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).
|
|
221
|
+
</p>
|
|
222
|
+
</div>
|
|
223
|
+
</div>
|
|
224
|
+
|
|
225
|
+
<div id="method-M000066" class="method-detail">
|
|
226
|
+
<a name="M000066"></a>
|
|
227
|
+
|
|
228
|
+
<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;">
|
|
231
|
+
<span class="method-name">write</span><span class="method-args">(aContent)</span>
|
|
232
|
+
</a>
|
|
233
|
+
</div>
|
|
234
|
+
|
|
235
|
+
<div class="method-description">
|
|
236
|
+
<p>
|
|
237
|
+
Writes the given content to the beginning of this stream.
|
|
238
|
+
</p>
|
|
239
|
+
</div>
|
|
240
|
+
</div>
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
</div>
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
</div>
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
<div id="validator-badges">
|
|
250
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
251
|
+
</div>
|
|
252
|
+
|
|
253
|
+
</body>
|
|
254
|
+
</html>
|