<!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>IoEventQueueThrottle xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/apache/mina/filter/executor/IoEventQueueThrottle.html">View Javadoc</a></div><pre>
<a class="jxr_linenumber" name="L1" href="#L1">1</a>   <em class="jxr_comment">/*</em>
<a class="jxr_linenumber" name="L2" href="#L2">2</a>   <em class="jxr_comment"> *  Licensed to the Apache Software Foundation (ASF) under one</em>
<a class="jxr_linenumber" name="L3" href="#L3">3</a>   <em class="jxr_comment"> *  or more contributor license agreements.  See the NOTICE file</em>
<a class="jxr_linenumber" name="L4" href="#L4">4</a>   <em class="jxr_comment"> *  distributed with this work for additional information</em>
<a class="jxr_linenumber" name="L5" href="#L5">5</a>   <em class="jxr_comment"> *  regarding copyright ownership.  The ASF licenses this file</em>
<a class="jxr_linenumber" name="L6" href="#L6">6</a>   <em class="jxr_comment"> *  to you under the Apache License, Version 2.0 (the</em>
<a class="jxr_linenumber" name="L7" href="#L7">7</a>   <em class="jxr_comment"> *  "License"); you may not use this file except in compliance</em>
<a class="jxr_linenumber" name="L8" href="#L8">8</a>   <em class="jxr_comment"> *  with the License.  You may obtain a copy of the License at</em>
<a class="jxr_linenumber" name="L9" href="#L9">9</a>   <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="L10" href="#L10">10</a>  <em class="jxr_comment"> *    <a href="http://www.apache.org/licenses/LICENSE-2." target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.</a>0</em>
<a class="jxr_linenumber" name="L11" href="#L11">11</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="L12" href="#L12">12</a>  <em class="jxr_comment"> *  Unless required by applicable law or agreed to in writing,</em>
<a class="jxr_linenumber" name="L13" href="#L13">13</a>  <em class="jxr_comment"> *  software distributed under the License is distributed on an</em>
<a class="jxr_linenumber" name="L14" href="#L14">14</a>  <em class="jxr_comment"> *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a class="jxr_linenumber" name="L15" href="#L15">15</a>  <em class="jxr_comment"> *  KIND, either express or implied.  See the License for the</em>
<a class="jxr_linenumber" name="L16" href="#L16">16</a>  <em class="jxr_comment"> *  specific language governing permissions and limitations</em>
<a class="jxr_linenumber" name="L17" href="#L17">17</a>  <em class="jxr_comment"> *  under the License.</em>
<a class="jxr_linenumber" name="L18" href="#L18">18</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="L19" href="#L19">19</a>  <em class="jxr_comment"> */</em>
<a class="jxr_linenumber" name="L20" href="#L20">20</a>  <strong class="jxr_keyword">package</strong> org.apache.mina.filter.executor;
<a class="jxr_linenumber" name="L21" href="#L21">21</a>  
<a class="jxr_linenumber" name="L22" href="#L22">22</a>  <strong class="jxr_keyword">import</strong> java.util.concurrent.atomic.AtomicInteger;
<a class="jxr_linenumber" name="L23" href="#L23">23</a>  
<a class="jxr_linenumber" name="L24" href="#L24">24</a>  <strong class="jxr_keyword">import</strong> org.apache.mina.core.session.IoEvent;
<a class="jxr_linenumber" name="L25" href="#L25">25</a>  <strong class="jxr_keyword">import</strong> org.slf4j.Logger;
<a class="jxr_linenumber" name="L26" href="#L26">26</a>  <strong class="jxr_keyword">import</strong> org.slf4j.LoggerFactory;
<a class="jxr_linenumber" name="L27" href="#L27">27</a>  
<a class="jxr_linenumber" name="L28" href="#L28">28</a>  <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="L29" href="#L29">29</a>  <em class="jxr_javadoccomment"> * Throttles incoming or outgoing events.</em>
<a class="jxr_linenumber" name="L30" href="#L30">30</a>  <em class="jxr_javadoccomment"> *</em>
<a class="jxr_linenumber" name="L31" href="#L31">31</a>  <em class="jxr_javadoccomment"> * @author &lt;a href="<a href="http://mina.apache.org" target="alexandria_uri">http://mina.apache.org</a>"&gt;Apache MINA Project&lt;/a&gt;</em>
<a class="jxr_linenumber" name="L32" href="#L32">32</a>  <em class="jxr_javadoccomment"> */</em>
<a class="jxr_linenumber" name="L33" href="#L33">33</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../org/apache/mina/filter/executor/IoEventQueueThrottle.html">IoEventQueueThrottle</a> <strong class="jxr_keyword">implements</strong> <a href="../../../../../org/apache/mina/filter/executor/IoEventQueueHandler.html">IoEventQueueHandler</a> {
<a class="jxr_linenumber" name="L34" href="#L34">34</a>      <em class="jxr_javadoccomment">/** A logger for this class */</em>
<a class="jxr_linenumber" name="L35" href="#L35">35</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">static</strong> Logger LOGGER = LoggerFactory.getLogger(IoEventQueueThrottle.<strong class="jxr_keyword">class</strong>);
<a class="jxr_linenumber" name="L36" href="#L36">36</a>  
<a class="jxr_linenumber" name="L37" href="#L37">37</a>      <em class="jxr_javadoccomment">/** The event size estimator instance */</em>
<a class="jxr_linenumber" name="L38" href="#L38">38</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <a href="../../../../../org/apache/mina/filter/executor/IoEventSizeEstimator.html">IoEventSizeEstimator</a> eventSizeEstimator;
<a class="jxr_linenumber" name="L39" href="#L39">39</a>  
<a class="jxr_linenumber" name="L40" href="#L40">40</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">volatile</strong> <strong class="jxr_keyword">int</strong> threshold;
<a class="jxr_linenumber" name="L41" href="#L41">41</a>  
<a class="jxr_linenumber" name="L42" href="#L42">42</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> Object lock = <strong class="jxr_keyword">new</strong> Object();
<a class="jxr_linenumber" name="L43" href="#L43">43</a>  
<a class="jxr_linenumber" name="L44" href="#L44">44</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> AtomicInteger counter = <strong class="jxr_keyword">new</strong> AtomicInteger();
<a class="jxr_linenumber" name="L45" href="#L45">45</a>  
<a class="jxr_linenumber" name="L46" href="#L46">46</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">int</strong> waiters;
<a class="jxr_linenumber" name="L47" href="#L47">47</a>  
<a class="jxr_linenumber" name="L48" href="#L48">48</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../org/apache/mina/filter/executor/IoEventQueueThrottle.html">IoEventQueueThrottle</a>() {
<a class="jxr_linenumber" name="L49" href="#L49">49</a>          <strong class="jxr_keyword">this</strong>(<strong class="jxr_keyword">new</strong> <a href="../../../../../org/apache/mina/filter/executor/DefaultIoEventSizeEstimator.html">DefaultIoEventSizeEstimator</a>(), 65536);
<a class="jxr_linenumber" name="L50" href="#L50">50</a>      }
<a class="jxr_linenumber" name="L51" href="#L51">51</a>  
<a class="jxr_linenumber" name="L52" href="#L52">52</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../org/apache/mina/filter/executor/IoEventQueueThrottle.html">IoEventQueueThrottle</a>(<strong class="jxr_keyword">int</strong> threshold) {
<a class="jxr_linenumber" name="L53" href="#L53">53</a>          <strong class="jxr_keyword">this</strong>(<strong class="jxr_keyword">new</strong> <a href="../../../../../org/apache/mina/filter/executor/DefaultIoEventSizeEstimator.html">DefaultIoEventSizeEstimator</a>(), threshold);
<a class="jxr_linenumber" name="L54" href="#L54">54</a>      }
<a class="jxr_linenumber" name="L55" href="#L55">55</a>  
<a class="jxr_linenumber" name="L56" href="#L56">56</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../org/apache/mina/filter/executor/IoEventQueueThrottle.html">IoEventQueueThrottle</a>(<a href="../../../../../org/apache/mina/filter/executor/IoEventSizeEstimator.html">IoEventSizeEstimator</a> eventSizeEstimator, <strong class="jxr_keyword">int</strong> threshold) {
<a class="jxr_linenumber" name="L57" href="#L57">57</a>          <strong class="jxr_keyword">if</strong> (eventSizeEstimator == <strong class="jxr_keyword">null</strong>) {
<a class="jxr_linenumber" name="L58" href="#L58">58</a>              <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> IllegalArgumentException(<span class="jxr_string">"eventSizeEstimator"</span>);
<a class="jxr_linenumber" name="L59" href="#L59">59</a>          }
<a class="jxr_linenumber" name="L60" href="#L60">60</a>          
<a class="jxr_linenumber" name="L61" href="#L61">61</a>          <strong class="jxr_keyword">this</strong>.eventSizeEstimator = eventSizeEstimator;
<a class="jxr_linenumber" name="L62" href="#L62">62</a>  
<a class="jxr_linenumber" name="L63" href="#L63">63</a>          setThreshold(threshold);
<a class="jxr_linenumber" name="L64" href="#L64">64</a>      }
<a class="jxr_linenumber" name="L65" href="#L65">65</a>  
<a class="jxr_linenumber" name="L66" href="#L66">66</a>      <strong class="jxr_keyword">public</strong> <a href="../../../../../org/apache/mina/filter/executor/IoEventSizeEstimator.html">IoEventSizeEstimator</a> getEventSizeEstimator() {
<a class="jxr_linenumber" name="L67" href="#L67">67</a>          <strong class="jxr_keyword">return</strong> eventSizeEstimator;
<a class="jxr_linenumber" name="L68" href="#L68">68</a>      }
<a class="jxr_linenumber" name="L69" href="#L69">69</a>  
<a class="jxr_linenumber" name="L70" href="#L70">70</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getThreshold() {
<a class="jxr_linenumber" name="L71" href="#L71">71</a>          <strong class="jxr_keyword">return</strong> threshold;
<a class="jxr_linenumber" name="L72" href="#L72">72</a>      }
<a class="jxr_linenumber" name="L73" href="#L73">73</a>  
<a class="jxr_linenumber" name="L74" href="#L74">74</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> getCounter() {
<a class="jxr_linenumber" name="L75" href="#L75">75</a>          <strong class="jxr_keyword">return</strong> counter.get();
<a class="jxr_linenumber" name="L76" href="#L76">76</a>      }
<a class="jxr_linenumber" name="L77" href="#L77">77</a>  
<a class="jxr_linenumber" name="L78" href="#L78">78</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setThreshold(<strong class="jxr_keyword">int</strong> threshold) {
<a class="jxr_linenumber" name="L79" href="#L79">79</a>          <strong class="jxr_keyword">if</strong> (threshold &lt;= 0) {
<a class="jxr_linenumber" name="L80" href="#L80">80</a>              <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> IllegalArgumentException(<span class="jxr_string">"threshold: "</span> + threshold);
<a class="jxr_linenumber" name="L81" href="#L81">81</a>          }
<a class="jxr_linenumber" name="L82" href="#L82">82</a>          
<a class="jxr_linenumber" name="L83" href="#L83">83</a>          <strong class="jxr_keyword">this</strong>.threshold = threshold;
<a class="jxr_linenumber" name="L84" href="#L84">84</a>      }
<a class="jxr_linenumber" name="L85" href="#L85">85</a>  
<a class="jxr_linenumber" name="L86" href="#L86">86</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> accept(Object source, <a href="../../../../../org/apache/mina/core/session/IoEvent.html">IoEvent</a> event) {
<a class="jxr_linenumber" name="L87" href="#L87">87</a>          <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="L88" href="#L88">88</a>      }
<a class="jxr_linenumber" name="L89" href="#L89">89</a>  
<a class="jxr_linenumber" name="L90" href="#L90">90</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> offered(Object source, <a href="../../../../../org/apache/mina/core/session/IoEvent.html">IoEvent</a> event) {
<a class="jxr_linenumber" name="L91" href="#L91">91</a>          <strong class="jxr_keyword">int</strong> eventSize = estimateSize(event);
<a class="jxr_linenumber" name="L92" href="#L92">92</a>          <strong class="jxr_keyword">int</strong> currentCounter = counter.addAndGet(eventSize);
<a class="jxr_linenumber" name="L93" href="#L93">93</a>          logState();
<a class="jxr_linenumber" name="L94" href="#L94">94</a>  
<a class="jxr_linenumber" name="L95" href="#L95">95</a>          <strong class="jxr_keyword">if</strong> (currentCounter &gt;= threshold) {
<a class="jxr_linenumber" name="L96" href="#L96">96</a>              block();
<a class="jxr_linenumber" name="L97" href="#L97">97</a>          }
<a class="jxr_linenumber" name="L98" href="#L98">98</a>      }
<a class="jxr_linenumber" name="L99" href="#L99">99</a>  
<a class="jxr_linenumber" name="L100" href="#L100">100</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> polled(Object source, <a href="../../../../../org/apache/mina/core/session/IoEvent.html">IoEvent</a> event) {
<a class="jxr_linenumber" name="L101" href="#L101">101</a>         <strong class="jxr_keyword">int</strong> eventSize = estimateSize(event);
<a class="jxr_linenumber" name="L102" href="#L102">102</a>         <strong class="jxr_keyword">int</strong> currentCounter = counter.addAndGet(-eventSize);
<a class="jxr_linenumber" name="L103" href="#L103">103</a> 
<a class="jxr_linenumber" name="L104" href="#L104">104</a>         logState();
<a class="jxr_linenumber" name="L105" href="#L105">105</a> 
<a class="jxr_linenumber" name="L106" href="#L106">106</a>         <strong class="jxr_keyword">if</strong> (currentCounter &lt; threshold) {
<a class="jxr_linenumber" name="L107" href="#L107">107</a>             unblock();
<a class="jxr_linenumber" name="L108" href="#L108">108</a>         }
<a class="jxr_linenumber" name="L109" href="#L109">109</a>     }
<a class="jxr_linenumber" name="L110" href="#L110">110</a> 
<a class="jxr_linenumber" name="L111" href="#L111">111</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">int</strong> estimateSize(<a href="../../../../../org/apache/mina/core/session/IoEvent.html">IoEvent</a> event) {
<a class="jxr_linenumber" name="L112" href="#L112">112</a>         <strong class="jxr_keyword">int</strong> size = getEventSizeEstimator().estimateSize(event);
<a class="jxr_linenumber" name="L113" href="#L113">113</a>         
<a class="jxr_linenumber" name="L114" href="#L114">114</a>         <strong class="jxr_keyword">if</strong> (size &lt; 0) {
<a class="jxr_linenumber" name="L115" href="#L115">115</a>             <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> IllegalStateException(IoEventSizeEstimator.<strong class="jxr_keyword">class</strong>.getSimpleName() + <span class="jxr_string">" returned "</span>
<a class="jxr_linenumber" name="L116" href="#L116">116</a>                     + <span class="jxr_string">"a negative value ("</span> + size + <span class="jxr_string">"): "</span> + event);
<a class="jxr_linenumber" name="L117" href="#L117">117</a>         }
<a class="jxr_linenumber" name="L118" href="#L118">118</a>         
<a class="jxr_linenumber" name="L119" href="#L119">119</a>         <strong class="jxr_keyword">return</strong> size;
<a class="jxr_linenumber" name="L120" href="#L120">120</a>     }
<a class="jxr_linenumber" name="L121" href="#L121">121</a> 
<a class="jxr_linenumber" name="L122" href="#L122">122</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> logState() {
<a class="jxr_linenumber" name="L123" href="#L123">123</a>         <strong class="jxr_keyword">if</strong> (LOGGER.isDebugEnabled()) {
<a class="jxr_linenumber" name="L124" href="#L124">124</a>             LOGGER.debug(Thread.currentThread().getName() + <span class="jxr_string">" state: "</span> + counter.get() + <span class="jxr_string">" / "</span> + getThreshold());
<a class="jxr_linenumber" name="L125" href="#L125">125</a>         }
<a class="jxr_linenumber" name="L126" href="#L126">126</a>     }
<a class="jxr_linenumber" name="L127" href="#L127">127</a> 
<a class="jxr_linenumber" name="L128" href="#L128">128</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> block() {
<a class="jxr_linenumber" name="L129" href="#L129">129</a>         <strong class="jxr_keyword">if</strong> (LOGGER.isDebugEnabled()) {
<a class="jxr_linenumber" name="L130" href="#L130">130</a>             LOGGER.debug(Thread.currentThread().getName() + <span class="jxr_string">" blocked: "</span> + counter.get() + <span class="jxr_string">" &gt;= "</span> + threshold);
<a class="jxr_linenumber" name="L131" href="#L131">131</a>         }
<a class="jxr_linenumber" name="L132" href="#L132">132</a> 
<a class="jxr_linenumber" name="L133" href="#L133">133</a>         <strong class="jxr_keyword">synchronized</strong> (lock) {
<a class="jxr_linenumber" name="L134" href="#L134">134</a>             <strong class="jxr_keyword">while</strong> (counter.get() &gt;= threshold) {
<a class="jxr_linenumber" name="L135" href="#L135">135</a>                 waiters++;
<a class="jxr_linenumber" name="L136" href="#L136">136</a>                 <strong class="jxr_keyword">try</strong> {
<a class="jxr_linenumber" name="L137" href="#L137">137</a>                     lock.wait();
<a class="jxr_linenumber" name="L138" href="#L138">138</a>                 } <strong class="jxr_keyword">catch</strong> (InterruptedException e) {
<a class="jxr_linenumber" name="L139" href="#L139">139</a>                     <em class="jxr_comment">// Wait uninterruptably.</em>
<a class="jxr_linenumber" name="L140" href="#L140">140</a>                 } <strong class="jxr_keyword">finally</strong> {
<a class="jxr_linenumber" name="L141" href="#L141">141</a>                     waiters--;
<a class="jxr_linenumber" name="L142" href="#L142">142</a>                 }
<a class="jxr_linenumber" name="L143" href="#L143">143</a>             }
<a class="jxr_linenumber" name="L144" href="#L144">144</a>         }
<a class="jxr_linenumber" name="L145" href="#L145">145</a> 
<a class="jxr_linenumber" name="L146" href="#L146">146</a>         <strong class="jxr_keyword">if</strong> (LOGGER.isDebugEnabled()) {
<a class="jxr_linenumber" name="L147" href="#L147">147</a>             LOGGER.debug(Thread.currentThread().getName() + <span class="jxr_string">" unblocked: "</span> + counter.get() + <span class="jxr_string">" &lt; "</span> + threshold);
<a class="jxr_linenumber" name="L148" href="#L148">148</a>         }
<a class="jxr_linenumber" name="L149" href="#L149">149</a>     }
<a class="jxr_linenumber" name="L150" href="#L150">150</a> 
<a class="jxr_linenumber" name="L151" href="#L151">151</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> unblock() {
<a class="jxr_linenumber" name="L152" href="#L152">152</a>         <strong class="jxr_keyword">synchronized</strong> (lock) {
<a class="jxr_linenumber" name="L153" href="#L153">153</a>             <strong class="jxr_keyword">if</strong> (waiters &gt; 0) {
<a class="jxr_linenumber" name="L154" href="#L154">154</a>                 lock.notifyAll();
<a class="jxr_linenumber" name="L155" href="#L155">155</a>             }
<a class="jxr_linenumber" name="L156" href="#L156">156</a>         }
<a class="jxr_linenumber" name="L157" href="#L157">157</a>     }
<a class="jxr_linenumber" name="L158" href="#L158">158</a> }
</pre>
<hr/>
<div id="footer">Copyright &#169; 2004&#x2013;2014 <a href="http://mina.apache.org/">Apache MINA Project</a>. All rights reserved.</div>
</body>
</html>
