public class AppletAutomationenKonfig extends JApplet {
private static String[] arguments; //Die dem Applet übergebenen Argumente (Standalone)
private static boolean isStandalone = false; //Wird Applet im Browser oder Standalone ausgeführt?
private Container contentPane; //Der Inhalts-Container für das Applet
//...
/**
* Das Applet konstruieren
*/
public AppletAutomationenKonfig() {
}
/**
* Main-Methode (Wenn das Applet als Standalone-Anwendung ausgefürt wird)
*
* @param args String[] (Der Applikation übergebene Argumente)
*/
public static void main(String[] args) {
try {
arguments = args;
if (!(hasArgument("DB_Name") && hasArgument("DB_Type") && hasArgument("DB_IP"))) {
JOptionPane.showMessageDialog(null, "Sie müssen der Anwendung \"AutomationenKonfig\" zumindest die Parameter " +
"für den Namen, den Typ und die IP-Adresse des Datenbank-Servers übergeben!",
"Fehlende Parameter", JOptionPane.WARNING_MESSAGE);
System.exit(0);
} else {
AppletAutomationenKonfig applet = new AppletAutomationenKonfig();
applet.isStandalone = true;
applet.init();
applet.start();
JFrame frame = new JFrame("PARITy Automationen Konfiguration - Version 1.0");
frame.getContentPane().setLayout(new BorderLayout());
frame.getContentPane().add(applet, BorderLayout.CENTER);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.setSize(1000, 800);
frame.show();
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* Das Applet initialisieren (Mit StackTrace bei nicht gefangenen Ausnahmen)
*/
public void init() {
try {
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* Initialisierung der Komponenten
*
* @throws Exception
*/
private void jbInit() throws Exception {
this.setSize(new Dimension(1000, 700));
contentPane = this.getContentPane();
contentPane.setLayout(new BorderLayout());
//...
if (this.getParameter("Print_DB_Config", "false").equals("true")) {
SQLConfig.printSQLConfig();
}
//...
}
/**
* Parameterwert holen
*
* @param key String (Name des Parameters)
* @param def String (Default-Wert des Parameters)
* @return String (Parameter-Wert, wenn null der Default-Wert)
*/
public String getParameter(String key, String def) {
return (isStandalone ? getArgument(key, def) : (getParameter(key) != null ? getParameter(key) : def));
}
/**
* Argument aus der Argumenten-Liste holen, mit Default-Wert
*
* @param key String (Das gesuchte Argument)
* @param def String (Der Default-Wert)
* @return String (Wert des gesuchten Argumentes oder Default-Wert)
*/
public static String getArgument(String key, String def) {
String result = def;
if (arguments != null) {
if (arguments.length > 0) {
int i = 0;
while ((i < arguments.length) && (result.equals(def))) {
if (arguments[i].startsWith(key + "=")) {
return arguments[i].substring(key.length() + 1);
}
i++;
}
}
}
return result;
}
/**
* Argument aus der Argumenten-Liste holen
*
* @param key String (Das gesuchte Argument)
* @return String (Wert des gesuchten Argumentes)
*/
public static String getArgument(String key) {return getArgument(key, "");}
/**
* Überprüfen, ob das gesuchte Argument in den Argumenten vorhanden ist
*
* @param key String (Das gesuchte Argument)
* @return boolean (Ist das gesuchte Argument in den Aurgumenten vorhanden?)
*/
public static boolean hasArgument(String key) {
boolean result = false;
if (arguments != null) {
int i = 0;
while ((i < arguments.length) && (result != true)) {
if (arguments[i].startsWith(key + "=")) {
result = true;
}
i++;
}
}
return result;
}
//...
}