Restlet Framework 2.2.3
Java Enterprise Edition

org.restlet.engine.connector
Class NetServerHelper

java.lang.Object
  extended by org.restlet.engine.Helper
      extended by org.restlet.engine.RestletHelper<T>
          extended by org.restlet.engine.connector.ConnectorHelper<Server>
              extended by org.restlet.engine.connector.ServerHelper
                  extended by org.restlet.engine.adapter.HttpServerHelper
                      extended by org.restlet.engine.connector.NetServerHelper
Direct Known Subclasses:
HttpServerHelper, HttpsServerHelper

public abstract class NetServerHelper
extends HttpServerHelper

Abstract Internal web server connector based on com.sun.net.httpserver package. Here is the list of parameters that are supported. They should be set in the Server's context before it is started:

Parameter name Value type Default value Description
minThreads int 1 Minimum number of worker threads waiting to service calls, even if they are idle. Technically speaking, this is a core number of threads that are pre-started.
maxThreads int 10 Maximum number of worker threads that can service calls. If this number is reached then additional calls are queued if the "maxQueued" value hasn't been reached.
maxQueued int 0 Maximum number of calls that can be queued if there aren't any worker thread available to service them. If the value is '0', then no queue is used and calls are rejected if no worker thread is immediately available. If the value is '-1', then an unbounded queue is used and calls are never rejected.

Note: make sure that this value is consistent with getMinThreads() and the behavior of the ThreadPoolExecutor configured internally.
maxThreadIdleTimeMs int 300 000 Time for an idle thread to wait for an operation before being collected.

Author:
Jerome Louvel

Constructor Summary
NetServerHelper(Server server)
          Constructor.
 
Method Summary
protected  ThreadPoolExecutor createThreadPool()
          Creates the handler service.
protected  InetSocketAddress getAddress()
          Returns the socket address this server is listening to.
 int getMaxQueued()
          Returns the maximum number of calls that can be queued if there aren't any worker thread available to service them.
 int getMaxThreadIdleTimeMs()
          Returns the time for an idle thread to wait for an operation before being collected.
 int getMaxThreads()
          Returns the maximum threads that will service requests.
 int getMinThreads()
          Returns the minimum threads waiting to service requests.
 boolean isConfidential()
          Indicates if this service is acting in HTTP or HTTPS mode.
protected  void setAddress(InetSocketAddress address)
          Sets the socket address this server is listening to.
protected  void setConfidential(boolean confidential)
          Indicates if this service is acting in HTTP or HTTPS mode.
 void start()
          Start callback.
 void stop()
          Stop callback.
 
Methods inherited from class org.restlet.engine.adapter.HttpServerHelper
getAdapter, handle, setAdapter
 
Methods inherited from class org.restlet.engine.connector.ServerHelper
handle, setEphemeralPort, setEphemeralPort
 
Methods inherited from class org.restlet.engine.connector.ConnectorHelper
getConnectorService, getContext, getProtocols, update
 
Methods inherited from class org.restlet.engine.RestletHelper
getAttributes, getHelped, getHelpedParameters, getLogger, getMetadataService, setHelped
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NetServerHelper

public NetServerHelper(Server server)
Constructor.

Parameters:
server - The server to help.
Method Detail

createThreadPool

protected ThreadPoolExecutor createThreadPool()
Creates the handler service.

Returns:
The handler service.

getAddress

protected InetSocketAddress getAddress()
Returns the socket address this server is listening to.

Returns:
The socket address this server is listening to.

getMaxQueued

public int getMaxQueued()
Returns the maximum number of calls that can be queued if there aren't any worker thread available to service them. If the value is '0', then no queue is used and calls are rejected if no worker thread is immediately available. If the value is '-1', then an unbounded queue is used and calls are never rejected.

Note: make sure that this value is consistent with getMinThreads() and the behavior of the ThreadPoolExecutor configured internally.

Returns:
The maximum number of calls that can be queued.

getMaxThreadIdleTimeMs

public int getMaxThreadIdleTimeMs()
Returns the time for an idle thread to wait for an operation before being collected.

Returns:
The time for an idle thread to wait for an operation before being collected.

getMaxThreads

public int getMaxThreads()
Returns the maximum threads that will service requests.

Returns:
The maximum threads that will service requests.

getMinThreads

public int getMinThreads()
Returns the minimum threads waiting to service requests. Technically speaking, this is a core number of threads that are pre-started.

Returns:
The minimum threads waiting to service requests.

isConfidential

public boolean isConfidential()
Indicates if this service is acting in HTTP or HTTPS mode.

Returns:
True if this service is acting in HTTP or HTTPS mode.

setAddress

protected void setAddress(InetSocketAddress address)
Sets the socket address this server is listening to.

Parameters:
address - The socket address this server is listening to.

setConfidential

protected void setConfidential(boolean confidential)
Indicates if this service is acting in HTTP or HTTPS mode.

Parameters:
confidential - True if this service is acting in HTTP or HTTPS mode.

start

public void start()
           throws Exception
Description copied from class: RestletHelper
Start callback.

Overrides:
start in class ConnectorHelper<Server>
Throws:
Exception

stop

public void stop()
          throws Exception
Description copied from class: RestletHelper
Stop callback.

Overrides:
stop in class ServerHelper
Throws:
Exception

Restlet Framework 2.2.3
Java Enterprise Edition

Copyright © 2005-2014 Restlet.