/**
* Copyright (c) 18.02.2009 Sascha-Matthias Kulawik <sascha-matthias.kulawik@juwimm.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.juwimm.cms.beans.foreign;
import java.io.File;
import java.net.URL;
import java.util.List;
import org.apache.log4j.Logger;
import org.tizzit.core.classloading.ExternalLibClassLoaderManager;
/**
* @author <a href="mailto:sascha-matthias.kulawik@juwimm.com">Sascha-Matthias Kulawik</a>
* @version $Id: TizzitPropertiesBeanSpring.java 6 2009-07-30 14:05:05Z skulawik@gmail.com $
* @since tizzitcms-core 18.02.2009
*/
public class TizzitPropertiesBeanSpring {
private static final int tizzitPropertiesUCSversionNeeded = 30000;
private final Logger log = Logger.getLogger(TizzitPropertiesBeanSpring.class);
private String mandatorParent;
private String cmsTemplatesPath;
private String datadir;
private String datasource;
private String jnlpHost;
private String jnlpPort;
private boolean liveserver;
private String statsDir;
private String deployDir;
private String mailDS;
private int version;
private String hibernateSqlDialect;
private boolean hibernateShowSql;
private String editionCronExpression;
private String indexExternalSiteCronExpression;
public String getIndexExternalSiteCronExpression() {
return indexExternalSiteCronExpression;
}
public void setIndexExternalSiteCronExpression(String indexExternalSiteCronExpression) {
this.indexExternalSiteCronExpression = indexExternalSiteCronExpression;
}
private ClientMailAppenderConfig clientMailAppenderConfig = new ClientMailAppenderConfig();
private String updateDeployStatusCronExpression;
public String getUpdateDeployStatusCronExpression() {
return updateDeployStatusCronExpression;
}
public void setUpdateDeployStatusCronExpression(String updateDeployStatusCronExpression) {
this.updateDeployStatusCronExpression = updateDeployStatusCronExpression;
}
public ClientMailAppenderConfig getClientMailAppenderConfig() {
return clientMailAppenderConfig;
}
public void setClientMailAppenderConfig(ClientMailAppenderConfig mailAppenderConfig) {
this.clientMailAppenderConfig = mailAppenderConfig;
}
public String getMailDS() {
return mailDS;
}
public void setMailDS(String mailDS) {
this.mailDS = mailDS;
System.setProperty("tizzit.mailDS", mailDS);
}
public String getHibernateSqlDialect() {
return hibernateSqlDialect;
}
public void setHibernateSqlDialect(String hibernateSqlDialect) {
this.hibernateSqlDialect = hibernateSqlDialect;
}
public boolean isHibernateShowSql() {
return hibernateShowSql;
}
public void setHibernateShowSql(boolean hibernateShowSql) {
this.hibernateShowSql = hibernateShowSql;
}
private Logfile logfile = new Logfile();
private Cocoon cocoon = new Cocoon();
private Search search = new Search();
private ExternalLib externalLib = new ExternalLib();
public static class Search {
private String luceneStore;
private String indexMode;
private String searchDataSource;
private String xmlDatasource;
private String xmlDb;
private String xindiceHost;
private String xindicePort;
private int maxClauseCount = 32768;
private boolean indexerEnabled;
private boolean useOracleBatchUpdate;
public boolean isUseOracleBatchUpdate() {
return useOracleBatchUpdate;
}
public void setUseOracleBatchUpdate(boolean useOracleBatchUpdate) {
this.useOracleBatchUpdate = useOracleBatchUpdate;
}
private String indexerCronExpression;
public boolean isIndexerEnabled() {
return indexerEnabled;
}
public void setIndexerEnabled(boolean indexerEnabled) {
this.indexerEnabled = indexerEnabled;
}
public String getIndexerCronExpression() {
return indexerCronExpression;
}
public void setIndexerCronExpression(String indexerCronExpression) {
this.indexerCronExpression = indexerCronExpression;
}
public int getMaxClauseCount() {
return maxClauseCount;
}
public void setMaxClauseCount(int maxClauseCount) {
this.maxClauseCount = maxClauseCount;
}
public String getLuceneStore() {
return luceneStore;
}
public void setLuceneStore(String luceneStore) {
this.luceneStore = luceneStore;
}
public String getIndexMode() {
return indexMode;
}
public void setIndexMode(String indexMode) {
this.indexMode = indexMode;
}
public String getSearchDataSource() {
return searchDataSource;
}
public void setSearchDataSource(String searchDataSource) {
this.searchDataSource = searchDataSource;
}
public String getXmlDatasource() {
return xmlDatasource;
}
public void setXmlDatasource(String xmlDatasource) {
this.xmlDatasource = xmlDatasource;
}
public String getXmlDb() {
return xmlDb;
}
public void setXmlDb(String xmlDb) {
this.xmlDb = xmlDb;
}
public String getXindiceHost() {
return xindiceHost;
}
public void setXindiceHost(String xindiceHost) {
this.xindiceHost = xindiceHost;
}
public String getXindicePort() {
return xindicePort;
}
public void setXindicePort(String xindicePort) {
this.xindicePort = xindicePort;
}
}
/**
*
* @author <a href="mailto:eduard.siebert@juwimm.com">Eduard Siebert</a>
* company Juwi MacMillan Group GmbH, Walsrode, Germany
* @version $Id: TizzitPropertiesBeanSpring.java 369 2009-10-07 19:10:56Z eduard.siebert@online.de $
* @since tizzit-core 29.09.2009
*/
public static class ExternalLib {
private String path;
private boolean reloadingEnabled;
/**
* @return the path
*/
public String getPath() {
return path;
}
/**
* @param path the path to set
*/
public void setPath(String path) {
this.path = path;
}
/**
* @return the reloadingEnabled
*/
public boolean isReloadingEnabled() {
return reloadingEnabled;
}
/**
* @param reloadingEnabled the reloadingEnabled to set
*/
public void setReloadingEnabled(boolean reloadingEnabled) {
this.reloadingEnabled = reloadingEnabled;
}
/**
* @see {@link ExternalLibClassLoaderManager#getFileList(String)}
*/
public List<File> getFileList() throws Exception {
return ExternalLibClassLoaderManager.getFileList(this.path);
}
/**
* @see {@link ExternalLibClassLoaderManager#getURLList(String)}
*/
public List<URL> getURLList() throws Exception {
return ExternalLibClassLoaderManager.getURLList(this.path);
}
}
public static class Cocoon {
private String janitorFreeMemoryRatio;
private String janitorFreeMemory;
private String janitorHeapSizeRatio;
private String janitorHeapSize;
private String cleanupThreadIntervalSecs;
private String percentToFree;
private boolean invokeGC;
public String getJanitorFreeMemoryRatio() {
return janitorFreeMemoryRatio;
}
public void setJanitorFreeMemoryRatio(String janitorFreeMemoryRatio) {
this.janitorFreeMemoryRatio = janitorFreeMemoryRatio;
}
public String getJanitorHeapSizeRatio() {
return janitorHeapSizeRatio;
}
public void setJanitorHeapSizeRatio(String janitorHeapSizeRatio) {
this.janitorHeapSizeRatio = janitorHeapSizeRatio;
}
public String getCleanupThreadIntervalSecs() {
return cleanupThreadIntervalSecs;
}
public void setCleanupThreadIntervalSecs(String cleanupThreadIntervalSecs) {
this.cleanupThreadIntervalSecs = cleanupThreadIntervalSecs;
}
public String getPercentToFree() {
return percentToFree;
}
public void setPercentToFree(String percentToFree) {
this.percentToFree = percentToFree;
}
public boolean isInvokeGC() {
return invokeGC;
}
public void setInvokeGC(boolean invokeGC) {
this.invokeGC = invokeGC;
}
public String getJanitorFreeMemory() {
return janitorFreeMemory;
}
public void setJanitorFreeMemory(String janitorFreeMemory) {
this.janitorFreeMemory = janitorFreeMemory;
}
public String getJanitorHeapSize() {
return janitorHeapSize;
}
public void setJanitorHeapSize(String janitorHeapSize) {
this.janitorHeapSize = janitorHeapSize;
}
}
public static class ClientMailAppenderConfig {
public ClientMailAppenderConfig() {
}
private String SMTPHost;
private String from;
private String to;
/* for SMTP user authentication */
private String SMTPPassword;
private String SMTPUsername;
public String getSMTPPassword() {
return SMTPPassword;
}
public void setSMTPPassword(String sMTPPassword) {
SMTPPassword = sMTPPassword;
}
public String getSMTPUsername() {
return SMTPUsername;
}
public void setSMTPUsername(String sMTPUsername) {
SMTPUsername = sMTPUsername;
}
public String getSMTPHost() {
return SMTPHost;
}
public void setSMTPHost(String host) {
SMTPHost = host;
}
public String getFrom() {
return from;
}
public void setFrom(String from) {
this.from = from;
}
public String getTo() {
return to;
}
public void setTo(String to) {
this.to = to;
}
}
public static class Logfile {
private String logfileSource = "/tizzit/data/log/apache/access.log";
private String logfileDestDir = "/tizzit/data/applications/cocoon.war/stats/";
private boolean purgeLogfileDestDirOnExit = false;
private boolean cutVHost = false;
private boolean runWindows = false;
private String prepareScriptName = "/tizzit/bin/prepare";
private String scriptName = "/tizzit/bin/run_webalizer";
private String statsDestDir = "/tizzit/data/applications/cocoon.war/stats/";
private boolean listDomainsPerUnit = false;
private boolean enabled = false;
private String cronExpression;
public String getCronExpression() {
return cronExpression;
}
public void setCronExpression(String cronExpression) {
this.cronExpression = cronExpression;
}
public String getLogfileSource() {
return logfileSource;
}
public void setLogfileSource(String logfileSource) {
this.logfileSource = logfileSource;
}
public String getLogfileDestDir() {
return logfileDestDir;
}
public void setLogfileDestDir(String logfileDestDir) {
this.logfileDestDir = logfileDestDir;
}
public boolean isPurgeLogfileDestDirOnExit() {
return purgeLogfileDestDirOnExit;
}
public void setPurgeLogfileDestDirOnExit(boolean purgeLogfileDestDirOnExit) {
this.purgeLogfileDestDirOnExit = purgeLogfileDestDirOnExit;
}
public boolean isCutVHost() {
return cutVHost;
}
public void setCutVHost(boolean cutVHost) {
this.cutVHost = cutVHost;
}
public boolean isRunWindows() {
return runWindows;
}
public void setRunWindows(boolean runWindows) {
this.runWindows = runWindows;
}
public String getPrepareScriptName() {
return prepareScriptName;
}
public void setPrepareScriptName(String prepareScriptName) {
this.prepareScriptName = prepareScriptName;
}
public String getScriptName() {
return scriptName;
}
public void setScriptName(String scriptName) {
this.scriptName = scriptName;
}
public String getStatsDestDir() {
return statsDestDir;
}
public void setStatsDestDir(String statsDestDir) {
this.statsDestDir = statsDestDir;
}
public boolean isListDomainsPerUnit() {
return listDomainsPerUnit;
}
public void setListDomainsPerUnit(boolean listDomainsPerUnit) {
this.listDomainsPerUnit = listDomainsPerUnit;
}
public boolean isEnabled() {
return enabled;
}
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
}
public Logfile getLogfile() {
return logfile;
}
public void setLogfile(Logfile logfile) {
this.logfile = logfile;
}
public String getMandatorParent() {
return mandatorParent;
}
public void setMandatorParent(String mandatorParent) {
this.mandatorParent = mandatorParent;
}
public String getCmsTemplatesPath() {
return cmsTemplatesPath;
}
public void setCmsTemplatesPath(String cmsTemplatesPath) {
this.cmsTemplatesPath = cmsTemplatesPath;
}
public String getDatadir() {
return datadir;
}
public void setDatadir(String datadir) {
this.datadir = datadir;
}
public String getDatasource() {
return datasource;
}
public void setDatasource(String datasource) {
this.datasource = datasource;
}
public String getJnlpHost() {
return jnlpHost;
}
public void setJnlpHost(String jnlpHost) {
this.jnlpHost = jnlpHost;
}
public String getJnlpPort() {
return jnlpPort;
}
public void setJnlpPort(String jnlpPort) {
this.jnlpPort = jnlpPort;
}
public boolean isLiveserver() {
return liveserver;
}
public void setLiveserver(boolean liveserver) {
this.liveserver = liveserver;
}
public String getStatsDir() {
return statsDir;
}
public void setStatsDir(String statsDir) {
this.statsDir = statsDir;
}
public int getVersion() {
return version;
}
public void setVersion(int version) {
this.version = version;
if (version < tizzitPropertiesUCSversionNeeded) {
log.fatal("FAILURE! Please update your Tizzit Properties File to Version: " + tizzitPropertiesUCSversionNeeded);
System.exit(-1);
}
}
public Cocoon getCocoon() {
return cocoon;
}
public void setCocoon(Cocoon cocoon) {
this.cocoon = cocoon;
}
public Search getSearch() {
return search;
}
public void setSearch(Search search) {
this.search = search;
}
public void setEditionCronExpression(String editionCronExpression) {
this.editionCronExpression = editionCronExpression;
}
public String getEditionCronExpression() {
return editionCronExpression;
}
/**
* @return the externalLib
*/
public ExternalLib getExternalLib() {
return externalLib;
}
/**
* @param externalLib the externalLib to set
*/
public void setExternalLib(ExternalLib externalLib) {
this.externalLib = externalLib;
}
/**
* @return the deployDir
*/
public String getDeployDir() {
return deployDir;
}
/**
* @param deployUser the deployDir to set
*/
public void setDeployDir(String deployDir) {
this.deployDir = deployDir;
}
}