package org.quickbundle.config; import java.io.File; public class RmBaseConfigVo { RmBaseConfigVo() { super(); } private String warHome = System.getProperty("user.home") + "/.qbhome/default"; /** * <!-- cloud node info collected automatically? or read from rm.xml? --> * @return 是集群模式?或单机? */ private boolean clusterMode = false; /** * 获得默认数据源的数据库类型,默认数据库类型是NULL * IGlobalConstants.DATABASE_PRODUCT_NAME_... */ private String databaseProductName = null; /** * 系统是否开发调试状态(性能很低,便利于开发调试。同时sql的?替换输出,日志记录了sql真实数据) * 默认不是开发调试状态,是正式运行状态 */ private boolean systemDebugMode = true; /** * primary key prefix of this cluster node, range: 1000-9222 本集群节点RmIdFactory产生的主键前缀 */ private String shardingPrefix = "1000"; /** * 系统用户是否唯一登录,同时登录会强制踢出第一个用户 */ private boolean userUniqueLogin = true; /** * 默认的分页条数,默认按15条分页,会被rm.xml/rm/RmJspHelper/pageSize覆盖 */ private int defaultPageSize = 15; /** * 默认的批处理条数,用于sql的union all条数 */ private int defaultBatchSize = 10; /** * 得到系统描述 */ private String appDescription = "QuickBundle System"; /** * 是否记录request的执行时间和SQL数量 */ private boolean logRequest = true; /** * Python的Lib目录不存在时,自动解压缩 */ private boolean createPythonLibIfNotExist = true; /** * 是否逻辑删除文件 */ private boolean logicDeleteFile = false; /** * 逻辑删除的回收站文件夹 */ private String recycleBinFolder = warHome + "/recycle_bin"; /** * 是否记住当前url列表的在第几行 */ private boolean rememberPage = false; /** * 默认字体 */ private String defaultFont = null; /** * 最多in多少条记录? */ private int maxSqlInCount = 1000; /** * @return the warHome */ public String getWarHome() { return warHome; } /** * @param warHome the warHome to set */ void setWarHome(String warHome) { this.warHome = warHome; } /** * @return 是集群模式?或单机? */ public boolean isClusterMode() { return clusterMode; } /** * @param clusterMode the clusterMode to set */ void setClusterMode(boolean clusterMode) { this.clusterMode = clusterMode; } /** * @return 获得默认数据源的数据库类型 IGlobalConstants.DATABASE_PRODUCT_NAME_... */ public String getDatabaseProductName() { return databaseProductName; } /** * @param databaseProductName the databaseProductName to set */ void setDatabaseProductName(String databaseProductName) { this.databaseProductName = databaseProductName; } /** * @return 系统是否开发调试状态(系统综合运行性能较低,优化了应用启动速度。同时sql的?替换输出,日志记录了sql真实数据) */ public boolean isSystemDebugMode() { return systemDebugMode; } /** * @param systemDebugMode the systemDebugMode to set */ void setSystemDebugMode(boolean systemDebugMode) { this.systemDebugMode = systemDebugMode; } /** * @return 本集群节点RmIdFactory产生的主键前缀 */ public String getShardingPrefix() { return shardingPrefix; } /** * @param shardingPrefix the shardingPrefix to set */ public void setShardingPrefix(String shardingPrefix) { this.shardingPrefix = shardingPrefix; } /** * @return 系统用户是否唯一登录,同时登录会强制踢出第一个用户 */ public boolean isUserUniqueLogin() { return userUniqueLogin; } /** * @param userUniqueLogin the userUniqueLogin to set */ void setUserUniqueLogin(boolean userUniqueLogin) { this.userUniqueLogin = userUniqueLogin; } /** * @return 默认的分页条数,会被rm.xml/rm/RmJspHelper/pageSize覆盖 */ public int getDefaultPageSize() { return defaultPageSize; } /** * @param defaultPageSize the defaultPageSize to set */ void setDefaultPageSize(int defaultPageSize) { this.defaultPageSize = defaultPageSize; } /** * @return the defaultBatchSize */ public int getDefaultBatchSize() { return defaultBatchSize; } /** * @param defaultBatchSize the defaultBatchSize to set */ void setDefaultBatchSize(int defaultBatchSize) { this.defaultBatchSize = defaultBatchSize; } /** * @return 得到系统简短描述 */ public String getAppDescription() { return appDescription; } /** * @param appDescription the appDescription to set */ void setAppDescription(String appDescription) { this.appDescription = appDescription; } /** * @return 是否记录request的执行时间和SQL数量 */ public boolean isLogRequest() { return logRequest; } /** * @param logRequest the logRequest to set */ void setLogRequest(boolean logRequest) { this.logRequest = logRequest; } /** * @return the createPythonLibIfNotExist */ public boolean isCreatePythonLibIfNotExist() { return createPythonLibIfNotExist; } /** * @param createPythonLibIfNotExist the createPythonLibIfNotExist to set */ void setCreatePythonLibIfNotExist(boolean createPythonLibIfNotExist) { this.createPythonLibIfNotExist = createPythonLibIfNotExist; } /** * @return the logicDeleteFile */ public boolean isLogicDeleteFile() { return logicDeleteFile; } /** * @param logicDeleteFile the logicDeleteFile to set */ void setLogicDeleteFile(boolean logicDeleteFile) { this.logicDeleteFile = logicDeleteFile; } /** * @return the recycleBinFolder */ public String getRecycleBinFolder() { return recycleBinFolder; } /** * @param recycleBinFolder the recycleBinFolder to set */ void setRecycleBinFolder(String recycleBinFolder) { this.recycleBinFolder = recycleBinFolder; } public boolean isRememberPage() { return rememberPage; } void setRememberPage(boolean rememberPage) { this.rememberPage = rememberPage; } public String getDefaultFont() { return defaultFont; } void setDefaultFont(String defaultFont) { this.defaultFont = defaultFont; } public int getMaxSqlInCount() { return maxSqlInCount; } public void setMaxSqlInCount(int maxSqlInCount) { this.maxSqlInCount = maxSqlInCount; } //未加入rm.xml文件的配置 /** * @return 系统缓存检查周期 */ public long getCacheCheckInterval() { return 1000 * 2; } /** * @return 是否全局监控 */ public boolean isGlobalMonitor() { return true; } /** * @return 系统缓存刷新周期 */ public long getCacheFlushInterval() { return 1000 * 60 * 5; } /** * @return 节点心跳间隔 */ public long getNodeHeartbeatInterval() { return 1000 * 60; } /** * 翻页是否用rs.absolute(index)的方案 */ public boolean isAbsolutePage() { return false; } /** * 批处理sql的最大记录日志数量 */ public int getMaxLogSqlBatchSize() { return 100; } /** * 系统用户登录是否DEMO状态(不校验用户数据库) */ public boolean isUserDemoMode() { return false; } /** * 是否给insert和update的sql语句自动加ts */ public boolean isSqlUpdateAutoAppendTs() { return false; } /** * 默认的临时文件夹 */ public File getDefaultTempDir() { return new File(System.getProperty("java.io.tmpdir") + File.separator + "quickbundle"); } /** * 默认编码 */ public String getDefaultEncode() { return "UTF-8"; } /** * 默认实数数值的精度 */ public int getDefaultNumberScale() { return 2; } /** * 登录时是否有校验码 */ public boolean isLoginValidateVerifyCode() { return true; } /** * 登录是持否支持cookie */ public boolean isLoginCookie() { return true; } /** * cookie默认值365天 */ public int getDefaultCookieAge() { return 365 * 24 * 60 * 60; } /** * ajax提交是否已json格式,还是post表单提交? */ public boolean isSubmitJson() { return false; } /** * 默认的树形编码起始值,适用于简单的纯数字树,每个节点下最多有900个子节点 */ public String getDefaultTreeCodeFirst() { return "100"; } /** * 指定最大循环次数,防止死循环 */ public int getMaxCircleCount() { return 10000; } /** * 定义单实例全局缓存的最大容量,防止溢出攻击,如公开的url列表 * @return */ public int getMaxCacheSize() { return 10000; } }