<!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>State xref</title>
<link type="text/css" rel="stylesheet" href="../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../apidocs/org/apache/mina/statemachine/State.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.statemachine;
<a name="21" href="#21">21</a>  
<a name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> java.util.ArrayList;
<a name="23" href="#23">23</a>  <strong class="jxr_keyword">import</strong> java.util.Collections;
<a name="24" href="#24">24</a>  <strong class="jxr_keyword">import</strong> java.util.List;
<a name="25" href="#25">25</a>  
<a name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.lang.builder.EqualsBuilder;
<a name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.lang.builder.HashCodeBuilder;
<a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.lang.builder.ToStringBuilder;
<a name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> org.apache.mina.statemachine.event.Event;
<a name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> org.apache.mina.statemachine.transition.Transition;
<a name="31" href="#31">31</a>  
<a name="32" href="#32">32</a>  <em class="jxr_javadoccomment">/**</em>
<a name="33" href="#33">33</a>  <em class="jxr_javadoccomment"> * Represents a state in a {@link StateMachine}. Normally you wouldn't create </em>
<a name="34" href="#34">34</a>  <em class="jxr_javadoccomment"> * instances of this class directly but rather use the </em>
<a name="35" href="#35">35</a>  <em class="jxr_javadoccomment"> * {@link org.apache.mina.statemachine.annotation.State} annotation to define</em>
<a name="36" href="#36">36</a>  <em class="jxr_javadoccomment"> * your states and then let {@link StateMachineFactory} create a </em>
<a name="37" href="#37">37</a>  <em class="jxr_javadoccomment"> * {@link StateMachine} for you.</em>
<a name="38" href="#38">38</a>  <em class="jxr_javadoccomment"> * &lt;p&gt; </em>
<a name="39" href="#39">39</a>  <em class="jxr_javadoccomment"> * {@link State}s  inherits {@link Transition}s from</em>
<a name="40" href="#40">40</a>  <em class="jxr_javadoccomment"> * their parent. A {@link State} can override any of the parents </em>
<a name="41" href="#41">41</a>  <em class="jxr_javadoccomment"> * {@link Transition}s. When an {@link Event} is processed the {@link Transition}s</em>
<a name="42" href="#42">42</a>  <em class="jxr_javadoccomment"> * of the current {@link State} will be searched for a {@link Transition} which</em>
<a name="43" href="#43">43</a>  <em class="jxr_javadoccomment"> * can handle the event. If none is found the {@link State}'s parent will be</em>
<a name="44" href="#44">44</a>  <em class="jxr_javadoccomment"> * searched and so on.</em>
<a name="45" href="#45">45</a>  <em class="jxr_javadoccomment"> * &lt;/p&gt;</em>
<a name="46" href="#46">46</a>  <em class="jxr_javadoccomment"> *</em>
<a name="47" href="#47">47</a>  <em class="jxr_javadoccomment"> * @author The Apache MINA Project (dev@mina.apache.org)</em>
<a name="48" href="#48">48</a>  <em class="jxr_javadoccomment"> * @version $Rev: 586108 $, $Date: 2007-10-18 22:05:07 +0200 (jeu, 18 oct 2007) $</em>
<a name="49" href="#49">49</a>  <em class="jxr_javadoccomment"> */</em>
<a name="50" href="#50">50</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/mina/statemachine/State.html">State</a> {
<a name="51" href="#51">51</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String id;
<a name="52" href="#52">52</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <a href="../../../../org/apache/mina/statemachine/State.html">State</a> parent;
<a name="53" href="#53">53</a>      <strong class="jxr_keyword">private</strong> List&lt;TransitionHolder&gt; transitionHolders = <strong class="jxr_keyword">new</strong> ArrayList&lt;TransitionHolder&gt;();
<a name="54" href="#54">54</a>      <strong class="jxr_keyword">private</strong> List&lt;Transition&gt; transitions = Collections.emptyList();
<a name="55" href="#55">55</a>      
<a name="56" href="#56">56</a>      <em class="jxr_javadoccomment">/**</em>
<a name="57" href="#57">57</a>  <em class="jxr_javadoccomment">     * Creates a new {@link State} with the specified id.</em>
<a name="58" href="#58">58</a>  <em class="jxr_javadoccomment">     * </em>
<a name="59" href="#59">59</a>  <em class="jxr_javadoccomment">     * @param id the unique id of this {@link State}.</em>
<a name="60" href="#60">60</a>  <em class="jxr_javadoccomment">     */</em>
<a name="61" href="#61">61</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/statemachine/State.html">State</a>(String id) {
<a name="62" href="#62">62</a>          <strong class="jxr_keyword">this</strong>(id, <strong class="jxr_keyword">null</strong>);
<a name="63" href="#63">63</a>      }
<a name="64" href="#64">64</a>  
<a name="65" href="#65">65</a>      <em class="jxr_javadoccomment">/**</em>
<a name="66" href="#66">66</a>  <em class="jxr_javadoccomment">     * Creates a new {@link State} with the specified id and parent.</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 id the unique id of this {@link State}.</em>
<a name="69" href="#69">69</a>  <em class="jxr_javadoccomment">     * @param parent the parent {@link State}.</em>
<a name="70" href="#70">70</a>  <em class="jxr_javadoccomment">     */</em>
<a name="71" href="#71">71</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/statemachine/State.html">State</a>(String id, <a href="../../../../org/apache/mina/statemachine/State.html">State</a> parent) {
<a name="72" href="#72">72</a>          <strong class="jxr_keyword">this</strong>.id = id;
<a name="73" href="#73">73</a>          <strong class="jxr_keyword">this</strong>.parent = parent;
<a name="74" href="#74">74</a>      }
<a name="75" href="#75">75</a>  
<a name="76" href="#76">76</a>      <em class="jxr_javadoccomment">/**</em>
<a name="77" href="#77">77</a>  <em class="jxr_javadoccomment">     * Returns the id of this {@link State}.</em>
<a name="78" href="#78">78</a>  <em class="jxr_javadoccomment">     * </em>
<a name="79" href="#79">79</a>  <em class="jxr_javadoccomment">     * @return the id.</em>
<a name="80" href="#80">80</a>  <em class="jxr_javadoccomment">     */</em>
<a name="81" href="#81">81</a>      <strong class="jxr_keyword">public</strong> String getId() {
<a name="82" href="#82">82</a>          <strong class="jxr_keyword">return</strong> id;
<a name="83" href="#83">83</a>      }
<a name="84" href="#84">84</a>  
<a name="85" href="#85">85</a>      <em class="jxr_javadoccomment">/**</em>
<a name="86" href="#86">86</a>  <em class="jxr_javadoccomment">     * Returns the parent {@link State}.</em>
<a name="87" href="#87">87</a>  <em class="jxr_javadoccomment">     * </em>
<a name="88" href="#88">88</a>  <em class="jxr_javadoccomment">     * @return the parent or &lt;code&gt;null&lt;/code&gt; if this {@link State} has no </em>
<a name="89" href="#89">89</a>  <em class="jxr_javadoccomment">     *         parent.</em>
<a name="90" href="#90">90</a>  <em class="jxr_javadoccomment">     */</em>
<a name="91" href="#91">91</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/statemachine/State.html">State</a> getParent() {
<a name="92" href="#92">92</a>          <strong class="jxr_keyword">return</strong> parent;
<a name="93" href="#93">93</a>      }
<a name="94" href="#94">94</a>  
<a name="95" href="#95">95</a>      <em class="jxr_javadoccomment">/**</em>
<a name="96" href="#96">96</a>  <em class="jxr_javadoccomment">     * Returns an unmodifiable {@link List} of {@link Transition}s going out</em>
<a name="97" href="#97">97</a>  <em class="jxr_javadoccomment">     * from this {@link State}.</em>
<a name="98" href="#98">98</a>  <em class="jxr_javadoccomment">     * </em>
<a name="99" href="#99">99</a>  <em class="jxr_javadoccomment">     * @return the {@link Transition}s.</em>
<a name="100" href="#100">100</a> <em class="jxr_javadoccomment">     */</em>
<a name="101" href="#101">101</a>     <strong class="jxr_keyword">public</strong> List&lt;Transition&gt; getTransitions() {
<a name="102" href="#102">102</a>         <strong class="jxr_keyword">return</strong> Collections.unmodifiableList(transitions);
<a name="103" href="#103">103</a>     }
<a name="104" href="#104">104</a> 
<a name="105" href="#105">105</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> updateTransitions() {
<a name="106" href="#106">106</a>         transitions = <strong class="jxr_keyword">new</strong> ArrayList&lt;Transition&gt;(transitionHolders.size());
<a name="107" href="#107">107</a>         <strong class="jxr_keyword">for</strong> (TransitionHolder holder : transitionHolders) {
<a name="108" href="#108">108</a>             transitions.add(holder.transition);
<a name="109" href="#109">109</a>         }
<a name="110" href="#110">110</a>     }
<a name="111" href="#111">111</a>     
<a name="112" href="#112">112</a>     <em class="jxr_javadoccomment">/**</em>
<a name="113" href="#113">113</a> <em class="jxr_javadoccomment">     * Adds an outgoing {@link Transition} to this {@link State} with weight 0.</em>
<a name="114" href="#114">114</a> <em class="jxr_javadoccomment">     * </em>
<a name="115" href="#115">115</a> <em class="jxr_javadoccomment">     * @param transition the {@link Transition} to add.</em>
<a name="116" href="#116">116</a> <em class="jxr_javadoccomment">     * @return this {@link State}.</em>
<a name="117" href="#117">117</a> <em class="jxr_javadoccomment">     * @see #addTransition(Transition, int)</em>
<a name="118" href="#118">118</a> <em class="jxr_javadoccomment">     */</em>
<a name="119" href="#119">119</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/statemachine/State.html">State</a> addTransition(<a href="../../../../org/apache/mina/statemachine/transition/Transition.html">Transition</a> transition) {
<a name="120" href="#120">120</a>         <strong class="jxr_keyword">return</strong> addTransition(transition, 0);
<a name="121" href="#121">121</a>     }
<a name="122" href="#122">122</a> 
<a name="123" href="#123">123</a>     <em class="jxr_javadoccomment">/**</em>
<a name="124" href="#124">124</a> <em class="jxr_javadoccomment">     * Adds an outgoing {@link Transition} to this {@link State} with the </em>
<a name="125" href="#125">125</a> <em class="jxr_javadoccomment">     * specified weight. The higher the weight the less important a </em>
<a name="126" href="#126">126</a> <em class="jxr_javadoccomment">     * {@link Transition} is. If two {@link Transition}s match the same</em>
<a name="127" href="#127">127</a> <em class="jxr_javadoccomment">     * {@link Event} the {@link Transition} with the lower weight will</em>
<a name="128" href="#128">128</a> <em class="jxr_javadoccomment">     * be executed.</em>
<a name="129" href="#129">129</a> <em class="jxr_javadoccomment">     * </em>
<a name="130" href="#130">130</a> <em class="jxr_javadoccomment">     * @param transition the {@link Transition} to add.</em>
<a name="131" href="#131">131</a> <em class="jxr_javadoccomment">     * @return this {@link State}.</em>
<a name="132" href="#132">132</a> <em class="jxr_javadoccomment">     */</em>
<a name="133" href="#133">133</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/mina/statemachine/State.html">State</a> addTransition(<a href="../../../../org/apache/mina/statemachine/transition/Transition.html">Transition</a> transition, <strong class="jxr_keyword">int</strong> weight) {
<a name="134" href="#134">134</a>         <strong class="jxr_keyword">if</strong> (transition == <strong class="jxr_keyword">null</strong>) {
<a name="135" href="#135">135</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> NullPointerException(<span class="jxr_string">"transition"</span>);
<a name="136" href="#136">136</a>         }
<a name="137" href="#137">137</a> 
<a name="138" href="#138">138</a>         transitionHolders.add(<strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/mina/statemachine/State.html">TransitionHolder</a>(transition, weight));
<a name="139" href="#139">139</a>         Collections.sort(transitionHolders);
<a name="140" href="#140">140</a>         updateTransitions();
<a name="141" href="#141">141</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">this</strong>;
<a name="142" href="#142">142</a>     }
<a name="143" href="#143">143</a>     
<a name="144" href="#144">144</a>     @Override
<a name="145" href="#145">145</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> equals(Object o) {
<a name="146" href="#146">146</a>         <strong class="jxr_keyword">if</strong> (!(o instanceof State)) {
<a name="147" href="#147">147</a>             <strong class="jxr_keyword">return</strong> false;
<a name="148" href="#148">148</a>         }
<a name="149" href="#149">149</a>         <strong class="jxr_keyword">if</strong> (o == <strong class="jxr_keyword">this</strong>) {
<a name="150" href="#150">150</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
<a name="151" href="#151">151</a>         }
<a name="152" href="#152">152</a>         <a href="../../../../org/apache/mina/statemachine/State.html">State</a> that = (State) o;
<a name="153" href="#153">153</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> EqualsBuilder().append(<strong class="jxr_keyword">this</strong>.id, that.id).isEquals();
<a name="154" href="#154">154</a>     }
<a name="155" href="#155">155</a> 
<a name="156" href="#156">156</a>     @Override
<a name="157" href="#157">157</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> hashCode() {
<a name="158" href="#158">158</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> HashCodeBuilder(13, 33).append(<strong class="jxr_keyword">this</strong>.id).toHashCode();
<a name="159" href="#159">159</a>     }
<a name="160" href="#160">160</a> 
<a name="161" href="#161">161</a>     @Override
<a name="162" href="#162">162</a>     <strong class="jxr_keyword">public</strong> String toString() {
<a name="163" href="#163">163</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> ToStringBuilder(<strong class="jxr_keyword">this</strong>).append(<span class="jxr_string">"id"</span>, <strong class="jxr_keyword">this</strong>.id).toString();
<a name="164" href="#164">164</a>     }
<a name="165" href="#165">165</a> 
<a name="166" href="#166">166</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/mina/statemachine/State.html">TransitionHolder</a> implements Comparable&lt;TransitionHolder&gt; {
<a name="167" href="#167">167</a>         <a href="../../../../org/apache/mina/statemachine/transition/Transition.html">Transition</a> transition;
<a name="168" href="#168">168</a> 
<a name="169" href="#169">169</a>         <strong class="jxr_keyword">int</strong> weight;
<a name="170" href="#170">170</a> 
<a name="171" href="#171">171</a>         <a href="../../../../org/apache/mina/statemachine/State.html">TransitionHolder</a>(<a href="../../../../org/apache/mina/statemachine/transition/Transition.html">Transition</a> transition, <strong class="jxr_keyword">int</strong> weight) {
<a name="172" href="#172">172</a>             <strong class="jxr_keyword">this</strong>.transition = transition;
<a name="173" href="#173">173</a>             <strong class="jxr_keyword">this</strong>.weight = weight;
<a name="174" href="#174">174</a>         }
<a name="175" href="#175">175</a> 
<a name="176" href="#176">176</a>         <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> compareTo(<a href="../../../../org/apache/mina/statemachine/State.html">TransitionHolder</a> o) {
<a name="177" href="#177">177</a>             <strong class="jxr_keyword">return</strong> (weight &gt; o.weight) ? 1 : (weight &lt; o.weight ? -1 : 0);
<a name="178" href="#178">178</a>         }
<a name="179" href="#179">179</a>     }
<a name="180" href="#180">180</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

