<!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=UTF-8" />
<title>MyProtocolCodecFactory xref</title>
<link type="text/css" rel="stylesheet" href="../stylesheet.css" />
</head>
<body>
<pre>

<a name="1" href="#1">1</a>   <strong class="jxr_keyword">package</strong> testcase;
<a name="2" href="#2">2</a>   
<a name="3" href="#3">3</a>   <strong class="jxr_keyword">import</strong> org.apache.mina.core.session.IoSession;
<a name="4" href="#4">4</a>   <strong class="jxr_keyword">import</strong> org.apache.mina.filter.codec.ProtocolCodecFactory;
<a name="5" href="#5">5</a>   <strong class="jxr_keyword">import</strong> org.apache.mina.filter.codec.ProtocolDecoder;
<a name="6" href="#6">6</a>   <strong class="jxr_keyword">import</strong> org.apache.mina.filter.codec.ProtocolEncoder;
<a name="7" href="#7">7</a>   
<a name="8" href="#8">8</a>   <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../testcase/MyProtocolCodecFactory.html">MyProtocolCodecFactory</a> implements ProtocolCodecFactory {
<a name="9" href="#9">9</a>     <strong class="jxr_keyword">private</strong> ProtocolDecoder decoder = <strong class="jxr_keyword">new</strong> <a href="../testcase/MyRequestDecoder.html">MyRequestDecoder</a>();
<a name="10" href="#10">10</a>    <strong class="jxr_keyword">private</strong> ProtocolEncoder encoder = <strong class="jxr_keyword">new</strong> <a href="../testcase/MyResponseEncoder.html">MyResponseEncoder</a>();
<a name="11" href="#11">11</a>  
<a name="12" href="#12">12</a>    <strong class="jxr_keyword">public</strong> ProtocolDecoder getDecoder(IoSession sessionIn) <strong class="jxr_keyword">throws</strong> Exception {
<a name="13" href="#13">13</a>      <strong class="jxr_keyword">return</strong> decoder;
<a name="14" href="#14">14</a>    }
<a name="15" href="#15">15</a>  
<a name="16" href="#16">16</a>    <strong class="jxr_keyword">public</strong> ProtocolEncoder getEncoder(IoSession sessionIn) <strong class="jxr_keyword">throws</strong> Exception {
<a name="17" href="#17">17</a>      <strong class="jxr_keyword">return</strong> encoder;
<a name="18" href="#18">18</a>    }
<a name="19" href="#19">19</a>  }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

