Commit 15c764d5 authored by LG's avatar LG

Verzeichnisüberwachung:

1. Parameter für Server-Typ FTP/SFTP als boolean eingefügt;
2. Parameter für Server-Port eingefügt;
3. Alle Parameter für Server-Verbindeng umbenannt (statt -ftpServer... -server...);
4. FTPKommunikation: Überflüssige Parameter in Methoden gelöscht.

git-svn-id: https://inovat-svn-server:8443/svn/NI-DAUZ-1/trunk@800 8a9b1199-d942-744a-a8b1-ac58f4d8385e
parent 01be097a
......@@ -51,52 +51,39 @@ import java.io.*;
*/
public class FTPKommunikation {
/**
* DebugLogger für Debug-Ausgaben
*/
/** DebugLogger für Debug-Ausgaben. */
private static final Debug debug = Debug.getLogger();
//~ FELDER ================================================================
/**
* FTPClient.
*/
/** FTPClient. */
private FTPClient _ftpClient = null;
/** Legt fest, ob die FTP-Verbindung im PassivModus eingebaut werden soll. */
private boolean _ftpPassivModus;
/**
* Passwort zum Login auf den FTP-Server.
*/
/** Passwort zum Login auf den FTP-Server. */
private String _passwd;
/**
* Temporäre lokale Verzeichnis auf dem die Dateien kurz abgelebt werden.
*/
/** Port des FTP-Servers. */
private int _port;
/** Temporäre lokale Verzeichnis auf dem die Dateien kurz abgelebt werden. */
private String _tempVerzeichnis;
/** Typ des Systemobjekte für den BASt-Band Import/Export. */
private String _typBAStBand;
/**
* Verzeichnis das überwacht wird.
*/
/** Verzeichnis das überwacht wird. */
private String _ueberwachungsVerezichnis;
/**
* URL des FTP-Servers.
*/
/** URL des FTP-Servers. */
private String _url;
/**
* User für den Login auf den FTP-Server.
*/
/** User für den Login auf den FTP-Server. */
private String _user;
/**
* Verzeichnis in das die Dateien nach erfolgreichem Import verschoben werden.
*/
/** Verzeichnis in das die Dateien nach erfolgreichem Import verschoben werden. */
private String _verschiebeVerzeichnis;
//~ KONSTRUKTOREN (und vom Konstruktor verwendete Methoden) ==============
......@@ -105,6 +92,7 @@ public class FTPKommunikation {
* Konstruktor.
*
* @param url URL des FTP-Servers.
* @param port Port des FTP-Servers.
* @param user User des FTP-Servers.
* @param passwd Passwort für den Login auf den FTP-Server.
* @param ftpPassivModus Legt fest, ob die FTP-Verbindung im PassivModus eingebaut werden soll.
......@@ -113,8 +101,9 @@ public class FTPKommunikation {
* @param verschiebeVerzeichnis das Verzeichnis, in das die Dateien nach erfolgreichem Import verschoben werden.
* @param tempVerzeichnis temporäre Verzeichnis.
*/
public FTPKommunikation(String url, String user, String passwd, boolean ftpPassivModus, String typBAStBand, String ueberwachungsVerzeichnis, String verschiebeVerzeichnis, String tempVerzeichnis) {
public FTPKommunikation(String url, int port, String user, String passwd, boolean ftpPassivModus, String typBAStBand, String ueberwachungsVerzeichnis, String verschiebeVerzeichnis, String tempVerzeichnis) {
_url = url;
_port = port;
_user = user;
_passwd = passwd;
_ftpPassivModus = ftpPassivModus;
......@@ -125,7 +114,7 @@ public class FTPKommunikation {
//
try {
aktualisiereVerbindung(ueberwachungsVerzeichnis);
aktualisiereVerbindung();
}
catch (Exception e) {
debug.warning("Die Verbindung zum FTP-Server konnte nicht erstellt werden.", e);
......@@ -136,9 +125,8 @@ public class FTPKommunikation {
/**
* Die Methode aktualisiert die FTP-Verbindung.
* @param zuUeberwachendeVerzeichnis das zu überwachende Verzeichnis.
*/
protected void aktualisiereVerbindung(String zuUeberwachendeVerzeichnis) {
protected void aktualisiereVerbindung() {
if (_ftpClient != null) {
try {
_ftpClient.logout();
......@@ -149,10 +137,10 @@ public class FTPKommunikation {
}
}
_ftpClient = verbindeMitFTPServer(_url);
_ftpClient = verbindeMitFTPServer();
if (loginToFTPServer()) {
changeDirektoryFTPServer(zuUeberwachendeVerzeichnis);
changeDirektoryFTPServer();
} else {
String infoText = "Der Login auf dem FTP-Server ist gescheitert. Bitte kontrollieren Sie den angegebenen Benutzernamen und das Passwort!";
......@@ -178,29 +166,27 @@ public class FTPKommunikation {
/**
* Die Methode wechselt in das Exportverzeichnis für den gestarteten Export.
*
* @param changeDirectory das Verzeichnis in das gewechselt wird.
*/
public void changeDirektoryFTPServer(String changeDirectory) {
public void changeDirektoryFTPServer() {
boolean wechselOK = false;
if ((_ftpClient != null) && (_ftpClient.isConnected())) {
try {
wechselZumRootFTPVerzeichnis();
wechselOK = _ftpClient.changeWorkingDirectory(changeDirectory);
wechselOK = _ftpClient.changeWorkingDirectory(_ueberwachungsVerezichnis);
}
catch (IOException e) {
String infoText = "Es konnte nicht in das per Parameter angegebene Verzeichnis " + changeDirectory + " gewechselt werden. Bitte überprüfen Sie die Angaben. ";
String infoText = "Es konnte nicht in das per Parameter angegebene Verzeichnis " + _ueberwachungsVerezichnis + " gewechselt werden. Bitte überprüfen Sie die Angaben. ";
debug.error(infoText, e);
}
} else {
aktualisiereVerbindung(changeDirectory);
changeDirektoryFTPServer(changeDirectory);
aktualisiereVerbindung();
changeDirektoryFTPServer();
}
if (!wechselOK) {
String infoText = "Es konnte nicht in das per Parameter angegebene Verzeichnis " + changeDirectory + " gewechselt werden. Bitte überprüfen Sie die Angaben. ";
String infoText = "Es konnte nicht in das per Parameter angegebene Verzeichnis " + _ueberwachungsVerezichnis + " gewechselt werden. Bitte überprüfen Sie die Angaben. ";
debug.error(infoText);
}
......@@ -243,7 +229,7 @@ public class FTPKommunikation {
outputStream.write(data);
}
aktualisiereVerbindung(_ueberwachungsVerezichnis);
aktualisiereVerbindung();
InputStream localInput = new FileInputStream(file);
......@@ -303,9 +289,8 @@ public class FTPKommunikation {
/**
* Die Methode zur Überwachung des Verzeichnisses.
* @param zuUeberwachendeVerzeichnis das zu überwachende Verzeichnis.
*/
public void ueberwacheVerzeichnis(String zuUeberwachendeVerzeichnis) {
public void ueberwacheVerzeichnis() {
if (_ftpClient.isConnected()) {
try {
String[] alleFiles = _ftpClient.listNames();
......@@ -339,23 +324,22 @@ public class FTPKommunikation {
debug.warning("Es sind Probleme bei der FTP-Kommunikation aufgetreten.", e);
}
} else {
aktualisiereVerbindung(zuUeberwachendeVerzeichnis);
aktualisiereVerbindung();
}
}
/**
* Die Methode stellt eine Verbindung zum FTP-Server her.
*
* @param url URL des FTP-SErvers.
* @return FTPClient.
*/
private FTPClient verbindeMitFTPServer(String url) {
private FTPClient verbindeMitFTPServer() {
if (_ftpClient == null) {
_ftpClient = new FTPClient();
}
try {
_ftpClient.connect(url);
_ftpClient.connect(_url, _port);
}
catch (IOException e) {
String infoText = "Es sind Probleme bei der Verbindung mit dem FTP-Server aufgetreten.";
......@@ -384,4 +368,4 @@ public class FTPKommunikation {
}
//~Formatiert mit 'inovat Kodierkonvention' am 26.10.12
//~Formatiert mit 'inovat Kodierkonvention' am 13.06.13
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment