Class RequestHelper

java.lang.Object
de.elo.mover.main.helper.RequestHelper

public class RequestHelper extends Object

Überschrift: RequestHelper.

Beschreibung: Hilfsklasse für das Versenden von Requests.

Copyright: Copyright (c) ELO Digital Office GmbH 2018 - 2022

  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    addAttachment(IXconnect ixConnect, int objId, File sourceFile)
    Fügt eine Dateianbindung an das angegebene Dokument.
    static void
    createFeedAction(IXconnect ixConnect, int objId, String text)
    Fügt den angegebenen Text im Feed ein.
    static com.jcraft.jsch.Session
    createJschSession(String username, String password, String host, int port)
    Erzeugt ein JSCH Session-Objekt, mit dem eine Verbindung aufgebaut wird.
    static long
    Erzeugt einen neuen eigenen Ereignistyp, der außerhalb der definierten IX-Ereignistypen liegt.
    createTriggerInfo(jakarta.servlet.http.HttpServletRequest request, int userId)
    Liefert das TriggerInfo-Objekt aus dem angegebenen HTTP-Request zurück.
    static void
    deleteSubscriptions(IXconnect ixConnect, HashMap<String,de.elo.ix.client.Subscription> subs)
    Löscht die angegebenen Abbonaments.
    static void
    downloadFilesFromFtp(String userName, String password, String host, int port, boolean useSsl, String ftpServerDirectory, String targetDirectory, String[] fileExtList, boolean deleteFtpFiles)
    Lädt die Dateien mit den angegebenen Dateiendungen von einem FTP-Server im angegeben lokalen Verzeichnis herunter.
    static ArrayList<de.elo.ix.client.ConfigFile>
    findConfigFiles(IXconnect ixConnect, String configDir, String postboxUserId, boolean inclDeputy)
    Liefert eine Liste mit den vorhandenen Konfigurationsdateien zurück.
    static File
    getAttachmentVersion(IXconnect ixConnect, int objId, File targetDir)
    Liefert die Arbeitsversion der Dateianbindung des angegebenen Dokuments zurück.
    static int
    Liefert die neue EloDM-DokumentenId aus dem angegebenen UploadResult zurück.
    static File
    getDocumentVersion(IXconnect ixConnect, int objId, File targetDir)
    Liefert die Arbeitsversion des angegebenen Dokuments zurück.
    static File
    getDocumentVersion(IXconnect ixConnect, int objId, File targetDir, boolean useShortName)
    Liefert die Arbeitsversion des angegebenen Dokuments zurück.
    static void
    getDocumentVersionPart(IXconnect ixConnect, int objId, File targetFile, long offset, long length)
    Lädt den angegebene Teil der Arbeitsversion herunter.
    static de.elo.ix.client.feed.Action[]
    getFeedActions(IXconnect ixConnect, int objId)
    Liefert eine Liste mit den Feed Aktionen zum angegebenen Eintrag zurück.
    static String
    getFeedGuid(IXconnect ixConnect, int objId)
    Liefert das Feed-GUID des angegebenen Eintrags zurück.
    static String[]
    getGuids(de.elo.ix.client.feed.Action[] actions)
    Liefert eine Liste mit den GUIDs der angegebenen Feed Aktionen zurück.
    static String
    getIxFileName(IXconnect ixConnect, String fileName, String userName, boolean intrayTransfer, boolean saveFilesOnServer)
    Liefert den passenden IX-Dateinamen für den angegebenen Benutzer zurück.
    static String
    getLanguage(jakarta.servlet.http.HttpServletRequest request)
    Liefert die Sprache aus dem angegebenen ServletRequest zurück.
    static Locale
    getLocale(jakarta.servlet.http.HttpServletRequest request)
    Liefert das Locale-Objekt aus dem angegebenen HTTP-Request zurück.
    static ArrayList<de.elo.ix.client.Notification>
    Liefert eine Liste mit den vorhandenen Notifications zurück.
    static Map<String,de.elo.ix.client.Notification>
    Liefert eine Map mit den vorhandenen Notifications zurück.
    static String
    getRelativePath(jakarta.servlet.http.HttpServletRequest request)
    Liefert den relativen Pfad aus dem angegebenen ServletRequest zurück.
    static String
    Liefert den StackTrace der angegebenen Fehlermeldung als String zurück.
    static String
    getTextFromIxUrl(IXconnect ixConnect, String ixUrl, File targetFile)
    Speichert den Text der Indexserver-URL in der angegebenen Datei und liefert den Text zurück.
    static boolean
    hasAttachment(IXconnect ixConnect, int objId)
    Meldet zurück, ob der angegebene Eintrag eine Dateianbindung enthält.
    static boolean
    hasFulltext(IXconnect ixConnect, int objId)
    Meldet zurück, ob der angegebene Eintrag einen Volltextinhalt hat.
    static boolean
    hasSignature(IXconnect ixConnect, int objId)
    Meldet zurück, ob der angegebene Eintrag eine Signatur hat.
    static de.elo.ix.client.Subscription
    insertSubscription(IXconnect ixConnect, String feedGuid)
    Erstellt ein neues Abbonament für die angegebene Feed-GUID.
    static boolean
    isExceptionType(IXconnect ixConnect, Exception exc, int excType)
    Meldet zurück, ob die Fehlermeldung vom angegebenen Typ ist.
    static boolean
    Meldet zurück, ob die angegebene Indexserver-URL erreichbar ist.
    static boolean
    isIxProxy(jakarta.servlet.http.HttpServletRequest request)
    Meldet zurück, ob der Indexserver-Proxy aktiv ist.
    static void
    loadFilesFromServer(IXconnect ixConnect, File targetDir, String userName, boolean intrayTransfer)
    Lädt die Indexserver-Dateien für den angegebenen Benutzer herunter.
    static void
    removeAttachments(IXconnect ixConnect, int objId)
    Entfernt die Dateianbindung des angegebenen Dokuments.
    static void
    removeCookie(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp, String name)
    Entfernt das angegebene Cookie-Objekt.
    static String
    retrieveTicket(jakarta.servlet.http.HttpServletRequest request)
    Liefert das Indexserver-Ticket aus dem angegebenen ServletRequest zurück.
    static void
    saveFilesOnServer(IXconnect ixConnect, List<File> localFiles, String userName, boolean intrayTransfer)
    Speichert die angegebenen Postbox- oder Checkout-Dateien auf dem Index Server.
    static void
    Speichert die Benutzer Postboxdateien aus dem angegebenen Postbox Verzeichnis in der entsprechenden Index Server Postbox.
    static void
    sendHttpGetRequest(String url, File responseFile)
    Sendet eine HTTP GET-Anfrage an der angegebenen URL.
    static void
    sendHttpGetRequestBasicAuth(String url, File responseFile, String user, String password)
    Sendet eine HTTP GET-Anfrage mit einer Basic Authentifizierung an der angegebenen URL.
    static void
    sendHttpPostRequest(String url, byte[] source)
    Sendet eine HTTP Post-Anfrage an der angegebenen URL.
    static void
    sendHttpPostRequest(String url, File sourceFile)
    Sendet eine HTTP-Post Anfrage an der angegebenen URL.
    static void
    uploadFileToFtp(String userName, String password, String host, int port, boolean useSsl, File sourceFile, String targetFilePath)
    Lädt die lokale Datei auf dem angegebenen Pfad auf dem FTP-Server hoch.
    static void
    writeCookie(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, String name, String value, String path, boolean secure)
    Speichert das angegebene Cookie-Objekt.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • RequestHelper

      public RequestHelper()
  • Method Details

    • sendHttpGetRequest

      public static void sendHttpGetRequest(String url, File responseFile) throws IOException, Exception
      Sendet eine HTTP GET-Anfrage an der angegebenen URL.
      Parameters:
      url - URL, an die die Anfrage gesendet wird
      responseFile - Datei mit dem HTTP-Ergebnis
      Throws:
      IOException
      Exception
    • sendHttpGetRequestBasicAuth

      public static void sendHttpGetRequestBasicAuth(String url, File responseFile, String user, String password) throws Exception
      Sendet eine HTTP GET-Anfrage mit einer Basic Authentifizierung an der angegebenen URL.
      Parameters:
      url - URL, an die die Anfrage gesendet wird
      responseFile - Datei mit dem HTTP-Ergebnis
      user - Benutzer
      password - Passwort
      Throws:
      Exception
    • sendHttpPostRequest

      public static void sendHttpPostRequest(String url, File sourceFile) throws Exception
      Sendet eine HTTP-Post Anfrage an der angegebenen URL.
      Parameters:
      url - URL, an die die Anfrage gesendet wird
      sourceFile - Datei mit den Daten, die versendet werden
      Throws:
      Exception
    • sendHttpPostRequest

      public static void sendHttpPostRequest(String url, byte[] source) throws Exception
      Sendet eine HTTP Post-Anfrage an der angegebenen URL.
      Parameters:
      url - URL, an die die Anfrage gesendet wird
      source - byte-Array mit den Daten für die Anfrage
      Throws:
      Exception
    • getDocumentVersion

      public static File getDocumentVersion(IXconnect ixConnect, int objId, File targetDir) throws Exception
      Liefert die Arbeitsversion des angegebenen Dokuments zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - Id des Dokuments
      targetDir - Verzeichnis, in dem die Arbeitsversion heruntergelanden wird
      Returns:
      Arbeitsversion des Dokuments
      Throws:
      Exception
    • getDocumentVersion

      public static File getDocumentVersion(IXconnect ixConnect, int objId, File targetDir, boolean useShortName) throws Exception
      Liefert die Arbeitsversion des angegebenen Dokuments zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - Id des Dokuments
      targetDir - Verzeichnis, in dem die Arbeitsversion heruntergelanden wird
      useShortName - Kurzbezeichnung als Dateinamen verwenden
      Returns:
      Arbeitsversion des Dokuments
      Throws:
      Exception
    • getAttachmentVersion

      public static File getAttachmentVersion(IXconnect ixConnect, int objId, File targetDir) throws Exception
      Liefert die Arbeitsversion der Dateianbindung des angegebenen Dokuments zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - Id des Dokuments
      targetDir - Verzeichnis, in dem die Arbeitsversion heruntergelanden wird
      Returns:
      Arbeitsversion der Dateianbindung
      Throws:
      Exception
    • removeAttachments

      public static void removeAttachments(IXconnect ixConnect, int objId) throws Exception
      Entfernt die Dateianbindung des angegebenen Dokuments.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - ID des Dokuments
      Throws:
      Exception
    • addAttachment

      public static void addAttachment(IXconnect ixConnect, int objId, File sourceFile) throws Exception
      Fügt eine Dateianbindung an das angegebene Dokument.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - Id des Dokuments, zu dem die Dateianbindung eingefügt wird
      sourceFile - Dateianbindung
      Throws:
      Exception
    • hasAttachment

      public static boolean hasAttachment(IXconnect ixConnect, int objId) throws Exception
      Meldet zurück, ob der angegebene Eintrag eine Dateianbindung enthält.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - ID des Eintrags
      Returns:
      Eintrag enthält eine Dateianbindung
      Throws:
      Exception
    • hasSignature

      public static boolean hasSignature(IXconnect ixConnect, int objId) throws Exception
      Meldet zurück, ob der angegebene Eintrag eine Signatur hat.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - ID des Eintrags
      Returns:
      Eintrag hat eine Signatur
      Throws:
      Exception
    • hasFulltext

      public static boolean hasFulltext(IXconnect ixConnect, int objId) throws Exception
      Meldet zurück, ob der angegebene Eintrag einen Volltextinhalt hat.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - ID des Eintrags
      Returns:
      Eintrag hat einen Volltextinhalt
      Throws:
      Exception
    • getDocIdFromUploadResult

      public static int getDocIdFromUploadResult(String uploadResult) throws Exception
      Liefert die neue EloDM-DokumentenId aus dem angegebenen UploadResult zurück.
      Parameters:
      uploadResult - Upload-Ergebnis
      Returns:
      Dokument-ID
      Throws:
      Exception
    • downloadFilesFromFtp

      public static void downloadFilesFromFtp(String userName, String password, String host, int port, boolean useSsl, String ftpServerDirectory, String targetDirectory, String[] fileExtList, boolean deleteFtpFiles) throws Exception
      Lädt die Dateien mit den angegebenen Dateiendungen von einem FTP-Server im angegeben lokalen Verzeichnis herunter.
      Parameters:
      userName - Benutzername
      password - Passwort
      host - Host
      port - Port
      useSsl - SSL-Verschlüsselung verwenden
      ftpServerDirectory - Pfad auf dem FTP-Server
      targetDirectory - Zielverzeichnis
      fileExtList - Liste mit Dateiendungen
      deleteFtpFiles - Dateien auf dem FTP-Server löschen
      Throws:
      Exception
    • uploadFileToFtp

      public static void uploadFileToFtp(String userName, String password, String host, int port, boolean useSsl, File sourceFile, String targetFilePath) throws Exception
      Lädt die lokale Datei auf dem angegebenen Pfad auf dem FTP-Server hoch.
      Parameters:
      userName - Benutzername
      password - Benutzerpasswort
      host - Host
      port - Port
      useSsl - SSL-Verschlüsselung verwenden
      sourceFile - Quelldatei
      targetFilePath - Pfad der Datei auf dem FTP-Server
      Throws:
      Exception
    • createJschSession

      public static com.jcraft.jsch.Session createJschSession(String username, String password, String host, int port) throws com.jcraft.jsch.JSchException, Exception
      Erzeugt ein JSCH Session-Objekt, mit dem eine Verbindung aufgebaut wird.
      Parameters:
      username - Benutzername
      password - Benutzerpasswort
      host - Hostname
      port - Port für die Verbindung
      Returns:
      JSCH-Session
      Throws:
      com.jcraft.jsch.JSchException
      Exception
    • createMyEventType

      public static long createMyEventType()
      Erzeugt einen neuen eigenen Ereignistyp, der außerhalb der definierten IX-Ereignistypen liegt.
      Returns:
      eigener Ereignistyp
    • createFeedAction

      public static void createFeedAction(IXconnect ixConnect, int objId, String text) throws Exception
      Fügt den angegebenen Text im Feed ein.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - ID des Eintrags
      text - Text
      Throws:
      Exception
    • getGuids

      public static String[] getGuids(de.elo.ix.client.feed.Action[] actions) throws Exception
      Liefert eine Liste mit den GUIDs der angegebenen Feed Aktionen zurück.
      Parameters:
      actions - Liste mit Feed Aktionen
      Returns:
      Liste mit GUIDs
      Throws:
      Exception
    • getFeedActions

      public static de.elo.ix.client.feed.Action[] getFeedActions(IXconnect ixConnect, int objId) throws Exception
      Liefert eine Liste mit den Feed Aktionen zum angegebenen Eintrag zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - ID des Eintrags
      Returns:
      Liste mit Feed-Aktionen
      Throws:
      Exception
    • getDocumentVersionPart

      public static void getDocumentVersionPart(IXconnect ixConnect, int objId, File targetFile, long offset, long length) throws Exception
      Lädt den angegebene Teil der Arbeitsversion herunter.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - ID des Dokuments
      targetFile - Zieldatei
      offset - Versatz
      length - Länge der zu lesenden Daten
      Throws:
      Exception
    • saveFilesOnServer

      public static void saveFilesOnServer(IXconnect ixConnect, List<File> localFiles, String userName, boolean intrayTransfer) throws Exception
      Speichert die angegebenen Postbox- oder Checkout-Dateien auf dem Index Server.
      Parameters:
      ixConnect - Indexserver-Verbindung
      localFiles - Liste mit lokalen Dateien
      userName - Benutzername
      intrayTransfer - Postbox- oder Checkout Dateien speichern
      Throws:
      Exception
    • saveIntrayFilesOnServer

      public static void saveIntrayFilesOnServer(IXconnect ixConnect, String dirPath) throws Exception
      Speichert die Benutzer Postboxdateien aus dem angegebenen Postbox Verzeichnis in der entsprechenden Index Server Postbox.
      Parameters:
      ixConnect - Indexserver-Verbindung
      dirPath - Verzeichnis mit Postboxdateien für die einzelnen Benutzer
      Throws:
      Exception
    • loadFilesFromServer

      public static void loadFilesFromServer(IXconnect ixConnect, File targetDir, String userName, boolean intrayTransfer) throws Exception
      Lädt die Indexserver-Dateien für den angegebenen Benutzer herunter.
      Parameters:
      ixConnect - Indexserver-Verbindung
      targetDir - Verzeichnis, in dem die Dateien heruntergeladen werden
      userName - Benutzername
      intrayTransfer - Postbox-Dateien herunterladen
      Throws:
      Exception
    • getIxFileName

      public static String getIxFileName(IXconnect ixConnect, String fileName, String userName, boolean intrayTransfer, boolean saveFilesOnServer) throws Exception
      Liefert den passenden IX-Dateinamen für den angegebenen Benutzer zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      fileName - Name der Datei ohne den Dateipfad
      userName - Benutzer
      intrayTransfer - Postboxdatei oder ausgechecktes Dokument
      saveFilesOnServer - Lokale Dateien auf dem Server auslagern
      Returns:
      Index Server Dateiname
      Throws:
      Exception
    • findConfigFiles

      public static ArrayList<de.elo.ix.client.ConfigFile> findConfigFiles(IXconnect ixConnect, String configDir, String postboxUserId, boolean inclDeputy) throws Exception
      Liefert eine Liste mit den vorhandenen Konfigurationsdateien zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      configDir - Verzeichnis für die Konfigurationsdateien
      postboxUserId - ID des Postbox Benutzers
      inclDeputy - inklusive Vertretungen
      Returns:
      Liste mit Konfigurationsdateien
      Throws:
      Exception
    • isIxAvailable

      public static boolean isIxAvailable(String ixUrl) throws Exception
      Meldet zurück, ob die angegebene Indexserver-URL erreichbar ist.
      Parameters:
      ixUrl - Indexserver-URL
      Returns:
      URL ist erreichbar
      Throws:
      Exception
    • createTriggerInfo

      public static TriggerInfo createTriggerInfo(jakarta.servlet.http.HttpServletRequest request, int userId)
      Liefert das TriggerInfo-Objekt aus dem angegebenen HTTP-Request zurück.
      Parameters:
      request - HTTP-Request
      userId - Benutzer ID
      Returns:
      TriggerInfo
    • getLocale

      public static Locale getLocale(jakarta.servlet.http.HttpServletRequest request) throws Exception
      Liefert das Locale-Objekt aus dem angegebenen HTTP-Request zurück.
      Parameters:
      request - HttpServletRequest
      Returns:
      Locale-Objekt
      Throws:
      Exception
    • isExceptionType

      public static boolean isExceptionType(IXconnect ixConnect, Exception exc, int excType) throws Exception
      Meldet zurück, ob die Fehlermeldung vom angegebenen Typ ist.
      Parameters:
      ixConnect - Indexserver-Verbindung
      exc - Fehlermeldung
      excType - Fehlertyp
      Returns:
      Fehlermeldung ist vom angegebenen Typ
      Throws:
      Exception
    • getStackTrace

      public static String getStackTrace(Exception exc) throws Exception
      Liefert den StackTrace der angegebenen Fehlermeldung als String zurück.
      Parameters:
      exc - Fehlermeldung
      Returns:
      Stacktrace der Fehlermeldung
      Throws:
      Exception
    • getNotificationList

      public static ArrayList<de.elo.ix.client.Notification> getNotificationList(IXconnect ixConnect) throws Exception
      Liefert eine Liste mit den vorhandenen Notifications zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      Returns:
      Liste mit Notifications
      Throws:
      Exception
    • getNotificationMap

      public static Map<String,de.elo.ix.client.Notification> getNotificationMap(IXconnect ixConnect) throws Exception
      Liefert eine Map mit den vorhandenen Notifications zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      Returns:
      Map mit den Notifications
      Throws:
      Exception
    • getFeedGuid

      public static String getFeedGuid(IXconnect ixConnect, int objId) throws Exception
      Liefert das Feed-GUID des angegebenen Eintrags zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      objId - Objekt ID des Eintrags
      Returns:
      Feed-GUID
      Throws:
      Exception
    • insertSubscription

      public static de.elo.ix.client.Subscription insertSubscription(IXconnect ixConnect, String feedGuid) throws Exception
      Erstellt ein neues Abbonament für die angegebene Feed-GUID.
      Parameters:
      ixConnect - Indexserver-Verbindung
      feedGuid - Feed-GUID
      Returns:
      Abbonament
      Throws:
      Exception
    • deleteSubscriptions

      public static void deleteSubscriptions(IXconnect ixConnect, HashMap<String,de.elo.ix.client.Subscription> subs) throws Exception
      Löscht die angegebenen Abbonaments.
      Parameters:
      ixConnect - Indexserver-Verbindung
      subs - HashMap mit Abbonaments
      Throws:
      Exception
    • getTextFromIxUrl

      public static String getTextFromIxUrl(IXconnect ixConnect, String ixUrl, File targetFile) throws Exception
      Speichert den Text der Indexserver-URL in der angegebenen Datei und liefert den Text zurück.
      Parameters:
      ixConnect - Indexserver-Verbindung
      ixUrl - Index Server URL
      targetFile - Zieldatei, in der der Textinhalt eingefügt wird
      Returns:
      Text der Indexserver-URL
      Throws:
      Exception
    • retrieveTicket

      public static String retrieveTicket(jakarta.servlet.http.HttpServletRequest request)
      Liefert das Indexserver-Ticket aus dem angegebenen ServletRequest zurück.
      Parameters:
      request - ServletRequest
      Returns:
      Indexserver-Ticket
    • getLanguage

      public static String getLanguage(jakarta.servlet.http.HttpServletRequest request) throws Exception
      Liefert die Sprache aus dem angegebenen ServletRequest zurück.
      Parameters:
      request - ServletRequest
      Returns:
      Sprache
      Throws:
      Exception
    • isIxProxy

      public static boolean isIxProxy(jakarta.servlet.http.HttpServletRequest request) throws Exception
      Meldet zurück, ob der Indexserver-Proxy aktiv ist.
      Parameters:
      request - ServletRequest
      Returns:
      Indexserver-Proxy ist aktiv
      Throws:
      Exception
    • removeCookie

      public static void removeCookie(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp, String name) throws Exception
      Entfernt das angegebene Cookie-Objekt.
      Parameters:
      req - ServletRequest
      resp - ServletResponse
      name - Cookie Bezeichnung
      Throws:
      Exception
    • writeCookie

      public static void writeCookie(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response, String name, String value, String path, boolean secure) throws Exception
      Speichert das angegebene Cookie-Objekt.
      Parameters:
      request - ServletRequest
      response - ServletResponse
      name - Cookie Bezeichnung
      value - Cookie Wert
      path - Pfad
      secure -
      Throws:
      Exception
    • getRelativePath

      public static String getRelativePath(jakarta.servlet.http.HttpServletRequest request) throws Exception
      Liefert den relativen Pfad aus dem angegebenen ServletRequest zurück.
      Parameters:
      request - ServletRequest
      Returns:
      relativer Pfad
      Throws:
      Exception