<!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>IoHandlerCommand xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/apache/mina/handler/chain/IoHandlerCommand.html">View Javadoc</a></div><pre>

<a name="1" href="#1">1</a>   <em class="jxr_comment">/*</em>
<a name="2" href="#2">2</a>   <em class="jxr_comment"> *  Licensed to the Apache Software Foundation (ASF) under one</em>
<a name="3" href="#3">3</a>   <em class="jxr_comment"> *  or more contributor license agreements.  See the NOTICE file</em>
<a name="4" href="#4">4</a>   <em class="jxr_comment"> *  distributed with this work for additional information</em>
<a name="5" href="#5">5</a>   <em class="jxr_comment"> *  regarding copyright ownership.  The ASF licenses this file</em>
<a name="6" href="#6">6</a>   <em class="jxr_comment"> *  to you under the Apache License, Version 2.0 (the</em>
<a name="7" href="#7">7</a>   <em class="jxr_comment"> *  "License"); you may not use this file except in compliance</em>
<a name="8" href="#8">8</a>   <em class="jxr_comment"> *  with the License.  You may obtain a copy of the License at</em>
<a name="9" href="#9">9</a>   <em class="jxr_comment"> *</em>
<a name="10" href="#10">10</a>  <em class="jxr_comment"> *    <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em>
<a name="11" href="#11">11</a>  <em class="jxr_comment"> *</em>
<a name="12" href="#12">12</a>  <em class="jxr_comment"> *  Unless required by applicable law or agreed to in writing,</em>
<a name="13" href="#13">13</a>  <em class="jxr_comment"> *  software distributed under the License is distributed on an</em>
<a name="14" href="#14">14</a>  <em class="jxr_comment"> *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a name="15" href="#15">15</a>  <em class="jxr_comment"> *  KIND, either express or implied.  See the License for the</em>
<a name="16" href="#16">16</a>  <em class="jxr_comment"> *  specific language governing permissions and limitations</em>
<a name="17" href="#17">17</a>  <em class="jxr_comment"> *  under the License.</em>
<a name="18" href="#18">18</a>  <em class="jxr_comment"> *</em>
<a name="19" href="#19">19</a>  <em class="jxr_comment"> */</em>
<a name="20" href="#20">20</a>  <strong class="jxr_keyword">package</strong> org.apache.mina.handler.chain;
<a name="21" href="#21">21</a>  
<a name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> org.apache.mina.core.session.IoSession;
<a name="23" href="#23">23</a>  
<a name="24" href="#24">24</a>  <em class="jxr_javadoccomment">/**</em>
<a name="25" href="#25">25</a>  <em class="jxr_javadoccomment"> * &lt;p&gt;A {@link IoHandlerCommand} encapsulates a unit of processing work to be</em>
<a name="26" href="#26">26</a>  <em class="jxr_javadoccomment"> * performed, whose purpose is to examine and/or modify the state of a</em>
<a name="27" href="#27">27</a>  <em class="jxr_javadoccomment"> * transaction that is represented by custom attributes provided by</em>
<a name="28" href="#28">28</a>  <em class="jxr_javadoccomment"> * {@link IoSession}.  Individual {@link IoHandlerCommand}s can be assembled into</em>
<a name="29" href="#29">29</a>  <em class="jxr_javadoccomment"> * a {@link IoHandlerChain}, which allows them to either complete the</em>
<a name="30" href="#30">30</a>  <em class="jxr_javadoccomment"> * required processing or delegate further processing to the next</em>
<a name="31" href="#31">31</a>  <em class="jxr_javadoccomment"> * {@link IoHandlerCommand} in the {@link IoHandlerChain}.&lt;/p&gt;</em>
<a name="32" href="#32">32</a>  <em class="jxr_javadoccomment"> *</em>
<a name="33" href="#33">33</a>  <em class="jxr_javadoccomment"> * &lt;p&gt;{@link IoHandlerCommand} implementations typically retrieve and store state</em>
<a name="34" href="#34">34</a>  <em class="jxr_javadoccomment"> * information in the {@link IoSession} that is passed as a parameter to</em>
<a name="35" href="#35">35</a>  <em class="jxr_javadoccomment"> * the {@link #execute(NextCommand,IoSession,Object)} method, using custom</em>
<a name="36" href="#36">36</a>  <em class="jxr_javadoccomment"> * session attributes.  If you think getting attributes is tedious process,</em>
<a name="37" href="#37">37</a>  <em class="jxr_javadoccomment"> * you can create a bean which contains getters and setters of all properties</em>
<a name="38" href="#38">38</a>  <em class="jxr_javadoccomment"> * and store the bean as a session attribute:&lt;/p&gt;</em>
<a name="39" href="#39">39</a>  <em class="jxr_javadoccomment"> *</em>
<a name="40" href="#40">40</a>  <em class="jxr_javadoccomment"> * &lt;pre&gt;</em>
<a name="41" href="#41">41</a>  <em class="jxr_javadoccomment"> * public class MyContext {</em>
<a name="42" href="#42">42</a>  <em class="jxr_javadoccomment"> *   public String getPropertyX() { ... };</em>
<a name="43" href="#43">43</a>  <em class="jxr_javadoccomment"> *   public void setPropertyX(String propertyX) { ... };</em>
<a name="44" href="#44">44</a>  <em class="jxr_javadoccomment"> *   public int getPropertyZ() { ... };</em>
<a name="45" href="#45">45</a>  <em class="jxr_javadoccomment"> *   public void setPropertyZ(int propertyZ) { ... };</em>
<a name="46" href="#46">46</a>  <em class="jxr_javadoccomment"> * }</em>
<a name="47" href="#47">47</a>  <em class="jxr_javadoccomment"> *</em>
<a name="48" href="#48">48</a>  <em class="jxr_javadoccomment"> * public class MyHandlderCommand implements IoHandlerCommand {</em>
<a name="49" href="#49">49</a>  <em class="jxr_javadoccomment"> *   public void execute( NextCommand next, IoSession session, Object message ) throws Exception {</em>
<a name="50" href="#50">50</a>  <em class="jxr_javadoccomment"> *     MyContext ctx = session.getAttribute( "mycontext" );</em>
<a name="51" href="#51">51</a>  <em class="jxr_javadoccomment"> *     ...</em>
<a name="52" href="#52">52</a>  <em class="jxr_javadoccomment"> *   }</em>
<a name="53" href="#53">53</a>  <em class="jxr_javadoccomment"> * }</em>
<a name="54" href="#54">54</a>  <em class="jxr_javadoccomment"> * &lt;/pre&gt;</em>
<a name="55" href="#55">55</a>  <em class="jxr_javadoccomment"> *</em>
<a name="56" href="#56">56</a>  <em class="jxr_javadoccomment"> * @author The Apache MINA Project (dev@mina.apache.org)</em>
<a name="57" href="#57">57</a>  <em class="jxr_javadoccomment"> * @version $Rev: 671827 $, $Date: 2008-06-26 10:49:48 +0200 (jeu, 26 jun 2008) $</em>
<a name="58" href="#58">58</a>  <em class="jxr_javadoccomment"> */</em>
<a name="59" href="#59">59</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">interface</strong> <a href="../../../../../org/apache/mina/handler/chain/IoHandlerCommand.html">IoHandlerCommand</a> {
<a name="60" href="#60">60</a>      <em class="jxr_javadoccomment">/**</em>
<a name="61" href="#61">61</a>  <em class="jxr_javadoccomment">     * &lt;p&gt;Execute a unit of processing work to be performed.  This</em>
<a name="62" href="#62">62</a>  <em class="jxr_javadoccomment">     * {@link IoHandlerCommand} may either complete the required processing</em>
<a name="63" href="#63">63</a>  <em class="jxr_javadoccomment">     * and just return to stop the processing, or delegate remaining</em>
<a name="64" href="#64">64</a>  <em class="jxr_javadoccomment">     * processing to the next {@link IoHandlerCommand} in a {@link IoHandlerChain}</em>
<a name="65" href="#65">65</a>  <em class="jxr_javadoccomment">     * containing this {@link IoHandlerCommand} by calling</em>
<a name="66" href="#66">66</a>  <em class="jxr_javadoccomment">     * {@link NextCommand#execute(IoSession,Object)}.</em>
<a name="67" href="#67">67</a>  <em class="jxr_javadoccomment">     *</em>
<a name="68" href="#68">68</a>  <em class="jxr_javadoccomment">     * @param next an indirect reference to the next {@link IoHandlerCommand} that</em>
<a name="69" href="#69">69</a>  <em class="jxr_javadoccomment">     *             provides a way to forward the request to the next {@link IoHandlerCommand}.</em>
<a name="70" href="#70">70</a>  <em class="jxr_javadoccomment">     * @param session the {@link IoSession} which is associated with</em>
<a name="71" href="#71">71</a>  <em class="jxr_javadoccomment">     *                this request</em>
<a name="72" href="#72">72</a>  <em class="jxr_javadoccomment">     * @param message the message object of this request</em>
<a name="73" href="#73">73</a>  <em class="jxr_javadoccomment">     *</em>
<a name="74" href="#74">74</a>  <em class="jxr_javadoccomment">     * @exception Exception general purpose exception return</em>
<a name="75" href="#75">75</a>  <em class="jxr_javadoccomment">     *                      to indicate abnormal termination</em>
<a name="76" href="#76">76</a>  <em class="jxr_javadoccomment">     */</em>
<a name="77" href="#77">77</a>      <strong class="jxr_keyword">void</strong> execute(<a href="../../../../../org/apache/mina/handler/chain/IoHandlerCommand.html">NextCommand</a> next, <a href="../../../../../org/apache/mina/core/session/IoSession.html">IoSession</a> session, Object message)
<a name="78" href="#78">78</a>              <strong class="jxr_keyword">throws</strong> Exception;
<a name="79" href="#79">79</a>  
<a name="80" href="#80">80</a>      <em class="jxr_javadoccomment">/**</em>
<a name="81" href="#81">81</a>  <em class="jxr_javadoccomment">     * Represents an indirect reference to the next {@link IoHandlerCommand} of</em>
<a name="82" href="#82">82</a>  <em class="jxr_javadoccomment">     * the {@link IoHandlerChain}.  This interface provides a way to forward</em>
<a name="83" href="#83">83</a>  <em class="jxr_javadoccomment">     * the request to the next {@link IoHandlerCommand}.</em>
<a name="84" href="#84">84</a>  <em class="jxr_javadoccomment">     *</em>
<a name="85" href="#85">85</a>  <em class="jxr_javadoccomment">     * @author The Apache MINA Project (dev@mina.apache.org)</em>
<a name="86" href="#86">86</a>  <em class="jxr_javadoccomment">     * @version $Rev: 671827 $, $Date: 2008-06-26 10:49:48 +0200 (jeu, 26 jun 2008) $</em>
<a name="87" href="#87">87</a>  <em class="jxr_javadoccomment">     */</em>
<a name="88" href="#88">88</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">interface</strong> <a href="../../../../../org/apache/mina/handler/chain/IoHandlerCommand.html">NextCommand</a> {
<a name="89" href="#89">89</a>          <em class="jxr_javadoccomment">/**</em>
<a name="90" href="#90">90</a>  <em class="jxr_javadoccomment">         * Forwards the request to the next {@link IoHandlerCommand} in the</em>
<a name="91" href="#91">91</a>  <em class="jxr_javadoccomment">         * {@link IoHandlerChain}.</em>
<a name="92" href="#92">92</a>  <em class="jxr_javadoccomment">         */</em>
<a name="93" href="#93">93</a>          <strong class="jxr_keyword">void</strong> execute(<a href="../../../../../org/apache/mina/core/session/IoSession.html">IoSession</a> session, Object message) <strong class="jxr_keyword">throws</strong> Exception;
<a name="94" href="#94">94</a>      }
<a name="95" href="#95">95</a>  }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

