Class FSServer
Der Frontendserver ist eine Instanz gegen den sich von einem Masterserver aus verbunden werden kann. Der Frontendserver wird gestartet und lauscht auf einen definierten Port. Läuft der Frontendserver kann sich genau ein Masterserver auf ihn verbinden. Für mehr Informationen siehe formcycle Hilfe Das Initialisieren eines Fontendservers kann wie folgt aussehen:
...
private void startFServer() {
// Starte auf Port 4753 mit dem Namen "FormCycle - Frontend-Server".
// Der Name darf nicht abweichen. Es wird empfohlen die Konstante: "CmnConst.FRONTENDSERVER_NAME" zu nutzen.
FServer.startServer(4753, CmnConst.FRONTENDSERVER_NAME);
while (!FServer.getStatus().equals(EConnectionStatus.CONNECTED)) {
//Warten bis sich ein Masterserver verbunden hat oder abbrechen nach einer definierten Zeit...
}
//Masterserver hat sich erfolgreich verbunden
}
...
Zum Aufbau der Verbindung muss ein Port angegeben werden, der dann in der Masterserver-Konfiguration eingestellt
wird. Zudem muss der Name des Frontendserver angegeben werden. Dieser Name muss "FormCycle - Frontend-Server" lauten.
Mit dem Aufbau der Verbindung versucht der Masterserver eine Konfigurationsdatei für die Verbindung anzulegen. Damit
dies gelingt muss ein Verzeichnis META-INF existieren mit einer Daten Names xima-formcycle.properties
. Der Masterserver legt die Konfiguration in dieses Verzeichnis. Die Datei wird zunächst im Classpath gesucht, wird
hier nix gefunden, so wird relativ zum Ausführungsort gesucht.
Wird eine Frontendserver-Verbindung gekappt ohne, dass die Verbindung explizit geschlossen wird, versucht der Masterserver die Verbindung erneut aufzubauen. Gelingt dies nach einer gewissen Zeit nicht, wird die Verbindung komplett geschlossen und es muss sich explizit neu Verbinden werden. Zum expliziten Schließen der Verbindung kann folgender Aufruf genutzt werden:
... FServer.disconnectMaster(); ...
- Author:
- XIMA MEDIA GmbH
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionstatic IFSSessionauthClient(IFSClient client, FrontendServer fsEntity) Authentifiziert einen Client gegen den Frontend-Server.static booleandisconnect(boolean forced) static IFSClientGetter für currentClientstatic EConnectionStatusGetter für statusstatic StringgetError()static FsServerInfoDtoGetter für statusstatic StringMethode zur Ausgabe auf welchem Netzwerk-Interface der Server lauschen sollstatic IntegergetPort()static booleanstatic booleanstatic voidstartServer(String serverName, boolean forceCreateKeystoreIfSSLModeAuto) Methode zum Starten des Servers mit ggf. zu verwendender SSL-Verschlüsselungstatic voidMethode zum vollständigen Stoppen des Frontend-Serversstatic voidstopServer(boolean shutdownCompletely) Methode zum Stoppen des Frontend-Servers.static voidtriggerRestart(boolean forceCreateKeystoreIfSSLModeAuto) Neustart des Frontend-Servers mit den aktuellen EinstellungenMethods inherited from class BouncyCastleSupport
buildSignedCertificate, createCMSContentEncryptorBuilder, createContentSigner, createJceKeyTransRecipientInfoGenerator, createKeyFactory, createKeyPairGenerator, createKeyStore, createOpenSSLPKCS8DecryptorProviderBuilder, createPEMKeyConverter, createSignature, createX509CertificateConverter, createX509CertificateFactory
-
Field Details
-
LOG
public static final org.slf4j.Logger LOG
-
-
Method Details
-
startServer
-
stopServer
public static void stopServer()Methode zum vollständigen Stoppen des Frontend-Servers -
stopServer
public static void stopServer(boolean shutdownCompletely) Methode zum Stoppen des Frontend-Servers.- Parameters:
shutdownCompletely- ob der Server vollständig heruntergefahren werden soll, also auch der ExecutorService für den Restart
-
triggerRestart
public static void triggerRestart(boolean forceCreateKeystoreIfSSLModeAuto) Neustart des Frontend-Servers mit den aktuellen Einstellungen -
isRunning
public static boolean isRunning() -
authClient
Authentifiziert einen Client gegen den Frontend-Server.- Parameters:
client- der Client, der sich verbinden möchtefsEntity- die Verbindungseigenschaften des Frontend-Servers- Returns:
- eine Instanz von
IFSSession, die die Verbindung für diesen Client repräsentiert - Throws:
Exception- wenn ein Fehler auftritt, z.B. wenn bereits ein Client verbunden ist oder die Verbindung fehlschlägt
-
isConnected
public static boolean isConnected() -
disconnect
public static boolean disconnect(boolean forced) -
getConnectionStatus
Getter für status- Returns:
EConnectionStatusdes status
-
getFsServerInfo
Getter für status- Returns:
EConnectionStatusdes status
-
getClient
-
getNetworkInterface
Methode zur Ausgabe auf welchem Netzwerk-Interface der Server lauschen soll- Returns:
- das Netzwerk-Interface
-
getError
-
getPort
-