1 // ======================================================================== 2 // Copyright (c) 2004-2009 Mort Bay Consulting Pty. Ltd. 3 // ------------------------------------------------------------------------ 4 // All rights reserved. This program and the accompanying materials 5 // are made available under the terms of the Eclipse Public License v1.0 6 // and Apache License v2.0 which accompanies this distribution. 7 // The Eclipse Public License is available at 8 // http://www.eclipse.org/legal/epl-v10.html 9 // The Apache License v2.0 is available at 10 // http://www.opensource.org/licenses/apache2.0.php 11 // You may elect to redistribute this code under either of these licenses. 12 // ======================================================================== 13 14 package org.eclipse.jetty.io; 15 16 public interface AsyncEndPoint extends EndPoint 17 { 18 /* ------------------------------------------------------------ */ 19 /** 20 * Dispatch the endpoint to a thread to attend to it. 21 * 22 */ 23 public void dispatch(); 24 25 /** 26 * @return true if this endpoint can accept a dispatch. False if the 27 * endpoint cannot accept a dispatched (eg is suspended or already dispatched) 28 */ 29 public boolean isReadyForDispatch(); 30 31 /* ------------------------------------------------------------ */ 32 /** Schedule a write dispatch. 33 * Set the endpoint to not be writable and schedule a dispatch when 34 * it becomes writable. 35 */ 36 public void scheduleWrite(); 37 38 /* ------------------------------------------------------------ */ 39 /** Schedule a call to the idle timeout 40 */ 41 public void scheduleIdle(); 42 43 /* ------------------------------------------------------------ */ 44 /** Cancel a call to the idle timeout 45 */ 46 public void cancelIdle(); 47 48 }