<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta name="Content-Type" content="text/html; charset=utf-8" />
<title>Class: Rumai::Node</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />

<script type="text/javascript" charset="utf-8">
  relpath = '..';
  if (relpath != '') relpath += '/';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>

  </head>
  <body>
    <script type="text/javascript" charset="utf-8">
      if (window.top.frames.main) document.body.className = 'frames';
    </script>
    
    <div id="header">
      <div id="menu">
  
    <a href="../_index.html">Index (N)</a> &raquo; 
    <span class='title'><a href="../Rumai.html" title="Rumai (module)">Rumai</a></span>
     &raquo; 
    <span class="title">Node</span>
  
  
  <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
</div>

      <div id="search">
  <a id="class_list_link" href="#">Class List</a>
  <a id="method_list_link" href="#">Method List</a>
  <a id ="file_list_link" href="#">File List</a>
</div>

      <div class="clear"></div>
    </div>
    
    <iframe id="search_frame"></iframe>
    
    <div id="content"><h1>Class: Rumai::Node 
  
  
</h1>

<dl class="box">
  
    <dt class="r1">Inherits:</dt>
    <dd class="r1">
      <span class="inheritName"><a href="../Object.html" title="Object (class)">Object</a></span>
      
        <ul class="fullTree">
          <li><a href="../Object.html" title="Object (class)">Object</a></li>
          
            <li class="next">Rumai::Node</li>
          
        </ul>
        <a href="#" class="inheritanceTree">show all</a>
      
      </dd>
    
  
  
    
  
    
      <dt class="r2">Includes:</dt>
      <dd class="r2">Enumerable</dd>
      
    
  
  
  
    <dt class="r1 last">Defined in:</dt>
    <dd class="r1 last">lib/rumai/fs.rb</dd>
  
</dl>
<div class="clear"></div>

<h2>Overview</h2><div class="docstring">
  <div class="discussion">
    <p>
An entry in the IXP file system.
</p>


  </div>
</div>
<div class="tags">
  
</div><div id="subclasses">
  <h2>Direct Known Subclasses</h2>
  <p class="children"><a href="WidgetNode.html" title="Rumai::WidgetNode (class)">WidgetNode</a></p>
</div>

  <h2>Constant Summary</h2>
  
    <dl class="constants">
      
        <dt id="cache-classvariable" class="">@@cache =
          
        </dt>
        <dd><pre class="code"><span class='const'>Hash</span><span class='period'>.</span><span class='id new'>new</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id h'>h</span><span class='comma'>,</span><span class='id k'>k</span><span class='op'>|</span> <span class='id h'>h</span><span class='lbracket'>[</span><span class='id k'>k</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='const'>Node</span><span class='period'>.</span><span class='id new'>new</span><span class='lparen'>(</span><span class='id k'>k</span><span class='rparen'>)</span> <span class='rbrace'>}</span></pre></dd>
      
    </dl>
  


  
  <h2>Instance Attribute Summary</h2>
  <ul class="summary">
    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#path-instance_method" title="#path (instance method)">- (Object) <strong>path</strong> </a>
    

    
  </span>
  
  
    <span class="note title readonly">readonly</span>
    
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Returns the value of attribute path.
</p>
</div></span>
  
</li>

    
  </ul>


  
    <h2>Instance Method Summary</h2>

    <ul class="summary">
      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#%5B%5D-instance_method" title="#[] (instance method)">- (Object) <strong>[]</strong>(sub_path) </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Returns the given sub-path as a Node object.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#children-instance_method" title="#children (instance method)">- (Object) <strong>children</strong> </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Returns all child nodes of this node.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#clear-instance_method" title="#clear (instance method)">- (Object) <strong>clear</strong> </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Deletes all child nodes.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#create-instance_method" title="#create (instance method)">- (Object) <strong>create</strong>(*args) </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Creates a file corresponding to this node on the IXP server.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#directory%3F-instance_method" title="#directory? (instance method)">- (Boolean) <strong>directory?</strong> </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Tests if this node is a directory.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#each-instance_method" title="#each (instance method)">- (Object) <strong>each</strong>(&amp;block) </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Iterates through each child of this directory.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#each_line-instance_method" title="#each_line (instance method)">- (Object) <strong>each_line</strong> {|line| ... }</a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Invokes the given block for every line in the content of this node.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#entries-instance_method" title="#entries (instance method)">- (Object) <strong>entries</strong> </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Returns the names of all files in this directory.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#exist%3F-instance_method" title="#exist? (instance method)">- (Boolean) <strong>exist?</strong> </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Tests if this node exists on the IXP server.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#initialize-instance_method" title="#initialize (instance method)">- (Node) <strong>initialize</strong>(path) </a>
    

    
  </span>
  
    <span class="note title constructor">constructor</span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
A new instance of Node.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#method_missing-instance_method" title="#method_missing (instance method)">- (Object) <strong>method_missing</strong>(meth, *args) </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Provides access to child nodes through method calls.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#open-instance_method" title="#open (instance method)">- (Object) <strong>open</strong>(mode = 'r', &amp;block) </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Opens this node for I/O access.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#parent-instance_method" title="#parent (instance method)">- (Object) <strong>parent</strong> </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Returns the parent node of this node.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#read-instance_method" title="#read (instance method)">- (Object) <strong>read</strong>(*args) </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Returns the entire content of this node.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#remove-instance_method" title="#remove (instance method)">- (Object) <strong>remove</strong> </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Deletes the file corresponding to this node on the IXP server.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#stat-instance_method" title="#stat (instance method)">- (Object) <strong>stat</strong> </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Returns file statistics about this node.
</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#write-instance_method" title="#write (instance method)">- (Object) <strong>write</strong>(content) </a>
    

    
  </span>
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'><p>
Writes the given content to this node.
</p>
</div></span>
  
</li>

      
    </ul>
  


  <div id="constructor_details" class="method_details_list">
  <h2>Constructor Details</h2>
  
    <div class="method_details first">
  <p class="signature first" id="initialize-instance_method">
  
    - (<tt><a href="" title="Rumai::Node (class)">Node</a></tt>) <strong>initialize</strong>(path) 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
A new instance of Node
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


35
36
37</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 35</span>

<span class='kw'>def</span> <span class='id initialize'>initialize</span> <span class='id path'>path</span>
  <span class='ivar'>@path</span> <span class='op'>=</span> <span class='id path'>path</span><span class='period'>.</span><span class='id to_s'>to_s</span><span class='period'>.</span><span class='id squeeze'>squeeze</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>/</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
  
</div>
<div id="method_missing_details" class="method_details_list">
  <h2>Dynamic Method Handling</h2>
  <p class="notice this">
    This class handles dynamic methods through the <tt>method_missing</tt> method
    
  </p>
  
    <div class="method_details first">
  <p class="signature first" id="method_missing-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>method_missing</strong>(meth, *args) 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Provides access to child nodes through method calls.
</p>
<p>
:call-seq: node.child -> Node
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


175
176
177
178
179
180
181
182
183
184
185
186</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 175</span>

<span class='kw'>def</span> <span class='id method_missing'>method_missing</span> <span class='id meth'>meth</span><span class='comma'>,</span> <span class='op'>*</span><span class='id args'>args</span>
  <span class='id child'>child</span> <span class='op'>=</span> <span class='kw'>self</span><span class='lbracket'>[</span><span class='id meth'>meth</span><span class='rbracket'>]</span>

  <span class='comment'># speed up future accesses
</span>  <span class='lparen'>(</span><span class='kw'>class</span> <span class='op'>&lt;&lt;</span> <span class='kw'>self</span><span class='semicolon'>;</span> <span class='kw'>self</span><span class='semicolon'>;</span> <span class='kw'>end</span><span class='rparen'>)</span><span class='period'>.</span><span class='id instance_eval'>instance_eval</span> <span class='kw'>do</span>
    <span class='id define_method'>define_method</span> <span class='id meth'>meth</span> <span class='kw'>do</span>
      <span class='id child'>child</span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>

  <span class='id child'>child</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
  
</div>

  <div id="instance_attr_details" class="attr_details">
    <h2>Instance Attribute Details</h2>
    
      
      <span id=""></span>
      <span id="path-instance_method"></span>
      <div class="method_details first">
  <p class="signature first" id="path-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>path</strong>  <span class="extras">(readonly)</span>
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Returns the value of attribute path
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


33
34
35</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 33</span>

<span class='kw'>def</span> <span class='id path'>path</span>
  <span class='ivar'>@path</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
  </div>


  <div id="instance_method_details" class="method_details_list">
    <h2>Instance Method Details</h2>
    
    
      <div class="method_details first">
  <p class="signature first" id="[]-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>[]</strong>(sub_path) 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Returns the given sub-path as a Node object.
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


134
135
136</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 134</span>

<span class='kw'>def</span> <span class='op'>[]</span> <span class='id sub_path'>sub_path</span>
  <span class='cvar'>@@cache</span><span class='lbracket'>[</span> <span class='const'>File</span><span class='period'>.</span><span class='id join'>join</span><span class='lparen'>(</span><span class='ivar'>@path</span><span class='comma'>,</span> <span class='id sub_path'>sub_path</span><span class='period'>.</span><span class='id to_s'>to_s</span><span class='rparen'>)</span> <span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="children-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>children</strong> 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Returns all child nodes of this node.
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


148
149
150</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 148</span>

<span class='kw'>def</span> <span class='id children'>children</span>
  <span class='id entries'>entries</span><span class='period'>.</span><span class='id map!'>map!</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id c'>c</span><span class='op'>|</span> <span class='kw'>self</span><span class='lbracket'>[</span><span class='id c'>c</span><span class='rbracket'>]</span> <span class='rbrace'>}</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="clear-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>clear</strong> 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Deletes all child nodes.
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


164
165
166
167
168</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 164</span>

<span class='kw'>def</span> <span class='id clear'>clear</span>
  <span class='id children'>children</span><span class='period'>.</span><span class='id each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id c'>c</span><span class='op'>|</span>
    <span class='id c'>c</span><span class='period'>.</span><span class='id remove'>remove</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="create-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>create</strong>(*args) 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Creates a file corresponding to this node on the IXP server.
</p>


  </div>
</div>
<div class="tags">
  
  <h3>See Also:</h3>
  <ul class="see">
    
      <li><a href="IXP/Agent.html#create-instance_method" title="Rumai::IXP::Agent#create (method)">Rumai::IXP::Agent#create</a></li>
    
  </ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


120
121
122</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 120</span>

<span class='kw'>def</span> <span class='id create'>create</span> <span class='op'>*</span><span class='id args'>args</span>
  <span class='const'>IXP_AGENT</span><span class='period'>.</span><span class='id create'>create</span> <span class='ivar'>@path</span><span class='comma'>,</span> <span class='op'>*</span><span class='id args'>args</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="directory?-instance_method">
  
    - (<tt>Boolean</tt>) <strong>directory?</strong> 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Tests if this node is a directory.
</p>


  </div>
</div>
<div class="tags">
  <h3>Returns:</h3>
<ul class="return">
  
    <li>
      
        <span class='type'>(<tt>Boolean</tt>)</span>
      
      
      
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


62
63
64</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 62</span>

<span class='kw'>def</span> <span class='id directory?'>directory?</span>
  <span class='id exist?'>exist?</span> <span class='kw'>and</span> <span class='id stat'>stat</span><span class='period'>.</span><span class='id directory?'>directory?</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="each-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>each</strong>(&amp;block) 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Iterates through each child of this directory.
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


157
158
159</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 157</span>

<span class='kw'>def</span> <span class='id each'>each</span> <span class='op'>&amp;</span><span class='id block'>block</span>
  <span class='id children'>children</span><span class='period'>.</span><span class='id each'>each</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id block'>block</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="each_line-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>each_line</strong> {|line| ... }
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Invokes the given block for every line in the content of this node.
</p>


  </div>
</div>
<div class="tags">
  <h3>Yield Parameters:</h3>
<ul class="yieldparam">
  
    <li>
      
        <span class='type'>(<tt><a href="../String.html" title="String (class)">String</a></tt>)</span>
      
      
        <span class='name'>line</span>
      
      
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


100
101
102
103
104
105
106</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 100</span>

<span class='kw'>def</span> <span class='id each_line'>each_line</span> <span class='op'>&amp;</span><span class='id block'>block</span>
  <span class='id open'>open</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id file'>file</span><span class='op'>|</span>
    <span class='kw'>until</span> <span class='lparen'>(</span><span class='id chunk'>chunk</span> <span class='op'>=</span> <span class='id file'>file</span><span class='period'>.</span><span class='id read'>read</span><span class='lparen'>(</span><span class='kw'>true</span><span class='rparen'>)</span><span class='rparen'>)</span><span class='period'>.</span><span class='id empty?'>empty?</span>
      <span class='id chunk'>chunk</span><span class='period'>.</span><span class='id each_line'>each_line</span><span class='lparen'>(</span><span class='op'>&amp;</span><span class='id block'>block</span><span class='rparen'>)</span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="entries-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>entries</strong> 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Returns the names of all files in this directory.
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


69
70
71
72
73
74
75</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 69</span>

<span class='kw'>def</span> <span class='id entries'>entries</span>
  <span class='kw'>begin</span>
    <span class='const'>IXP_AGENT</span><span class='period'>.</span><span class='id entries'>entries</span> <span class='ivar'>@path</span>
  <span class='kw'>rescue</span> <span class='const'>IXP</span><span class='op'>::</span><span class='const'>Error</span>
    <span class='lbracket'>[</span><span class='rbracket'>]</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="exist?-instance_method">
  
    - (<tt>Boolean</tt>) <strong>exist?</strong> 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Tests if this node exists on the IXP server.
</p>


  </div>
</div>
<div class="tags">
  <h3>Returns:</h3>
<ul class="return">
  
    <li>
      
        <span class='type'>(<tt>Boolean</tt>)</span>
      
      
      
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


51
52
53
54
55
56
57</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 51</span>

<span class='kw'>def</span> <span class='id exist?'>exist?</span>
  <span class='kw'>begin</span>
    <span class='kw'>true</span> <span class='kw'>if</span> <span class='id stat'>stat</span>
  <span class='kw'>rescue</span> <span class='const'>IXP</span><span class='op'>::</span><span class='const'>Error</span>
    <span class='kw'>false</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="open-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>open</strong>(mode = 'r', &amp;block) 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Opens this node for I/O access.
</p>


  </div>
</div>
<div class="tags">
  
  <h3>See Also:</h3>
  <ul class="see">
    
      <li><a href="IXP/Agent.html#open-instance_method" title="Rumai::IXP::Agent#open (method)">Rumai::IXP::Agent#open</a></li>
    
  </ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


82
83
84</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 82</span>

<span class='kw'>def</span> <span class='id open'>open</span> <span class='id mode'>mode</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>r</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id block'>block</span>
  <span class='const'>IXP_AGENT</span><span class='period'>.</span><span class='id open'>open</span> <span class='ivar'>@path</span><span class='comma'>,</span> <span class='id mode'>mode</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id block'>block</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="parent-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>parent</strong> 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Returns the parent node of this node.
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


141
142
143</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 141</span>

<span class='kw'>def</span> <span class='id parent'>parent</span>
  <span class='cvar'>@@cache</span><span class='lbracket'>[</span> <span class='const'>File</span><span class='period'>.</span><span class='id dirname'>dirname</span><span class='lparen'>(</span><span class='ivar'>@path</span><span class='rparen'>)</span> <span class='rbracket'>]</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="read-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>read</strong>(*args) 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Returns the entire content of this node.
</p>


  </div>
</div>
<div class="tags">
  
  <h3>See Also:</h3>
  <ul class="see">
    
      <li><a href="IXP/Agent.html#read-instance_method" title="Rumai::IXP::Agent#read (method)">Rumai::IXP::Agent#read</a></li>
    
  </ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


91
92
93</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 91</span>

<span class='kw'>def</span> <span class='id read'>read</span> <span class='op'>*</span><span class='id args'>args</span>
  <span class='const'>IXP_AGENT</span><span class='period'>.</span><span class='id read'>read</span> <span class='ivar'>@path</span><span class='comma'>,</span> <span class='op'>*</span><span class='id args'>args</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="remove-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>remove</strong> 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Deletes the file corresponding to this node on the IXP server.
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


127
128
129</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 127</span>

<span class='kw'>def</span> <span class='id remove'>remove</span>
  <span class='const'>IXP_AGENT</span><span class='period'>.</span><span class='id remove'>remove</span> <span class='ivar'>@path</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="stat-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>stat</strong> 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Returns file statistics about this node.
</p>


  </div>
</div>
<div class="tags">
  
  <h3>See Also:</h3>
  <ul class="see">
    
      <li><a href="IXP/Agent.html#stat-instance_method" title="Rumai::IXP::Agent#stat (method)">Rumai::IXP::Agent#stat</a></li>
    
  </ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


44
45
46</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 44</span>

<span class='kw'>def</span> <span class='id stat'>stat</span>
  <span class='const'>IXP_AGENT</span><span class='period'>.</span><span class='id stat'>stat</span> <span class='ivar'>@path</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <p class="signature " id="write-instance_method">
  
    - (<tt><a href="../Object.html" title="Object (class)">Object</a></tt>) <strong>write</strong>(content) 
  

  
</p><div class="docstring">
  <div class="discussion">
    <p>
Writes the given content to this node.
</p>


  </div>
</div>
<div class="tags">
  
</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


111
112
113</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/rumai/fs.rb', line 111</span>

<span class='kw'>def</span> <span class='id write'>write</span> <span class='id content'>content</span>
  <span class='const'>IXP_AGENT</span><span class='period'>.</span><span class='id write'>write</span> <span class='ivar'>@path</span><span class='comma'>,</span> <span class='id content'>content</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
  </div>

</div>
    
    <div id="footer">
  Generated on Mon Mar 22 22:23:52 2010 by 
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool">yard</a>
  0.5.4 (ruby-1.9.1).
</div>

  </body>
</html>