org.jboss.web
Class WebService

java.lang.Object
  extended byorg.jboss.mx.util.JBossNotificationBroadcasterSupport
      extended byorg.jboss.system.ServiceMBeanSupport
          extended byorg.jboss.web.WebService
All Implemented Interfaces:
javax.management.MBeanRegistration, javax.management.NotificationBroadcaster, javax.management.NotificationEmitter, org.jboss.system.Service, org.jboss.system.ServiceMBean, WebServiceMBean

public class WebService
extends org.jboss.system.ServiceMBeanSupport
implements WebServiceMBean

The WebService implementation. It configures a WebServer instance to perform dynamic class and resource loading.

Version:
$Revision: 1.15.2.4 $
Author:
Rickard �berg., Scott Stark., Jason Dillon

Field Summary
 
Fields inherited from class org.jboss.system.ServiceMBeanSupport
log, SERVICE_CONTROLLER_SIG, serviceName
 
Fields inherited from interface org.jboss.web.WebServiceMBean
OBJECT_NAME
 
Fields inherited from interface org.jboss.system.ServiceMBean
CREATE_EVENT, CREATED, DESTROY_EVENT, DESTROYED, FAILED, REGISTERED, START_EVENT, STARTED, STARTING, states, STOP_EVENT, STOPPED, STOPPING, UNREGISTERED
 
Constructor Summary
WebService()
           
 
Method Summary
 URL addClassLoader(ClassLoader cl)
           
protected  void createService()
           
 int getBacklog()
          Get the WebService listen queue backlog limit.
 String getBindAddress()
          Get the specific address the WebService listens on.
 boolean getDownloadServerClasses()
          A flag indicating if the server should attempt to download classes from thread context class loader when a request arrives that does not have a class loader key prefix.
 String getHost()
          Set the name of the interface to use for the host portion of the RMI codebase URL.
protected  javax.management.ObjectName getObjectName(javax.management.MBeanServer server, javax.management.ObjectName name)
           
 int getPort()
          Get the WebService listening port.
 void removeClassLoader(ClassLoader cl)
           
 void setBacklog(int backlog)
          Set the WebService listen queue backlog limit.
 void setBindAddress(String host)
          Set the specific address the WebService listens on.
 void setDownloadServerClasses(boolean flag)
           
 void setHost(String hostname)
          Get the name of the interface to use for the host portion of the RMI codebase URL.
 void setPort(int port)
          Set the WebService listening port.
 void setThreadPool(org.jboss.util.threadpool.BasicThreadPoolMBean threadPool)
          Set the thread pool used for the WebServer class loading.
protected  void startService()
          Start the web server for dynamic downloading of classes and resources.
protected  void stopService()
           
 
Methods inherited from class org.jboss.system.ServiceMBeanSupport
create, destroy, destroyService, getLog, getName, getNextNotificationSequenceNumber, getServer, getServiceName, getState, getStateString, jbossInternalCreate, jbossInternalDescription, jbossInternalDestroy, jbossInternalLifecycle, jbossInternalStart, jbossInternalStop, postDeregister, postRegister, preDeregister, preRegister, start, stop
 
Methods inherited from class org.jboss.mx.util.JBossNotificationBroadcasterSupport
addNotificationListener, getNotificationInfo, handleNotification, removeNotificationListener, removeNotificationListener, sendNotification
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jboss.system.ServiceMBean
getName, getState, getStateString, jbossInternalLifecycle
 
Methods inherited from interface org.jboss.system.Service
create, destroy, start, stop
 

Constructor Detail

WebService

public WebService()
Method Detail

addClassLoader

public URL addClassLoader(ClassLoader cl)
Specified by:
addClassLoader in interface WebServiceMBean

removeClassLoader

public void removeClassLoader(ClassLoader cl)
Specified by:
removeClassLoader in interface WebServiceMBean

setPort

public void setPort(int port)
Set the WebService listening port.

Specified by:
setPort in interface WebServiceMBean
Parameters:
port - The listening port; 0 for anonymous

getPort

public int getPort()
Get the WebService listening port.

Specified by:
getPort in interface WebServiceMBean

setHost

public void setHost(String hostname)
Get the name of the interface to use for the host portion of the RMI codebase URL.

Specified by:
setHost in interface WebServiceMBean

getHost

public String getHost()
Set the name of the interface to use for the host portion of the RMI codebase URL.

Specified by:
getHost in interface WebServiceMBean

getBindAddress

public String getBindAddress()
Get the specific address the WebService listens on.

Specified by:
getBindAddress in interface WebServiceMBean
Returns:
the interface name or IP address the WebService binds to.

setBindAddress

public void setBindAddress(String host)
                    throws UnknownHostException
Set the specific address the WebService listens on. This can be used on a multi-homed host for a ServerSocket that will only accept connect requests to one of its addresses.

Specified by:
setBindAddress in interface WebServiceMBean
Parameters:
host - the interface name or IP address to bind. If host is null, connections on any/all local addresses will be allowed.
Throws:
UnknownHostException

getBacklog

public int getBacklog()
Get the WebService listen queue backlog limit. The maximum queue length for incoming connection indications (a request to connect) is set to the backlog parameter. If a connection indication arrives when the queue is full, the connection is refused.

Specified by:
getBacklog in interface WebServiceMBean
Returns:
the queue backlog limit.

setBacklog

public void setBacklog(int backlog)
Set the WebService listen queue backlog limit. The maximum queue length for incoming connection indications (a request to connect) is set to the backlog parameter. If a connection indication arrives when the queue is full, the connection is refused.

Specified by:
setBacklog in interface WebServiceMBean

setThreadPool

public void setThreadPool(org.jboss.util.threadpool.BasicThreadPoolMBean threadPool)
Set the thread pool used for the WebServer class loading.

Specified by:
setThreadPool in interface WebServiceMBean

getDownloadServerClasses

public boolean getDownloadServerClasses()
A flag indicating if the server should attempt to download classes from thread context class loader when a request arrives that does not have a class loader key prefix.

Specified by:
getDownloadServerClasses in interface WebServiceMBean

setDownloadServerClasses

public void setDownloadServerClasses(boolean flag)
Specified by:
setDownloadServerClasses in interface WebServiceMBean

getObjectName

protected javax.management.ObjectName getObjectName(javax.management.MBeanServer server,
                                                    javax.management.ObjectName name)
                                             throws javax.management.MalformedObjectNameException
Throws:
javax.management.MalformedObjectNameException

createService

protected void createService()
                      throws Exception
Throws:
Exception

startService

protected void startService()
                     throws Exception
Start the web server for dynamic downloading of classes and resources.

The system java.rmi.server.codebase is also set to http://:/ if the property has not been set.

Throws:
Exception

stopService

protected void stopService()
                    throws Exception
Throws:
Exception


Copyright © 2002 JBoss Group, LLC. All Rights Reserved.