twcsckernel.serverKernel.utils
Class RmiManager

java.lang.Object
  extended by twcsckernel.serverKernel.utils.RmiManager

public class RmiManager
extends java.lang.Object

Manager serwera RMI służący do odpalania serwera RMI wraz z przydzieleniem serwerowi i rejestracją podanej implementacji RemoteServer.
Ponadto wyłącznie ta klasa powinna być używana do rejestrowania i wyrejestrowywania obiektów zdalnych z serwera RMI za pomocą metod exportObject oraz unexportObject

Author:
VMD Group

Constructor Summary
RmiManager(int port, boolean useUserGbC, int connectionTimeout)
          Konstruktor rejestrujący odpowiednią fabrykę gniazd sieciowych.
 
Method Summary
 void exportObject(java.rmi.Remote object)
          Metoda rejestrująca obiekt zdalny w serwerze RMI.
 long getUserCollectorInterval()
           
 void setUserCollectorInterval(long interval)
          Ustawia "sprzątacza" użytkowników, którzy nie utrzymywali połączenia przez pewnien określony w nim czas.
 void startRegistryServer(RemoteServer remoteServer)
          Metoda odpala serwer na danym porcie oraz rejestruje podany serwer logowania RemoteServer na serwerze RMI.
 boolean stopRegistryServer()
          Metoda wyłączająca serwer RMI.
 boolean unexportObject(java.rmi.Remote object, boolean ifForce)
          Metoda wyrejestrowująca obiekt zdalny z serwera RMI.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RmiManager

public RmiManager(int port,
                  boolean useUserGbC,
                  int connectionTimeout)
           throws java.io.IOException
Konstruktor rejestrujący odpowiednią fabrykę gniazd sieciowych.

Parameters:
port - - numer portu na którym będzie odpalany serwer RMI
useUserGbC - - true jeśli ma być włączony user garbage collector lub false w przeciwnym wypadku
connectionTimeout - - timeout (w ms) próby połączenia do klienta (np. jeśli jest za NAT/firewall). Jeśli zero, to traktowany jest jak nieskończoność i połączenie będzie nawiązywane dopóki nie wystąpi błąd połączenia (wtedy dopiero natstępuje połączenie pasywne).
Throws:
java.io.IOException - - wyjątek rzucany w przypadku niepowodzenia rejestracji fabryki gniazd sieciowych.
Method Detail

getUserCollectorInterval

public long getUserCollectorInterval()
Returns:
interwał czasu (w milisekunach) co jaki ma być "sprzątane" - zero oznacza wyłączony user garbage collector

setUserCollectorInterval

public void setUserCollectorInterval(long interval)
Ustawia "sprzątacza" użytkowników, którzy nie utrzymywali połączenia przez pewnien określony w nim czas.

Parameters:
interval - - interwał czasu (w milisekunach) co jaki ma być "sprzątane" - zero oznacza wyłączenie

startRegistryServer

public void startRegistryServer(RemoteServer remoteServer)
                         throws java.rmi.RemoteException
Metoda odpala serwer na danym porcie oraz rejestruje podany serwer logowania RemoteServer na serwerze RMI.

Parameters:
remoteServer - - serwer logowania rejestrowany w serwerze RMI
Throws:
java.rmi.RemoteException - - wyjątek rzucany w przypadku niepowodzenia utworzenia serwera RMI lub niepowodzenia rejestracji na nim serwera logowania

stopRegistryServer

public boolean stopRegistryServer()
Metoda wyłączająca serwer RMI.

Returns:
true wtedy i tylko wtedy gdy serwer był włączony i operacja wyłączenia się powiodła lub false w przeciwnym wypadku.

exportObject

public void exportObject(java.rmi.Remote object)
                  throws java.rmi.RemoteException
Metoda rejestrująca obiekt zdalny w serwerze RMI. Tylko ona powinna być używana do rejestrowania obiektów zdalnych.
Metoda wyróżnia dwie klasy na które reaguje oddzielnie:

Parameters:
object - - rejestrowany obiekt
Throws:
java.rmi.RemoteException - - wyjątek rzucany w przypadku niepowodzenia rejestracji

unexportObject

public boolean unexportObject(java.rmi.Remote object,
                              boolean ifForce)
                       throws java.rmi.NoSuchObjectException
Metoda wyrejestrowująca obiekt zdalny z serwera RMI. Tylko ta metoda powinna być używana do wyrejestrowania obiektu.
Metoda wyróżnia dwie klasy na które reaguje oddzielnie:

Parameters:
object - - obiekt to wyrejestrowania
ifForce - - jeśli true to obiekt zostanie wyrejestrowany nawet w przypadku przeprowadzanych w aktualnie operacji zdalnych, w przeciwnym wypadku obiekt będzie wyrejestrowany tylko jeśli nie wykonuje żadnych operacji zdalnych.
Returns:
true jeśli operacja zakończona powodzeniem lub false w przeciwnym wypadku.
Throws:
java.rmi.NoSuchObjectException - - wyjątek rzucany jeśli podany obiekt nie był zarejestrowany


Copyright © 2005-2006 CS@PUT. All Rights Reserved.