HSAdmin Backend Domains, E-Mail, Datenbanken
Michael Hierweck
2017-09-20 f9be1a497c1f30cb84e4a4f94170abe8aa64a4f2
Merge branch 'master' of ssh://dev.hostsharing.net:29418/hsadmin/hs.hsadmin
5 files modified
60 ■■■■■ changed files
hsarback/src/de/hsadmin/core/qserv/JDBCProcessor.java 31 ●●●●● patch | view | raw | blame | history
hsarback/src/de/hsadmin/core/util/Config.java 4 ●●●● patch | view | raw | blame | history
hsarback/src/de/hsadmin/core/util/TextUtil.java 8 ●●●●● patch | view | raw | blame | history
hsarback/src/de/hsadmin/mods/db/MySqlDatabaseProcessorFactory.java 11 ●●●● patch | view | raw | blame | history
hsarback/src/de/hsadmin/mods/db/PgSqlDatabaseProcessorFactory.java 6 ●●●● patch | view | raw | blame | history
hsarback/src/de/hsadmin/core/qserv/JDBCProcessor.java
@@ -6,33 +6,37 @@
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Logger;
import de.hsadmin.core.util.Config;
import de.hsadmin.core.util.TextUtil;
public class JDBCProcessor extends AbstractProcessor {
    
    private static final long serialVersionUID = 1L;
    private static final Logger LOG = Logger.getLogger(JDBCProcessor.class.getName());
    final private String driver;
    final private String url;
    final private String user;
    final private String password;
    final private List<String> sql;
    
    private String errorMsg;
    public JDBCProcessor(final String driver, final String url, final String user, final String password) {
    public JDBCProcessor(final String driver, final String url) throws ProcessorException {
        this.driver = driver;
        this.url = url;
        this.user = user;
        this.password = password;
        this.errorMsg = "";
        this.sql = new ArrayList<String>();
    }
    public JDBCProcessor(final String driver, final String url) throws ProcessorException {
        this.driver = driver;
        this.url = url;
    public void addSQL(String sqlStatement) {
        sql.add(sqlStatement);
    }
    public Object process() throws ProcessorException {
        Connection c = null;
        String user, password;
        final Config config = Config.getInstance();
        if ("com.mysql.jdbc.Driver".equals(driver)) {
            user = config.getProperty("mysqladmin.user", "root");
@@ -45,16 +49,7 @@
                throw new ProcessorException("database admin-user configuration failed");
            }
        }
        this.errorMsg = "";
        this.sql = new ArrayList<String>();
    }
    public void addSQL(String sqlStatement) {
        sql.add(sqlStatement);
    }
    public Object process() throws ProcessorException {
        Connection c = null;
        LOG.info("process() - DB-User: " + user + "  Password: " + TextUtil.hidePassword(password));
        try {
            Class.forName(driver);
            c = DriverManager.getConnection(url, user, password);
hsarback/src/de/hsadmin/core/util/Config.java
@@ -3,10 +3,13 @@
import java.io.File;
import java.io.FileReader;
import java.util.Properties;
import java.util.logging.Logger;
public class Config {
    private static Config instance;
    private static Logger LOG = Logger.getLogger(Config.class.getName());
    private Properties props;
    
@@ -27,6 +30,7 @@
        }
        if (file.canRead()) {
            try {
                LOG.info("Constructor - Properties-File: " + file.getAbsolutePath());
                props.load(new FileReader(file));
            } catch (Exception e) {
                // should not happen
hsarback/src/de/hsadmin/core/util/TextUtil.java
@@ -76,4 +76,12 @@
        return parsedValue;
    }
    
    public static synchronized String hidePassword(String passwd) {
        StringBuffer val = new StringBuffer(passwd.substring(0, 2));
        for (int i = 2; i < passwd.length(); i++) {
            val.append('*');
        }
        return val.toString();
    }
}
hsarback/src/de/hsadmin/mods/db/MySqlDatabaseProcessorFactory.java
@@ -15,11 +15,12 @@
 * @author mi
 */
public class MySqlDatabaseProcessorFactory implements EntityProcessorFactory {
    public static JDBCProcessor createMySqlProcessor(String database,
            String user, String password) {
        return new JDBCProcessor("com.mysql.jdbc.Driver",
                "jdbc:mysql://localhost/" + database, user, password);
    }
//    public static JDBCProcessor createMySqlProcessor(String database,
//            String user, String password) {
//        return new JDBCProcessor("com.mysql.jdbc.Driver",
//                "jdbc:mysql://localhost/" + database, user, password);
//    }
    public static JDBCProcessor createMySqlAdminProcessor() throws ProcessorException {
        return new JDBCProcessor("com.mysql.jdbc.Driver", "jdbc:mysql://localhost/");
hsarback/src/de/hsadmin/mods/db/PgSqlDatabaseProcessorFactory.java
@@ -10,9 +10,9 @@
public class PgSqlDatabaseProcessorFactory implements EntityProcessorFactory {
    
    public static JDBCProcessor createPostgreSqlProcessor(String user, String password) {
        return new JDBCProcessor("org.postgresql.Driver", "jdbc:postgresql://localhost/template1", user, password);
    }
//    public static JDBCProcessor createPostgreSqlProcessor(String user, String password) {
//        return new JDBCProcessor("org.postgresql.Driver", "jdbc:postgresql://localhost/template1", user, password);
//    }
    public static JDBCProcessor createPostgreSqlAdminProcessor() throws ProcessorException {
        return new JDBCProcessor("org.postgresql.Driver", "jdbc:postgresql://localhost/template1");