ozone core API

org.ozoneDB.core
Class InvokeServer

java.lang.Object
  extended byorg.ozoneDB.DxLib.DxObject
      extended byorg.ozoneDB.DxLib.DxAbstractCollection
          extended byorg.ozoneDB.DxLib.DxAbstractBag
              extended byorg.ozoneDB.DxLib.DxListBag
                  extended byorg.ozoneDB.DxLib.net.DxMultiServer
                      extended byorg.ozoneDB.core.InvokeServer
All Implemented Interfaces:
java.lang.Cloneable, DxBag, DxCollection, DxCompatible, DxListCollection, java.io.Externalizable, java.io.Serializable

public class InvokeServer
extends DxMultiServer

Version:
$Revision: 1.7 $Date: 2002/12/29 11:15:56 $
Author:
SMB
See Also:
Serialized Form

Field Summary
protected  Env env
           
 
Fields inherited from class org.ozoneDB.DxLib.net.DxMultiServer
acceptor, acceptThread, serverSocket, threadGroup
 
Fields inherited from class org.ozoneDB.DxLib.DxListBag
itemCount, start, top
 
Constructor Summary
InvokeServer(Env _env, int port)
           
 
Method Summary
 void handleClientEvent(DxMultiServerClient client, java.lang.Object event)
          diese methode wird aufgerufen, wenn an der verbindung client daten anliegen; muss ueberschrieben werden, um das applications spezifische verhalten zu bestimmen
 void handleClientException(DxMultiServerClient client, java.lang.Exception e)
           
 DxMultiServerClient newClient(java.net.Socket sock)
          erzeugt einen neuen client aus einer socket-verbindung; diese methode kann ueberschrieben werden, um evtl. eigene clients einfuegen zu koennen
 java.lang.Thread newThread(java.lang.Runnable run)
          Diese Methode liefert einen neuen Thread und wird fuer die AcceptThread und den DxMultiServerClient benoetigt.
 void removeClient(DxMultiServerClient client)
           
 void shutdown()
           
 void startFilterDatabaseObjectReferencesExports(GarbageCollector garbageCollector)
          Starts filtering references to database objects (OzoneProxys) which are exported to clients at all client connections.
 void startup()
           
 
Methods inherited from class org.ozoneDB.DxLib.net.DxMultiServer
accept, close, threadGroup
 
Methods inherited from class org.ozoneDB.DxLib.DxListBag
add, addBack, addFront, clear, count, decCounter, head, isEmpty, iterator, tail
 
Methods inherited from class org.ozoneDB.DxLib.DxAbstractBag
equals
 
Methods inherited from class org.ozoneDB.DxLib.DxAbstractCollection
addAll, addAll, clone, contains, containsAll, readExternal, remove, removeAll, toArray, valueClone, writeExternal
 
Methods inherited from class org.ozoneDB.DxLib.DxObject
clone, isLess
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.ozoneDB.DxLib.DxCollection
addAll, addAll, clone, contains, containsAll, remove, removeAll, toArray, valueClone
 
Methods inherited from interface org.ozoneDB.DxLib.DxCompatible
equals, isLess
 

Field Detail

env

protected transient Env env
Constructor Detail

InvokeServer

public InvokeServer(Env _env,
                    int port)
             throws java.io.IOException
Method Detail

startup

public void startup()
             throws java.lang.Exception
Throws:
java.lang.Exception

shutdown

public void shutdown()
              throws java.lang.Exception
Throws:
java.lang.Exception

handleClientEvent

public void handleClientEvent(DxMultiServerClient client,
                              java.lang.Object event)
Description copied from class: DxMultiServer
diese methode wird aufgerufen, wenn an der verbindung client daten anliegen; muss ueberschrieben werden, um das applications spezifische verhalten zu bestimmen

Specified by:
handleClientEvent in class DxMultiServer

handleClientException

public void handleClientException(DxMultiServerClient client,
                                  java.lang.Exception e)
Specified by:
handleClientException in class DxMultiServer

newClient

public DxMultiServerClient newClient(java.net.Socket sock)
Description copied from class: DxMultiServer
erzeugt einen neuen client aus einer socket-verbindung; diese methode kann ueberschrieben werden, um evtl. eigene clients einfuegen zu koennen

Overrides:
newClient in class DxMultiServer

removeClient

public void removeClient(DxMultiServerClient client)
Overrides:
removeClient in class DxMultiServer

newThread

public java.lang.Thread newThread(java.lang.Runnable run)
Description copied from class: DxMultiServer
Diese Methode liefert einen neuen Thread und wird fuer die AcceptThread und den DxMultiServerClient benoetigt. Sie kann ueberschrieben werden, um evtl. eigene Threads zu erzeugen (z.B. bei Verwendung eines eigenen Schedulers). Ausserdem wird der mit diesem Thread verbundene Client uebergeben (kann auch null sein !!).

Overrides:
newThread in class DxMultiServer

startFilterDatabaseObjectReferencesExports

public void startFilterDatabaseObjectReferencesExports(GarbageCollector garbageCollector)
Starts filtering references to database objects (OzoneProxys) which are exported to clients at all client connections. Every reference which is exported will be notified to the given GarbageCollector. Additionally, references which are known to be used by clients are notified to the given GarbageCollector within this call.


ozone core API

Copyright (C) The Ozone Database Project - www.ozone-db.org. All rights reserved.