📄 defaultiofilterchain.html
字号:
<a name="507" href="#507">507</a> }<a name="508" href="#508">508</a> <a name="509" href="#509">509</a> <strong class="jxr_keyword">return</strong> list;<a name="510" href="#510">510</a> }<a name="511" href="#511">511</a> <a name="512" href="#512">512</a> <strong class="jxr_keyword">public</strong> List<Entry> getAllReversed() {<a name="513" href="#513">513</a> List<Entry> list = <strong class="jxr_keyword">new</strong> ArrayList<Entry>();<a name="514" href="#514">514</a> <a href="../../../../org/apache/mina/common/DefaultIoFilterChain.html">EntryImpl</a> e = tail.prevEntry;<a name="515" href="#515">515</a> <strong class="jxr_keyword">while</strong> (e != head) {<a name="516" href="#516">516</a> list.add(e);<a name="517" href="#517">517</a> e = e.prevEntry;<a name="518" href="#518">518</a> }<a name="519" href="#519">519</a> <strong class="jxr_keyword">return</strong> list;<a name="520" href="#520">520</a> }<a name="521" href="#521">521</a> <a name="522" href="#522">522</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> contains(String name) {<a name="523" href="#523">523</a> <strong class="jxr_keyword">return</strong> getEntry(name) != <strong class="jxr_keyword">null</strong>;<a name="524" href="#524">524</a> }<a name="525" href="#525">525</a> <a name="526" href="#526">526</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> contains(<a href="../../../../org/apache/mina/common/IoFilter.html">IoFilter</a> filter) {<a name="527" href="#527">527</a> <strong class="jxr_keyword">return</strong> getEntry(filter) != <strong class="jxr_keyword">null</strong>;<a name="528" href="#528">528</a> }<a name="529" href="#529">529</a> <a name="530" href="#530">530</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> contains(Class<? <strong class="jxr_keyword">extends</strong> IoFilter> filterType) {<a name="531" href="#531">531</a> <strong class="jxr_keyword">return</strong> getEntry(filterType) != <strong class="jxr_keyword">null</strong>;<a name="532" href="#532">532</a> }<a name="533" href="#533">533</a> <a name="534" href="#534">534</a> @Override<a name="535" href="#535">535</a> <strong class="jxr_keyword">public</strong> String toString() {<a name="536" href="#536">536</a> StringBuffer buf = <strong class="jxr_keyword">new</strong> StringBuffer();<a name="537" href="#537">537</a> buf.append(<span class="jxr_string">"{ "</span>);<a name="538" href="#538">538</a> <a name="539" href="#539">539</a> <strong class="jxr_keyword">boolean</strong> empty = <strong class="jxr_keyword">true</strong>;<a name="540" href="#540">540</a> <a name="541" href="#541">541</a> <a href="../../../../org/apache/mina/common/DefaultIoFilterChain.html">EntryImpl</a> e = head.nextEntry;<a name="542" href="#542">542</a> <strong class="jxr_keyword">while</strong> (e != tail) {<a name="543" href="#543">543</a> <strong class="jxr_keyword">if</strong> (!empty) {<a name="544" href="#544">544</a> buf.append(<span class="jxr_string">", "</span>);<a name="545" href="#545">545</a> } <strong class="jxr_keyword">else</strong> {<a name="546" href="#546">546</a> empty = false;<a name="547" href="#547">547</a> }<a name="548" href="#548">548</a> <a name="549" href="#549">549</a> buf.append('(');<a name="550" href="#550">550</a> buf.append(e.getName());<a name="551" href="#551">551</a> buf.append(':');<a name="552" href="#552">552</a> buf.append(e.getFilter());<a name="553" href="#553">553</a> buf.append(')');<a name="554" href="#554">554</a> <a name="555" href="#555">555</a> e = e.nextEntry;<a name="556" href="#556">556</a> }<a name="557" href="#557">557</a> <a name="558" href="#558">558</a> <strong class="jxr_keyword">if</strong> (empty) {<a name="559" href="#559">559</a> buf.append(<span class="jxr_string">"empty"</span>);<a name="560" href="#560">560</a> }<a name="561" href="#561">561</a> <a name="562" href="#562">562</a> buf.append(<span class="jxr_string">" }"</span>);<a name="563" href="#563">563</a> <a name="564" href="#564">564</a> <strong class="jxr_keyword">return</strong> buf.toString();<a name="565" href="#565">565</a> }<a name="566" href="#566">566</a> <a name="567" href="#567">567</a> @Override<a name="568" href="#568">568</a> <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> finalize() <strong class="jxr_keyword">throws</strong> Throwable {<a name="569" href="#569">569</a> <strong class="jxr_keyword">try</strong> {<a name="570" href="#570">570</a> <strong class="jxr_keyword">this</strong>.clear();<a name="571" href="#571">571</a> } <strong class="jxr_keyword">finally</strong> {<a name="572" href="#572">572</a> <strong class="jxr_keyword">super</strong>.finalize();<a name="573" href="#573">573</a> }<a name="574" href="#574">574</a> }<a name="575" href="#575">575</a> <a name="576" href="#576">576</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/mina/common/DefaultIoFilterChain.html">HeadFilter</a> <strong class="jxr_keyword">extends</strong> <a href="../../../../org/apache/mina/common/IoFilterAdapter.html">IoFilterAdapter</a> {<a name="577" href="#577">577</a> @Override<a name="578" href="#578">578</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> sessionCreated(<a href="../../../../org/apache/mina/common/IoFilter.html">NextFilter</a> nextFilter, <a href="../../../../org/apache/mina/common/IoSession.html">IoSession</a> session) {<a name="579" href="#579">579</a> nextFilter.sessionCreated(session);<a name="580" href="#580">580</a> }<a name="581" href="#581">581</a> <a name="582" href="#582">582</a> @Override<a name="583" href="#583">583</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> sessionOpened(<a href="../../../../org/apache/mina/common/IoFilter.html">NextFilter</a> nextFilter, <a href="../../../../org/apache/mina/common/IoSession.html">IoSession</a> session) {<a name="584" href="#584">584</a> nextFilter.sessionOpened(session);<a name="585" href="#585">585</a> }<a name="586" href="#586">586</a> <a name="587" href="#587">587</a> @Override<a name="588" href="#588">588</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> sessionClosed(<a href="../../../../org/apache/mina/common/IoFilter.html">NextFilter</a> nextFilter, <a href="../../../../org/apache/mina/common/IoSession.html">IoSession</a> session) {<a name="589" href="#589">589</a> nextFilter.sessionClosed(session);<a name="590" href="#590">590</a> }<a name="591" href="#591">591</a> <a name="592" href="#592">592</a> @Override<a name="593" href="#593">593</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> sessionIdle(<a href="../../../../org/apache/mina/common/IoFilter.html">NextFilter</a> nextFilter, <a href="../../../../org/apache/mina/common/IoSession.html">IoSession</a> session,<a name="594" href="#594">594</a> <a href="../../../../org/apache/mina/common/IdleStatus.html">IdleStatus</a> status) {<a name="595" href="#595">595</a> nextFilter.sessionIdle(session, status);<a name="596" href="#596">596</a> }<a name="597" href="#597">597</a> <a name="598" href="#598">598</a> @Override<a name="599" href="#599">599</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> exceptionCaught(<a href="../../../../org/apache/mina/common/IoFilter.html">NextFilter</a> nextFilter, <a href="../../../../org/apache/mina/common/IoSession.html">IoSession</a> session,<a name="600" href="#600">600</a> Throwable cause) {<a name="601" href="#601">601</a> nextFilter.exceptionCaught(session, cause);<a name="602" href="#602">602</a> }<a name="603" href="#603">603</a> <a name="604" href="#604">604</a> @Override<a name="605" href="#605">605</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> messageReceived(<a href="../../../../org/apache/mina/common/IoFilter.html">NextFilter</a> nextFilter, <a href="../../../../org/apache/mina/common/IoSession.html">IoSession</a> session,<a name="606" href="#606">606</a> Object message) {<a name="607" href="#607">607</a> nextFilter.messageReceived(session, message);<a name="608" href="#608">608</a> }<a name="609" href="#609">609</a> <a name="610" href="#610">610</a> @Override<a name="611" href="#611">611</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> messageSent(<a href="../../../../org/apache/mina/common/IoFilter.html">NextFilter</a> nextFilter, <a href="../../../../org/apache/mina/common/IoSession.html">IoSession</a> session,<a name="612" href="#612">612</a> <a href="../../../../org/apache/mina/common/WriteRequest.html">WriteRequest</a> writeRequest) {<a name="613" href="#613">613</a> nextFilter.messageSent(session, writeRequest);<a name="614" href="#614">614</a> }<a name="615" href="#615">615</a> <a name="616" href="#616">616</a> @SuppressWarnings(<span class="jxr_string">"unchecked"</span>)<a name="617" href="#617">617</a> @Override<a name="618" href="#618">618</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> filterWrite(<a href="../../../../org/apache/mina/common/IoFilter.html">NextFilter</a> nextFilter, <a href="../../../../org/apache/mina/common/IoSession.html">IoSession</a> session,<a name="619" href="#619">619</a> <a href="../../../../org/apache/mina/common/WriteRequest.html">WriteRequest</a> writeRequest) <strong class="jxr_keyword">throws</strong> Exception {<a name="620" href="#620">620</a> <a name="621" href="#621">621</a> <a href="../../../../org/apache/mina/common/AbstractIoSession.html">AbstractIoSession</a> s = (AbstractIoSession) session;<a name="622" href="#622">622</a> <a name="623" href="#623">623</a> <em class="jxr_comment">// Maintain counters.</em><a name="624" href="#624">624</a> <strong class="jxr_keyword">if</strong> (writeRequest.getMessage() instanceof IoBuffer) {<a name="625" href="#625">625</a> <a href="../../../../org/apache/mina/common/IoBuffer.html">IoBuffer</a> buffer = (IoBuffer) writeRequest.getMessage();<a name="626" href="#626">626</a> <em class="jxr_comment">// I/O processor implementation will call buffer.reset()</em><a name="627" href="#627">627</a> <em class="jxr_comment">// it after the write operation is finished, because</em><a name="628" href="#628">628</a> <em class="jxr_comment">// the buffer will be specified with messageSent event.</em><a name="629" href="#629">629</a> buffer.mark();<a name="630" href="#630">630</a> <strong class="jxr_keyword">int</strong> remaining = buffer.remaining();<a name="631" href="#631">631</a> <strong class="jxr_keyword">if</strong> (remaining == 0) {<a name="632" href="#632">632</a> <em class="jxr_comment">// Zero-sized buffer means the internal message</em><a name="633" href="#633">633</a> <em class="jxr_comment">// delimiter.</em><a name="634"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -