Home | History | Annotate | Download | only in nio
      1 //
      2 //  ========================================================================
      3 //  Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd.
      4 //  ------------------------------------------------------------------------
      5 //  All rights reserved. This program and the accompanying materials
      6 //  are made available under the terms of the Eclipse Public License v1.0
      7 //  and Apache License v2.0 which accompanies this distribution.
      8 //
      9 //      The Eclipse Public License is available at
     10 //      http://www.eclipse.org/legal/epl-v10.html
     11 //
     12 //      The Apache License v2.0 is available at
     13 //      http://www.opensource.org/licenses/apache2.0.php
     14 //
     15 //  You may elect to redistribute this code under either of these licenses.
     16 //  ========================================================================
     17 //
     18 
     19 /**
     20  *
     21  */
     22 package org.eclipse.jetty.server.nio;
     23 
     24 import org.eclipse.jetty.io.Buffers.Type;
     25 import org.eclipse.jetty.server.AbstractConnector;
     26 
     27 public abstract class AbstractNIOConnector extends AbstractConnector implements NIOConnector
     28 {
     29     public AbstractNIOConnector()
     30     {
     31         _buffers.setRequestBufferType(Type.DIRECT);
     32         _buffers.setRequestHeaderType(Type.INDIRECT);
     33         _buffers.setResponseBufferType(Type.DIRECT);
     34         _buffers.setResponseHeaderType(Type.INDIRECT);
     35     }
     36 
     37     /* ------------------------------------------------------------------------------- */
     38     public boolean getUseDirectBuffers()
     39     {
     40         return getRequestBufferType()==Type.DIRECT;
     41     }
     42 
     43     /* ------------------------------------------------------------------------------- */
     44     /**
     45      * @param direct If True (the default), the connector can use NIO direct buffers.
     46      * Some JVMs have memory management issues (bugs) with direct buffers.
     47      */
     48     public void setUseDirectBuffers(boolean direct)
     49     {
     50         _buffers.setRequestBufferType(direct?Type.DIRECT:Type.INDIRECT);
     51         _buffers.setResponseBufferType(direct?Type.DIRECT:Type.INDIRECT);
     52     }
     53 }
     54