Die einfache Init()-Methode funktioniert nur mit .Net-Framework, da sie versucht sich mit dem aktuellen Windows-Benutzer anzumelden und den ersten verfügbaren DMS-Server auswählt.
Auswahl des richtigen DMS-Servers
Die Init()-Methode hat einen optionalen Parameter zur Auswahl eines
bestimmten DMS-Servers. Es gibt Umgebungen, in welchen mehr als ein
DMS-Server an einem LEXolution Service Bus angeschlossen sind. Dann ist
es notwendig sich für einen davon zu entscheiden. Der
SystemSelection-Parameter existiert in allen Überladungen der
Init-Methode als optionaler Parameter. Wird er nicht angegeben (null),
wird die Strategie First verwendet.
var systemSelection = SystemSelection.Id(databaseId);
dms.Init(systemSelection); Es gibt zwei möglich Auswahlstrategien, welche über statische
Methoden an SystemSelection aufgerufen werden können:
First
SystemSelection.First() Es wird das DMS-System
verwendet, welches sich als erstes meldet. In Umgebungen mit nur einem
DMS-Server ist das die einfachste Variante. Sollten aber mehrere
DMS-Server vorhanden sein, ist dies keine sinnvolle Strategie.
Id
SystemSelection.Id(databaseId) Hiermit wird erst dann
eine Verbindung hergestellt, wenn sich genau das angegebene DMS-System
meldet. Alle anderen werden ignoriert. Die databaseId steht
in der am DMS-Server angeschlossenen Datenbank in der Tabelle
tblDatabaseId. Sollte es sich bei dem DMS-System um einen
Cluster handeln, also mehrere DMS-Server, welche alle an derselben
Datenbank angeschlossen sind, dann wird die Verbindung zu dem
Serverknoten des Clusters hergestellt, welcher sich als erstes
meldet.
Anmeldung mit bestimmten Benutzer
dms.Init(username, password, systemSelection); Die Anmeldung erfolgt mit dem angegebenen Benutzer sowohl im STP-Usermanagement, als auch direkt im DMS-Server. Je nach Verfügbarkeit wird automatisch eines der beiden Anmeldesysteme verwendet. Allerdings steht nur im Falle des STP-Usermanagement später auch die Impersonierung (bei entsprechender Berechtigung des Benutzers) zur Verfügung.
Anmeldung an einer existierenden Queue
Existiert in der Anwendung bereits eine authentifizierte (STP-Usermanagement) und verschlüsselte Verbindung zum LEXolution Service Bus, kann diese Verbindung auch für die API verwendet werden.
dms.Init(existingServiceQueue, systemSelection);Es wird aber empfohlen eine separate Queue für die Api zu verwenden, damit diese später einfach aufgeräumt werden kann und ggf. die Impersonierung nicht mit anderen Verwendern kollidiert.
Überprüfung der LSB Verfügbarkeit
Die API verwendet LSB (RabbitMQ). Die Verfügbarkeit dieser Übertragungstechnologie kann leicht ermittelt werden:
var lsbActive = dms.IsLsbAvailable();Im Hintergrund wird die Funktion des LSBs
QueueFactory.IsLsbAvailable() mit den relevanten Parametern
aufgerufen.
Überprüfung der Erreichbarkeit des DMS Servers
Abfragen, ob der DMS Server erreichbar ist:
var serverAlive = dms.IsDocumentsOnPremiseServerAlive();Verknüpfung mit