<!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 http-equiv="content-type" content="text/html; charset=ISO-8859-1" /><title>VmPipeFilter xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/apache/mina/protocol/vmpipe/VmPipeFilter.html">View Javadoc</a></div><pre>

<a name="1" href="#1">1</a>   <em class="comment">/*</em>
<a name="2" href="#2">2</a>   <em class="comment"> * @(#) $Id: VmPipeFilter.java 327113 2005-10-21 06:59:15Z trustin $</em>
<a name="3" href="#3">3</a>   <em class="comment"> */</em>
<a name="4" href="#4">4</a>   <strong>package</strong> <a href="../../../../../org/apache/mina/protocol/vmpipe/package-summary.html">org.apache.mina.protocol.vmpipe</a>;
<a name="5" href="#5">5</a>   
<a name="6" href="#6">6</a>   <strong>import</strong> org.apache.mina.common.IdleStatus;
<a name="7" href="#7">7</a>   <strong>import</strong> org.apache.mina.protocol.ProtocolFilterAdapter;
<a name="8" href="#8">8</a>   <strong>import</strong> org.apache.mina.protocol.ProtocolSession;
<a name="9" href="#9">9</a>   
<a name="10" href="#10">10</a>  <em>/**<em>*</em></em>
<a name="11" href="#11">11</a>  <em> * Sets last(Read|Write)Time for {@link VmPipeSession}s. </em>
<a name="12" href="#12">12</a>  <em> * </em>
<a name="13" href="#13">13</a>  <em> * @author The Apache Directory Project (dev@directory.apache.org)</em>
<a name="14" href="#14">14</a>  <em> * @version $Rev: 327113 $, $Date: 2005-10-21 15:59:15 +0900 $</em>
<a name="15" href="#15">15</a>  <em> */</em>
<a name="16" href="#16">16</a>  <strong>class</strong> <a href="../../../../../org/apache/mina/protocol/vmpipe/VmPipeFilter.html">VmPipeFilter</a> <strong>extends</strong> <a href="../../../../../org/apache/mina/protocol/ProtocolFilterAdapter.html">ProtocolFilterAdapter</a>
<a name="17" href="#17">17</a>  {
<a name="18" href="#18">18</a>      <strong>public</strong> <strong>void</strong> messageReceived( NextFilter nextFilter,
<a name="19" href="#19">19</a>                                   <a href="../../../../../org/apache/mina/protocol/ProtocolSession.html">ProtocolSession</a> session, Object message )
<a name="20" href="#20">20</a>      {
<a name="21" href="#21">21</a>          <a href="../../../../../org/apache/mina/protocol/vmpipe/VmPipeSession.html">VmPipeSession</a> vps = ( VmPipeSession ) session;
<a name="22" href="#22">22</a>  
<a name="23" href="#23">23</a>          vps.resetIdleCount( IdleStatus.BOTH_IDLE );
<a name="24" href="#24">24</a>          vps.resetIdleCount( IdleStatus.READER_IDLE );
<a name="25" href="#25">25</a>          vps.increaseReadBytes( 1 );
<a name="26" href="#26">26</a>  
<a name="27" href="#27">27</a>          <em class="comment">// fire messageSent event first</em>
<a name="28" href="#28">28</a>          vps.remoteSession.getManagerFilterChain().messageSent( vps.remoteSession, message );
<a name="29" href="#29">29</a>  
<a name="30" href="#30">30</a>          <em class="comment">// and then messageReceived</em>
<a name="31" href="#31">31</a>          nextFilter.messageReceived( session, message );
<a name="32" href="#32">32</a>      }
<a name="33" href="#33">33</a>  
<a name="34" href="#34">34</a>      <strong>public</strong> <strong>void</strong> messageSent( NextFilter nextFilter,
<a name="35" href="#35">35</a>                              <a href="../../../../../org/apache/mina/protocol/ProtocolSession.html">ProtocolSession</a> session, Object message )
<a name="36" href="#36">36</a>      {
<a name="37" href="#37">37</a>          <a href="../../../../../org/apache/mina/protocol/vmpipe/VmPipeSession.html">VmPipeSession</a> vps = ( VmPipeSession ) session;
<a name="38" href="#38">38</a>          vps.resetIdleCount( IdleStatus.BOTH_IDLE );
<a name="39" href="#39">39</a>          vps.resetIdleCount( IdleStatus.WRITER_IDLE );
<a name="40" href="#40">40</a>          vps.increaseWrittenBytes( 1 );
<a name="41" href="#41">41</a>          vps.increaseWrittenWriteRequests();
<a name="42" href="#42">42</a>  
<a name="43" href="#43">43</a>          nextFilter.messageSent( session, message );
<a name="44" href="#44">44</a>      }
<a name="45" href="#45">45</a>  }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

