|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.util.Observable
org.vrspace.server.Session
A Session is constructed and started when a client connects to the server.
If client authenticates passes, session calls Dispatcher.login()
Should it be a OwnedDBObject? Could we store session state then?
Dispatcher
Nested Class Summary | |
class |
Session.Status
Session status info |
Field Summary | |
protected boolean |
active
|
protected boolean |
cacheRequests
|
protected Client |
client
|
protected boolean |
daemon
|
protected int |
debugLevel
|
protected Dispatcher |
dispatcher
|
protected long |
lastTime
|
protected java.lang.String |
lf
|
boolean |
preserveSocket
|
protected long |
receivedChars
|
protected long |
receivedRequests
|
protected boolean |
relogin
|
static java.lang.String |
RESPONSE_ERR
|
static java.lang.String |
RESPONSE_NONE
|
static java.lang.String |
RESPONSE_OK
|
protected long |
sentChars
|
protected long |
sentRequests
|
protected Server |
server
|
protected java.net.Socket |
socket
|
protected long |
startTime
|
protected long |
stopTime
|
static char |
TERMINATOR
|
protected java.io.PrintWriter |
writer
|
Constructor Summary | |
protected |
Session()
|
|
Session(Server server,
java.net.Socket s,
Dispatcher d)
Constructor, called by Server |
Method Summary | |
protected void |
close()
Session cleanup. |
protected void |
debug(int level,
java.lang.String message)
|
void |
flushRequests()
flush cached requests |
java.lang.String |
getAddress()
|
java.lang.String |
getId()
Returns the session id in format remoteHost:remotePort |
java.net.Socket |
getSocket()
Get the underlying socket. |
Session.Status |
getStatus()
Returns session status |
boolean |
isActive()
active? |
protected java.lang.String |
read()
Returns one line read from the network. |
protected void |
readln()
Reads lines from the socket and calls Client.request(). |
void |
run()
Main loop, started from Server. |
void |
sendError(Request r)
write( "-"+ r ) - ERROR response to a request |
void |
sendRequest(Request r)
Sends a request to the client |
void |
sendResponse(Request r)
write( "+"+ r ) - OK response to a request |
void |
terminate()
Terminates the session. |
void |
terminate(boolean relogin)
Terminates the session. |
protected void |
write(java.lang.String type,
Message r)
Sends response r of type type to the client, appending TERMINATOR as necessary. |
Methods inherited from class java.util.Observable |
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final java.lang.String RESPONSE_OK
public static final java.lang.String RESPONSE_ERR
public static final java.lang.String RESPONSE_NONE
protected java.net.Socket socket
protected Dispatcher dispatcher
protected Client client
protected java.io.PrintWriter writer
public static final char TERMINATOR
protected boolean active
protected boolean cacheRequests
protected java.lang.String lf
protected long sentChars
protected long sentRequests
protected long receivedChars
protected long receivedRequests
protected long startTime
protected long stopTime
protected long lastTime
protected boolean daemon
protected Server server
protected boolean relogin
public boolean preserveSocket
protected int debugLevel
Constructor Detail |
protected Session()
public Session(Server server, java.net.Socket s, Dispatcher d) throws java.lang.Exception
Method Detail |
public java.lang.String getId()
public boolean isActive()
public java.net.Socket getSocket()
public void run()
run
in interface java.lang.Runnable
protected void readln()
Client
protected java.lang.String read() throws java.io.IOException, ConnectionException
java.io.IOException
ConnectionException
protected void write(java.lang.String type, Message r)
public void sendResponse(Request r)
public void sendError(Request r)
public void sendRequest(Request r)
public void flushRequests()
public void terminate()
public void terminate(boolean relogin)
protected void close()
protected void debug(int level, java.lang.String message)
public Session.Status getStatus()
public java.lang.String getAddress()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |