From a43e1a055018aab9590c88c45d8495f99bfb6254 Mon Sep 17 00:00:00 2001 From: ulrich Date: Mon, 05 Apr 2021 18:39:49 +0000 Subject: [PATCH] Ablageort-Liste --- src/de/uhilger/mediaz/App.java | 64 +++++++++++++++++++++++++------ 1 files changed, 51 insertions(+), 13 deletions(-) diff --git a/src/de/uhilger/mediaz/App.java b/src/de/uhilger/mediaz/App.java index 170258e..351bb27 100644 --- a/src/de/uhilger/mediaz/App.java +++ b/src/de/uhilger/mediaz/App.java @@ -1,12 +1,26 @@ /* - * To change this license header, choose License Headers in Project Properties. - * To change this template file, choose Tools | Templates - * and open the template in the editor. + Mediazentrale - Personal Media Center + Copyright (C) 2021 Ulrich Hilger + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <https://www.gnu.org/licenses/>. */ package de.uhilger.mediaz; +import java.io.File; import java.io.IOException; import java.util.HashMap; +import java.util.ResourceBundle; import java.util.logging.Level; import java.util.logging.Logger; @@ -18,40 +32,60 @@ private static final Logger logger = Logger.getLogger(App.class.getName()); - public static final String IP_PORT = "port"; - public static final String IP_WWW_DATA = "www-data"; - public static final String IP_CTX = "ctx"; - private static HashMap initParams; + + /* ResourceBundle dieser App */ + private static ResourceBundle rb; + + /* Name des ResourceBundles dieser App */ + private static final String RB_NAME = "mediaz"; + + /* ResourceBundle-Kennungen */ + public static final String RB_PARAM_FEHLT = "msgParamFehlt"; + public static final String RB_AP_PORT = "appParamPort"; + public static final String RB_AP_CONF = "appParamConf"; + public static final String RB_AP_WWW_DATA = "appParamWWWData"; + public static final String RB_AP_CTX = "appParamCtx"; + public static final String RB_AP_UI = "appParamUi"; /** * <p>Start-Methode dieser Anwendung</p> * * @param args Kommandozeilenparameter */ - public static void main(String[] args) { + public static void main(String[] args) throws ClassNotFoundException { + rb = ResourceBundle.getBundle(RB_NAME); + logger.info(new File(".").getAbsolutePath()); + initParams = new HashMap(); for (String arg : args) { String[] argParts = arg.split("="); initParams.put(argParts[0], argParts[1]); } - String portStr = getInitParameter(IP_PORT); + String portStr = getInitParameter(getRs(RB_AP_PORT)); if (portStr != null) { Server server = new Server(Integer.parseInt(portStr)); try { - String ctxName = getInitParameter(IP_CTX); + String ctxName = getInitParameter(getRs(RB_AP_CTX)); if (ctxName != null) { server.setContextName(ctxName); server.start(); } else { - logger.severe("Der Parameter " + IP_CTX + " muss angegeben werden."); + logger.log(Level.INFO, getRs(RB_PARAM_FEHLT), getRs(RB_AP_CTX)); + } + String conf = getInitParameter(getRs(RB_AP_CONF)); + if(conf != null) { + File confDir = new File(conf); + confDir.mkdirs(); + } else { + logger.log(Level.INFO, App.getRs(RB_PARAM_FEHLT), getRs(RB_AP_CONF)); } } catch (IOException ex) { - Logger.getLogger(App.class.getName()).log(Level.SEVERE, null, ex); + logger.log(Level.SEVERE, null, ex); } } else { - logger.severe("Der Parameter " + IP_PORT + " muss angegeben werden."); + logger.log(Level.INFO, App.getRs(RB_PARAM_FEHLT), getRs(RB_AP_PORT)); } } @@ -77,5 +111,9 @@ } return param; } + + public static String getRs(String key) { + return rb.getString(key); + } } -- Gitblit v1.9.3