|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.lang.Thread | +--JSPservletPkg.ICPhandler
Multicast support through ICP-like messages.
Copyright (c) 2000-2001
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
JSPhandler.ClassEntry
Inner Class Summary | |
(package private) class |
ICPhandler.DisklessCltHandler
Class handling diskless IDs. |
(package private) class |
ICPhandler.IcpHeader
ICP header. |
(package private) class |
ICPhandler.Log
Class wraping diskless logging. |
(package private) class |
ICPhandler.LogPrivilegedAction
Wraps a log. |
Field Summary | |
(package private) ICPhandler.DisklessCltHandler |
dch
Object handling diskless IDs. |
private java.net.DatagramSocket |
ds
UDP point to point socket |
private java.net.InetAddress |
group
Multicast group or point to point interface. |
private JSPhandler |
handler
Invoking JSPhandler. |
(package private) static byte |
ICP_OP_ARCHIVE_STATUS
PageBox archive RESP. |
(package private) static byte |
ICP_OP_ARCHIVE_UPDATE
PageBox update request issued by client. |
(package private) static byte |
ICP_OP_DECHO
Similar to ICP_OP_QUERY, but for use in simulating a query to a cache which does not use ICP. |
(package private) static byte |
ICP_OP_DENIED
An ICP_OP_DENIED response indicates that the querying site is not allowed to retrieve the named object from this cache. |
(package private) static byte |
ICP_OP_ERR
An ICP_OP_ERR response indicates some kind of error in parsing or handling the query message (e.g. |
(package private) static byte |
ICP_OP_FIN
PageBox termination message. |
(package private) static byte |
ICP_OP_HIT
An ICP_OP_HIT response indicates that the requested URL exists in this cache and that the requester is allowed to retrieve it. |
(package private) static byte |
ICP_OP_HIT_OBJ
Just like an ICP_OP_HIT response, but the actual object data has been included in this reply message. |
(package private) static byte |
ICP_OP_INI
PageBox initialization message issued by client. |
(package private) static byte |
ICP_OP_INVALID
A place holder to detect zero-filled or malformed messages. |
(package private) static byte |
ICP_OP_LOG
PageBox log message. |
(package private) static byte |
ICP_OP_MISS
An ICP_OP_MISS response indicates that the requested URL does not exist in this cache. |
(package private) static byte |
ICP_OP_MISS_NOFETCH
An ICP_OP_MISS_NOFETCH response indicates that this cache is up, but is in a state where it does not want to handle cache misses. |
(package private) static byte |
ICP_OP_QUERY
A query message. |
(package private) static byte |
ICP_OP_SECHO
Similar to ICP_OP_QUERY, but for use in simulating a query to an origin server. |
(package private) static byte |
ICP_OP_STAT_QUERY
PageBox stats query issued by client. |
(package private) static byte |
ICP_OP_STAT_STATUS
PageBox stats response issued by server. |
(package private) static byte |
ICP_OP_STAT_UPDATE
PageBox update request issued by client. |
private java.util.HashMap |
logs
Map of diskless logs. |
(package private) static int |
maxMsgSize
Maximum size of the ICP messages ICPhandler processes. |
private java.net.MulticastSocket |
mcs
Multicast socket. |
private byte[] |
myAddress
AS host address. |
(package private) static int |
nextreq
req number. |
(package private) java.net.InetAddress[] |
remAddrs
|
(package private) java.util.HashMap |
stats
Map of found archive stats on diskless client side. |
private boolean |
toContinue
Loop while true. |
Fields inherited from class java.lang.Thread |
contextClassLoader,
daemon,
eetop,
group,
inheritedAccessControlContext,
MAX_PRIORITY,
MIN_PRIORITY,
name,
NORM_PRIORITY,
priority,
single_step,
stillborn,
stopThreadPermission,
target,
threadInitNumber,
threadQ,
values |
Constructor Summary | |
(package private) |
ICPhandler(JSPhandler jh)
Constructor. |
Method Summary | |
(package private) void |
close()
Termination: Terminates the thread Close log files Clear logs |
private void |
disklessClientCheck()
Handles multicast messages targeting client. |
void |
disklessClientInit()
On client side - not use handler.log. |
private void |
disklessServerCheck()
Handle multicast messages targeting server. |
(package private) static void |
dump(byte[] buf,
int length)
|
private void |
endLoop()
Stop the loop. Set toContinue at false to ask thread termination. |
protected void |
finalize()
to avoid loitering |
(package private) ICPhandler.Log |
getLog(java.lang.String ID)
Log retrieve method. |
(package private) void |
log(java.lang.String msg)
Log method - used by diskless client. |
void |
run()
Loops to read multicast messages. |
(package private) void |
statUpdate(java.lang.String jarName,
java.util.Properties prop)
Stat update method - used by diskless client. |
private boolean |
toBeContinued()
Check if loop must be continued. |
(package private) static int |
toInt(byte b)
Converts a byte in positive integer. |
(package private) void |
update()
Update method - used by diskless client. |
Methods inherited from class java.lang.Thread |
|
Methods inherited from class java.lang.Object |
clone,
equals,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
Field Detail |
static final int maxMsgSize
static final byte ICP_OP_INVALID
static final byte ICP_OP_QUERY
static final byte ICP_OP_HIT
static final byte ICP_OP_MISS
static final byte ICP_OP_ERR
static final byte ICP_OP_INI
static final byte ICP_OP_ARCHIVE_STATUS
static final byte ICP_OP_STAT_QUERY
static final byte ICP_OP_LOG
static final byte ICP_OP_FIN
static final byte ICP_OP_SECHO
static final byte ICP_OP_DECHO
static final byte ICP_OP_STAT_STATUS
static final byte ICP_OP_ARCHIVE_UPDATE
static final byte ICP_OP_STAT_UPDATE
static final byte ICP_OP_MISS_NOFETCH
static final byte ICP_OP_DENIED
static final byte ICP_OP_HIT_OBJ
static int nextreq
private java.net.MulticastSocket mcs
private java.net.InetAddress group
private java.net.DatagramSocket ds
private byte[] myAddress
private JSPhandler handler
private boolean toContinue
java.net.InetAddress[] remAddrs
java.util.HashMap stats
ICPhandler.DisklessCltHandler dch
private java.util.HashMap logs
Constructor Detail |
ICPhandler(JSPhandler jh) throws org.osgi.framework.BundleException
jh
- calling JSPhandler.Method Detail |
private boolean toBeContinued()
static final int toInt(byte b)
b
- byte to convert.static void dump(byte[] buf, int length)
private void endLoop()
public void disklessClientInit() throws org.osgi.framework.BundleException
Suppose two server answer whose one was stopped during last client session. Client must give a chance to all up servers - though it doesn't know how many are up and select the most up to date answer.
public void run()
private void disklessClientCheck()
ICPhandler.Log getLog(java.lang.String ID)
ID
- logs key.private void disklessServerCheck()
void log(java.lang.String msg)
msg
- message to log.void update()
void statUpdate(java.lang.String jarName, java.util.Properties prop)
jarName
- archive whose stats will be recorded.prop
- stats to record.void close()
protected void finalize()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |