org.apache.jk.core

Class JkHandler

Implemented Interfaces:
MBeanRegistration, NotificationListener
Known Direct Subclasses:
AprImpl, ChannelShm, ChannelSocket, HandlerDispatch, HandlerRequest, JkCoyoteHandler, JkMX, JniHandler, ModJkMX, WorkerDummy

public class JkHandler
extends java.lang.Object
implements MBeanRegistration, NotificationListener

Author:
Costin Manolache

Field Summary

static int
ERROR
static int
HANDLE_FLUSH
static int
HANDLE_RECEIVE_PACKET
static int
HANDLE_SEND_PACKET
static int
HANDLE_THREAD_END
static int
LAST
static int
OK
protected String
domain
protected int
id
protected MBeanServer
mserver
protected String
name
protected JkHandler
next
protected String
nextName
protected ObjectName
oname
protected Properties
properties
protected WorkerEnv
wEnv

Method Summary

void
addHandlerCallback(JkHandler w)
Experimental, will be replaced.
MsgContext
createMsgContext()
void
destroy()
Clean up and stop the handler
String
getDomain()
int
getId()
String
getName()
String
getNext()
ObjectName
getObjectName()
String
getProperty(String name)
void
handleNotification(Notification notification, Object handback)
void
init()
Should register the request types it can handle, same style as apache2.
int
invoke(Msg msg, MsgContext mc)
void
pause()
void
postDeregister()
void
postRegister(Boolean registrationDone)
void
preDeregister()
ObjectName
preRegister(MBeanServer server, ObjectName oname)
void
resume()
void
setId(int id)
Set the id of the worker.
void
setName(String s)
Set the name of the handler.
void
setNext(String s)
void
setNext(JkHandler h)
Catalina-style "recursive" invocation.
void
setProperty(String name, String value)
void
setWorkerEnv(WorkerEnv we)

Field Details

ERROR

public static final int ERROR

Field Value:
2


HANDLE_FLUSH

public static final int HANDLE_FLUSH

Field Value:
12


HANDLE_RECEIVE_PACKET

public static final int HANDLE_RECEIVE_PACKET

Field Value:
10


HANDLE_SEND_PACKET

public static final int HANDLE_SEND_PACKET

Field Value:
11


HANDLE_THREAD_END

public static final int HANDLE_THREAD_END

Field Value:
13


LAST

public static final int LAST

Field Value:
1


OK

public static final int OK

Field Value:
0


domain

protected String domain


id

protected int id


mserver

protected MBeanServer mserver


name

protected String name


next

protected JkHandler next


nextName

protected String nextName


oname

protected ObjectName oname


properties

protected Properties properties


wEnv

protected WorkerEnv wEnv

Method Details

addHandlerCallback

public void addHandlerCallback(JkHandler w)
Experimental, will be replaced. This allows handlers to be notified when other handlers are added.


createMsgContext

public MsgContext createMsgContext()


destroy

public void destroy()
            throws IOException
Clean up and stop the handler


getDomain

public String getDomain()


getId

public int getId()


getName

public String getName()


getNext

public String getNext()


getObjectName

public ObjectName getObjectName()


getProperty

public String getProperty(String name)


handleNotification

public void handleNotification(Notification notification,
                               Object handback)


init

public void init()
            throws IOException
Should register the request types it can handle, same style as apache2.


invoke

public int invoke(Msg msg,
                  MsgContext mc)
            throws IOException


pause

public void pause()
            throws Exception


postDeregister

public void postDeregister()


postRegister

public void postRegister(Boolean registrationDone)


preDeregister

public void preDeregister()
            throws Exception


preRegister

public ObjectName preRegister(MBeanServer server,
                              ObjectName oname)
            throws Exception


resume

public void resume()
            throws Exception


setId

public void setId(int id)
Set the id of the worker. We use an id for faster dispatch. Since we expect a decent number of handler in system, the id is unique - that means we may have to allocate bigger dispatch tables. ( easy to fix if needed )


setName

public void setName(String s)
Set the name of the handler. Will allways be called by worker env after creating the worker.


setNext

public void setNext(String s)


setNext

public void setNext(JkHandler h)
Catalina-style "recursive" invocation. A chain is used for Apache/3.3 style iterative invocation.


setProperty

public void setProperty(String name,
                        String value)


setWorkerEnv

public void setWorkerEnv(WorkerEnv we)


Copyright B) 2000-2003 Apache Software Foundation. All Rights Reserved.