This is an automated email from the ASF dual-hosted git repository. gosonzhang pushed a commit to branch TUBEMQ-570 in repository https://gitbox.apache.org/repos/asf/incubator-inlong.git
commit a936fdf3b2557e2b3ab74645d0c0d3584c323068 Author: gosonzhang <[email protected]> AuthorDate: Thu May 27 20:30:26 2021 +0800 [INLONG-618] Add unit tests for metastore.dao.entity.* --- .../server/common/utils/WebParameterUtils.java | 17 +++- .../bdbentitys/BdbClusterSettingEntity.java | 42 +++++++++- .../bdbentitys/BdbGroupFilterCondEntity.java | 75 ++++++++++++----- .../bdbentitys/BdbGroupFlowCtrlEntity.java | 93 ++++++++++++++-------- .../bdbentitys/BdbTopicAuthControlEntity.java | 75 ++++++++++++----- .../metamanage/metastore/TStoreConstants.java | 4 + .../metastore/dao/entity/BaseEntity.java | 33 ++++++-- .../metastore/dao/entity/ClusterSettingEntity.java | 4 +- .../dao/entity/GroupConsumeCtrlEntity.java | 4 +- .../metastore/dao/entity/GroupResCtrlEntity.java | 4 +- .../metastore/dao/entity/TopicCtrlEntity.java | 4 +- .../server/common/WebParameterUtilsTest.java | 4 +- .../dao/entity/GroupConsumeCtrlEntityTest.java | 12 +-- .../dao/entity/GroupResCtrlEntityTest.java | 18 +++-- .../metastore/dao/entity/TopicCtrlEntityTest.java | 18 +++-- 15 files changed, 298 insertions(+), 109 deletions(-) diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/common/utils/WebParameterUtils.java b/tubemq-server/src/main/java/org/apache/tubemq/server/common/utils/WebParameterUtils.java index b5535d8..52b7dbc 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/common/utils/WebParameterUtils.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/common/utils/WebParameterUtils.java @@ -1538,10 +1538,25 @@ public class WebParameterUtils { } public static String date2yyyyMMddHHmmss(Date date) { - SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); + SimpleDateFormat sdf = + new SimpleDateFormat(TBaseConstants.META_TMP_DATE_VALUE); return sdf.format(date); } + public static Date yyyyMMddHHmmss2date(String dateStr) { + if (dateStr == null) { + return null; + } + SimpleDateFormat sdf = + new SimpleDateFormat(TBaseConstants.META_TMP_DATE_VALUE); + try { + return sdf.parse(dateStr); + } catch (Throwable e) { + return null; + } + } + + public static String checkParamCommonRequires(final String paramName, final String paramValue, boolean required) throws Exception { String temParamValue = null; diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbClusterSettingEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbClusterSettingEntity.java index 892243d..530adec 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbClusterSettingEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbClusterSettingEntity.java @@ -341,6 +341,40 @@ public class BdbClusterSettingEntity implements Serializable { this.attributes, TStoreConstants.TOKEN_FLOW_CTRL_INFO); } + public void setCreateInfo(String creater, Date createDate) { + if (TStringUtils.isNotBlank(creater)) { + this.attributes = + TStringUtils.setAttrValToAttributes(this.attributes, + TStoreConstants.TOKEN_CREATE_USER, creater); + } + if (createDate != null) { + String dataStr = WebParameterUtils.date2yyyyMMddHHmmss(createDate); + this.attributes = + TStringUtils.setAttrValToAttributes(this.attributes, + TStoreConstants.TOKEN_CREATE_DATE, dataStr); + } + } + + public String getCreateUser() { + return TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_USER); + } + + public Date getCreateDate() { + String dateStr = TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_DATE); + return WebParameterUtils.yyyyMMddHHmmss2date(dateStr); + } + + public String getStrCreateDate() { + return TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_DATE); + } + + public String getStrModifyDate() { + return WebParameterUtils.date2yyyyMMddHHmmss(modifyDate); + } + /** * Serialize field to json format * @@ -373,9 +407,11 @@ public class BdbClusterSettingEntity implements Serializable { } return sBuilder.append(",\"qryPriorityId\":").append(qryPriorityId) .append(",\"attributes\":\"").append(attributes).append("\"") + .append(",\"createUser\":\"").append(getCreateUser()).append("\"") + .append(",\"createDate\":\"").append(getStrCreateDate()).append("\"") .append(",\"modifyUser\":\"").append(modifyUser).append("\"") .append(",\"modifyDate\":\"") - .append(WebParameterUtils.date2yyyyMMddHHmmss(modifyDate)) + .append(getStrModifyDate()) .append("\"}"); } @@ -406,8 +442,10 @@ public class BdbClusterSettingEntity implements Serializable { } return sBuilder.append("qryPriorityId", qryPriorityId) .append("attributes", attributes) + .append("createUser", getCreateUser()) + .append("createDate", getStrCreateDate()) .append("modifyUser", modifyUser) - .append("modifyDate", modifyDate) + .append("modifyDate", getStrModifyDate()) .toString(); } } diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbGroupFilterCondEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbGroupFilterCondEntity.java index 5a964a4..6279ec1 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbGroupFilterCondEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbGroupFilterCondEntity.java @@ -40,6 +40,9 @@ public class BdbGroupFilterCondEntity implements Serializable { private String consumerGroupName; private int controlStatus = -2; // -2: undefine; 0: not started; 1:started, not limited; 2: started, limited private String attributes; + // ** Based on the data compatibility consideration of the original version: + // the creation information in this example is the last modified information, + // and the modified information is the creation information private String createUser; private Date createDate; @@ -49,7 +52,7 @@ public class BdbGroupFilterCondEntity implements Serializable { public BdbGroupFilterCondEntity(String topicName, String consumerGroupName, int controlStatus, String filterCondStr, - String createUser, Date createDate) { + String modifyUser, Date modifyDate) { this.recordKey = new StringBuilder(512) .append(topicName) @@ -59,13 +62,13 @@ public class BdbGroupFilterCondEntity implements Serializable { this.consumerGroupName = consumerGroupName; this.controlStatus = controlStatus; setFilterCondStr(filterCondStr); - this.createUser = createUser; - this.createDate = createDate; + this.createUser = modifyUser; + this.createDate = modifyDate; } public BdbGroupFilterCondEntity(String topicName, String consumerGroupName, int controlStatus, String filterCondStr, - String attributes, String createUser, Date createDate) { + String attributes, String modifyUser, Date modifyDate) { this.recordKey = new StringBuilder(512) .append(topicName) @@ -74,8 +77,8 @@ public class BdbGroupFilterCondEntity implements Serializable { this.topicName = topicName; this.consumerGroupName = consumerGroupName; this.controlStatus = controlStatus; - this.createUser = createUser; - this.createDate = createDate; + this.createUser = modifyUser; + this.createDate = modifyDate; this.attributes = attributes; setFilterCondStr(filterCondStr); } @@ -157,22 +160,14 @@ public class BdbGroupFilterCondEntity implements Serializable { this.controlStatus = controlStatus; } - public String getCreateUser() { + public String getModifyUser() { return createUser; } - public void setCreateUser(String createUser) { - this.createUser = createUser; - } - - public Date getCreateDate() { + public Date getModifyDate() { return createDate; } - public void setCreateDate(Date createDate) { - this.createDate = createDate; - } - public String getAttributes() { if (TStringUtils.isNotBlank(attributes) && !attributes.contains(TokenConstants.EQ)) { @@ -210,6 +205,41 @@ public class BdbGroupFilterCondEntity implements Serializable { String.valueOf(dataVerId)); } + // for + public void setCreateInfo(String createUser, Date createDate) { + if (TStringUtils.isNotBlank(createUser)) { + this.attributes = + TStringUtils.setAttrValToAttributes(this.attributes, + TStoreConstants.TOKEN_CREATE_USER, createUser); + } + if (createDate != null) { + String dataStr = WebParameterUtils.date2yyyyMMddHHmmss(createDate); + this.attributes = + TStringUtils.setAttrValToAttributes(this.attributes, + TStoreConstants.TOKEN_CREATE_DATE, dataStr); + } + } + + public String getCreateUser() { + return TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_USER); + } + + public Date getCreateDate() { + String dateStr = TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_DATE); + return WebParameterUtils.yyyyMMddHHmmss2date(dateStr); + } + + public String getStrModifyDate() { + return WebParameterUtils.date2yyyyMMddHHmmss(createDate); + } + + public String getStrCreateDate() { + return TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_DATE); + } + @Override public String toString() { return new ToStringBuilder(this) @@ -218,8 +248,10 @@ public class BdbGroupFilterCondEntity implements Serializable { .append("consumerGroupName", consumerGroupName) .append("controlStatus", controlStatus) .append("attributes", attributes) - .append("createUser", createUser) - .append("createDate", createDate) + .append("createUser", getCreateUser()) + .append("createDate", getStrCreateDate()) + .append("modifyUser", createUser) + .append("modifyDate", getStrModifyDate()) .toString(); } @@ -230,9 +262,10 @@ public class BdbGroupFilterCondEntity implements Serializable { .append("\",\"consumerGroupName\":\"").append(consumerGroupName) .append("\",\"filterConds\":\"").append(attributes) .append("\",\"condStatus\":").append(controlStatus) - .append(",\"createUser\":\"").append(createUser) - .append("\",\"createDate\":\"") - .append(WebParameterUtils.date2yyyyMMddHHmmss(createDate)) + .append(",\"createUser\":\"").append(getCreateUser()) + .append("\",\"createDate\":\"").append(getStrCreateDate()) + .append("\",\"modifyUser\":\"").append(createUser) + .append("\",\"modifyDate\":\"").append(getStrModifyDate()) .append("\"}"); } } diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbGroupFlowCtrlEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbGroupFlowCtrlEntity.java index 144b7e1..aca0f77 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbGroupFlowCtrlEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbGroupFlowCtrlEntity.java @@ -42,6 +42,9 @@ public class BdbGroupFlowCtrlEntity implements Serializable { private long ssdTranslateId = System.currentTimeMillis(); private boolean needSSDProc = false; //ssd private String attributes; //extra attributes + // ** Based on the data compatibility consideration of the original version: + // the creation information in this example is the last modified information, + // and the modified information is the creation information private String createUser; //create user private Date createDate; //create date @@ -53,7 +56,7 @@ public class BdbGroupFlowCtrlEntity implements Serializable { public BdbGroupFlowCtrlEntity(final String flowCtrlInfo, final int statusId, final int ruleCnt, final int qryPriorityId, final String attributes, final boolean curNeedSSDProc, - final String createUser, final Date createDate) { + final String modifyUser, final Date modifyDate) { this.statusId = statusId; this.groupName = TServerConstants.TOKEN_DEFAULT_FLOW_CONTROL; this.serialId = System.currentTimeMillis(); @@ -62,8 +65,8 @@ public class BdbGroupFlowCtrlEntity implements Serializable { this.ruleCnt = ruleCnt; this.ssdTranslateId = System.currentTimeMillis(); this.needSSDProc = curNeedSSDProc; - this.createUser = createUser; - this.createDate = createDate; + this.createUser = modifyUser; + this.createDate = modifyDate; this.setQryPriorityId(qryPriorityId); } @@ -71,16 +74,16 @@ public class BdbGroupFlowCtrlEntity implements Serializable { public BdbGroupFlowCtrlEntity(final String groupName, final String flowCtrlInfo, final int statusId, final int ruleCnt, final int qryPriorityId, final String attributes, - final boolean needSSDProc, final String createUser, - final Date createDate) { + final boolean needSSDProc, final String modifyUser, + final Date modifyDate) { this.groupName = groupName; this.serialId = System.currentTimeMillis(); this.statusId = statusId; this.flowCtrlInfo = flowCtrlInfo; this.attributes = attributes; this.ruleCnt = ruleCnt; - this.createUser = createUser; - this.createDate = createDate; + this.createUser = modifyUser; + this.createDate = modifyDate; this.needSSDProc = needSSDProc; this.ssdTranslateId = TBaseConstants.META_VALUE_UNDEFINED; this.setQryPriorityId(qryPriorityId); @@ -90,16 +93,16 @@ public class BdbGroupFlowCtrlEntity implements Serializable { public BdbGroupFlowCtrlEntity(final String groupName, final String flowCtrlInfo, final int statusId, final int ruleCnt, final String attributes, final long ssdTranslateId, - final boolean needSSDProc, final String createUser, - final Date createDate) { + final boolean needSSDProc, final String modifyUser, + final Date modifyDate) { this.groupName = groupName; this.serialId = System.currentTimeMillis(); this.statusId = statusId; this.flowCtrlInfo = flowCtrlInfo; this.attributes = attributes; this.ruleCnt = ruleCnt; - this.createUser = createUser; - this.createDate = createDate; + this.createUser = modifyUser; + this.createDate = modifyDate; this.needSSDProc = needSSDProc; this.ssdTranslateId = ssdTranslateId; } @@ -107,16 +110,16 @@ public class BdbGroupFlowCtrlEntity implements Serializable { //Constructor public BdbGroupFlowCtrlEntity(long serialId, String groupName, String flowCtrlInfo, int statusId, int ruleCnt, int qryPriorityId, - String attributes, String createUser, - Date createDate) { + String attributes, String modifyUser, + Date modifyDate) { this.groupName = groupName; this.serialId = serialId; this.statusId = statusId; this.flowCtrlInfo = flowCtrlInfo; this.attributes = attributes; this.ruleCnt = ruleCnt; - this.createUser = createUser; - this.createDate = createDate; + this.createUser = modifyUser; + this.createDate = modifyDate; this.needSSDProc = false; this.ssdTranslateId = TBaseConstants.META_VALUE_UNDEFINED; this.setQryPriorityId(qryPriorityId); @@ -155,14 +158,10 @@ public class BdbGroupFlowCtrlEntity implements Serializable { this.attributes = attributes; } - public String getCreateUser() { + public String getModifyUser() { return createUser; } - public void setCreateUser(String createUser) { - this.createUser = createUser; - } - public boolean isNeedSSDProc() { return needSSDProc; } @@ -171,14 +170,10 @@ public class BdbGroupFlowCtrlEntity implements Serializable { this.needSSDProc = needSSDProc; } - public Date getCreateDate() { + public Date getModifyDate() { return createDate; } - public void setCreateDate(Date createDate) { - this.createDate = createDate; - } - public String getFlowCtrlInfo() { return flowCtrlInfo; } @@ -253,9 +248,38 @@ public class BdbGroupFlowCtrlEntity implements Serializable { String.valueOf(allowedBrokerClientRate)); } - public void setModifyInfo(String modifyUser, Date modifyDate) { - this.createUser = modifyUser; - this.createDate = modifyDate; + public void setCreateInfo(String createUser, Date createDate) { + if (TStringUtils.isNotBlank(createUser)) { + this.attributes = + TStringUtils.setAttrValToAttributes(this.attributes, + TStoreConstants.TOKEN_CREATE_USER, createUser); + } + if (createDate != null) { + String dataStr = WebParameterUtils.date2yyyyMMddHHmmss(createDate); + this.attributes = + TStringUtils.setAttrValToAttributes(this.attributes, + TStoreConstants.TOKEN_CREATE_DATE, dataStr); + } + } + + public String getCreateUser() { + return TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_USER); + } + + public Date getCreateDate() { + String dateStr = TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_DATE); + return WebParameterUtils.yyyyMMddHHmmss2date(dateStr); + } + + public String getStrModifyDate() { + return WebParameterUtils.date2yyyyMMddHHmmss(createDate); + } + + public String getStrCreateDate() { + return TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_DATE); } @Override @@ -269,8 +293,10 @@ public class BdbGroupFlowCtrlEntity implements Serializable { .append("ssdTranslateId", ssdTranslateId) .append("needSSDProc", needSSDProc) .append("attributes", attributes) - .append("createUser", createUser) - .append("createDate", createDate) + .append("createUser", getCreateUser()) + .append("createDate", getCreateUser()) + .append("modifyUser", createUser) + .append("modifyDate", getStrModifyDate()) .toString(); } @@ -291,9 +317,10 @@ public class BdbGroupFlowCtrlEntity implements Serializable { .append(",\"qryPriorityId\":").append(getQryPriorityId()) .append(",\"flowCtrlInfo\":").append(flowCtrlInfo) .append(", \"attributes\":\"").append(attributes) - .append("\", \"createUser\":\"").append(createUser) - .append("\",\"createDate\":\"") - .append(WebParameterUtils.date2yyyyMMddHHmmss(createDate)) + .append(",\"createUser\":\"").append(getCreateUser()) + .append("\",\"createDate\":\"").append(getStrCreateDate()) + .append("\",\"modifyUser\":\"").append(createUser) + .append("\",\"modifyDate\":\"").append(getStrModifyDate()) .append("\"}"); } } diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbTopicAuthControlEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbTopicAuthControlEntity.java index 54aad1b..164ba40 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbTopicAuthControlEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/bdbstore/bdbentitys/BdbTopicAuthControlEntity.java @@ -35,6 +35,9 @@ public class BdbTopicAuthControlEntity implements Serializable { @PrimaryKey private String topicName; private int enableAuthControl = -1; // -1 : undefine; 0:disable, 1:enable + // ** Based on the data compatibility consideration of the original version: + // the creation information in this example is the last modified information, + // and the modified information is the creation information private String createUser; private Date createDate; private String attributes; @@ -44,19 +47,19 @@ public class BdbTopicAuthControlEntity implements Serializable { } public BdbTopicAuthControlEntity(String topicName, boolean enableAuthControl, - String createUser, Date createDate) { + String modifyUser, Date modifyDate) { this.topicName = topicName; if (enableAuthControl) { this.enableAuthControl = 1; } else { this.enableAuthControl = 0; } - this.createUser = createUser; - this.createDate = createDate; + this.createUser = modifyUser; + this.createDate = modifyDate; } public BdbTopicAuthControlEntity(String topicName, boolean enableAuthControl, - String attributes, String createUser, Date createDate) { + String attributes, String modifyUser, Date modifyDate) { this.topicName = topicName; if (enableAuthControl) { this.enableAuthControl = 1; @@ -64,8 +67,8 @@ public class BdbTopicAuthControlEntity implements Serializable { this.enableAuthControl = 0; } this.attributes = attributes; - this.createUser = createUser; - this.createDate = createDate; + this.createUser = modifyUser; + this.createDate = modifyDate; } @@ -101,22 +104,14 @@ public class BdbTopicAuthControlEntity implements Serializable { } } - public String getCreateUser() { + public String getModifyUser() { return createUser; } - public void setCreateUser(String createUser) { - this.createUser = createUser; - } - - public Date getCreateDate() { + public Date getModifyDate() { return createDate; } - public void setCreateDate(Date createDate) { - this.createDate = createDate; - } - public long getDataVerId() { String atrVal = TStringUtils.getAttrValFrmAttributes(this.attributes, @@ -169,13 +164,49 @@ public class BdbTopicAuthControlEntity implements Serializable { String.valueOf(maxMsgSize)); } + + public void setCreateInfo(String createUser, Date createDate) { + if (TStringUtils.isNotBlank(createUser)) { + this.attributes = + TStringUtils.setAttrValToAttributes(this.attributes, + TStoreConstants.TOKEN_CREATE_USER, createUser); + } + if (createDate != null) { + String dataStr = WebParameterUtils.date2yyyyMMddHHmmss(createDate); + this.attributes = + TStringUtils.setAttrValToAttributes(this.attributes, + TStoreConstants.TOKEN_CREATE_DATE, dataStr); + } + } + + public String getCreateUser() { + return TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_USER); + } + + public Date getCreateDate() { + String dateStr = TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_DATE); + return WebParameterUtils.yyyyMMddHHmmss2date(dateStr); + } + + public String getStrModifyDate() { + return WebParameterUtils.date2yyyyMMddHHmmss(createDate); + } + + public String getStrCreateDate() { + return TStringUtils.getAttrValFrmAttributes( + this.attributes, TStoreConstants.TOKEN_CREATE_DATE); + } + public StringBuilder toJsonString(final StringBuilder sBuilder) { return sBuilder.append("{\"type\":\"BdbConsumerGroupEntity\",") .append("\"topicName\":\"").append(topicName) .append("\",\"enableAuthControl\":\"").append(enableAuthControl) - .append("\",\"createUser\":\"").append(createUser) - .append("\",\"createDate\":\"") - .append(WebParameterUtils.date2yyyyMMddHHmmss(createDate)) + .append("\",\"createUser\":\"").append(getCreateUser()) + .append("\",\"createDate\":\"").append(getStrCreateDate()) + .append("\",\"modifyUser\":\"").append(createUser) + .append("\",\"modifyDate\":\"").append(getStrModifyDate()) .append("\",\"attributes\":\"").append(attributes).append("\"}"); } @@ -184,8 +215,10 @@ public class BdbTopicAuthControlEntity implements Serializable { return new ToStringBuilder(this) .append("topicName", topicName) .append("enableAuthControl", enableAuthControl) - .append("createUser", createUser) - .append("createDate", createDate) + .append("createUser", getCreateUser()) + .append("createDate", getCreateUser()) + .append("modifyUser", createUser) + .append("modifyDate", getStrModifyDate()) .append("attributes", attributes) .toString(); } diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/TStoreConstants.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/TStoreConstants.java index 0263cc2..a1e58a3 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/TStoreConstants.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/TStoreConstants.java @@ -45,4 +45,8 @@ public final class TStoreConstants { public static final String TOKEN_MCACHE_MSG_CNT = "memCacheMsgCntInK"; public static final String TOKEN_MCACHE_MSG_SIZE = "memCacheMsgSizeInMB"; public static final String TOKEN_MCACHE_FLUSH_INTVL = "memCacheFlushIntvl"; + public static final String TOKEN_CREATE_USER = "creater"; + public static final String TOKEN_CREATE_DATE = "createDate"; + public static final String TOKEN_MODIFY_USER = "modifier"; + public static final String TOKEN_MODIFY_DATE = "modifyDate"; } diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntity.java index 24e97a8..fab9544 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/BaseEntity.java @@ -29,6 +29,7 @@ import org.apache.tubemq.server.common.TServerConstants; import org.apache.tubemq.server.common.utils.WebParameterUtils; + // AbstractEntity: entity's abstract class public class BaseEntity implements Serializable, Cloneable { @@ -55,10 +56,8 @@ public class BaseEntity implements Serializable, Cloneable { public BaseEntity(BaseEntity other) { this.dataVersionId = other.dataVersionId; - this.createUser = other.createUser; - this.setCreateDate(other.createDate); - this.modifyUser = other.modifyUser; - this.setModifyDate(other.modifyDate); + setCreateInfo(other.createUser, other.createDate); + setModifyInfo(other.modifyUser, other.modifyDate); this.serialId.set(other.serialId.get()); this.attributes = other.attributes; } @@ -77,10 +76,8 @@ public class BaseEntity implements Serializable, Cloneable { String createUser, Date createDate, String modifyUser, Date modifyDate) { this.dataVersionId = dataVersionId; - this.createUser = createUser; - this.setCreateDate(createDate); - this.modifyUser = modifyUser; - this.setModifyDate(modifyDate); + setCreateInfo(createUser, createDate); + setModifyInfo(modifyUser, modifyDate); updSerialId(); } @@ -144,6 +141,20 @@ public class BaseEntity implements Serializable, Cloneable { return attributes; } + public void setCreateInfo(String creater, Date createDate) { + if (TStringUtils.isNotBlank(creater)) { + this.createUser = creater; + } + setCreateDate(createDate); + } + + public void setModifyInfo(String modifyUser, Date modifyDate) { + if (TStringUtils.isNotBlank(modifyUser)) { + this.modifyUser = modifyUser; + } + setModifyDate(modifyDate); + } + public void setAttributes(String attributes) { this.attributes = attributes; } @@ -244,11 +255,17 @@ public class BaseEntity implements Serializable, Cloneable { } private void setModifyDate(Date date) { + if (date == null) { + return; + } this.modifyDate = date; this.modifyDateStr = WebParameterUtils.date2yyyyMMddHHmmss(date); } private void setCreateDate(Date date) { + if (date == null) { + return; + } this.createDate = date; this.createDateStr = WebParameterUtils.date2yyyyMMddHHmmss(date); } diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/ClusterSettingEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/ClusterSettingEntity.java index 151ff7e..39a889d 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/ClusterSettingEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/ClusterSettingEntity.java @@ -64,7 +64,8 @@ public class ClusterSettingEntity extends BaseEntity implements Cloneable { // Constructor by BdbClusterSettingEntity public ClusterSettingEntity(BdbClusterSettingEntity bdbEntity) { - super(bdbEntity.getModifyUser(), bdbEntity.getModifyDate(), + super(bdbEntity.getConfigId(), + bdbEntity.getCreateUser(), bdbEntity.getCreateDate(), bdbEntity.getModifyUser(), bdbEntity.getModifyDate()); fillDefaultValue(); TopicPropGroup defTopicProps = @@ -99,6 +100,7 @@ public class ClusterSettingEntity extends BaseEntity implements Cloneable { if (TStringUtils.isNotBlank(clsDefTopicProps.getDataPath())) { bdbEntity.setDefDataPath(clsDefTopicProps.getDataPath()); } + bdbEntity.setCreateInfo(getCreateUser(), getCreateDate()); bdbEntity.setDefDataType(clsDefTopicProps.getDataStoreType()); bdbEntity.setEnableGloFlowCtrl(enableFlowCtrl()); bdbEntity.setGloFlowCtrlCnt(gloFlowCtrlRuleCnt); diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupConsumeCtrlEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupConsumeCtrlEntity.java index b125257..477bab8 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupConsumeCtrlEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupConsumeCtrlEntity.java @@ -54,7 +54,8 @@ public class GroupConsumeCtrlEntity extends BaseEntity implements Cloneable { public GroupConsumeCtrlEntity(BdbGroupFilterCondEntity bdbEntity) { super(bdbEntity.getDataVerId(), - bdbEntity.getCreateUser(), bdbEntity.getCreateDate()); + bdbEntity.getModifyUser(), bdbEntity.getModifyDate()); + setCreateInfo(bdbEntity.getCreateUser(), bdbEntity.getCreateDate()); this.setGroupAndTopic(bdbEntity.getConsumerGroupName(), bdbEntity.getTopicName()); if (bdbEntity.getControlStatus() == 2) { this.filterEnable = EnableStatus.STATUS_ENABLE; @@ -74,6 +75,7 @@ public class GroupConsumeCtrlEntity extends BaseEntity implements Cloneable { new BdbGroupFilterCondEntity(topicName, groupName, filterEnable.getCode(), filterCondStr, getAttributes(), getModifyUser(), getModifyDate()); + bdbEntity.setCreateInfo(getCreateUser(), getCreateDate()); bdbEntity.setDataVerId(getDataVerId()); bdbEntity.setConsumeEnable(consumeEnable); bdbEntity.setDisableConsumeReason(disableReason); diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupResCtrlEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupResCtrlEntity.java index 69c280c..a66fb74 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupResCtrlEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupResCtrlEntity.java @@ -54,7 +54,8 @@ public class GroupResCtrlEntity extends BaseEntity implements Cloneable { public GroupResCtrlEntity(BdbGroupFlowCtrlEntity bdbEntity) { super(bdbEntity.getSerialId(), - bdbEntity.getCreateUser(), bdbEntity.getCreateDate()); + bdbEntity.getModifyUser(), bdbEntity.getModifyDate()); + setCreateInfo(bdbEntity.getCreateUser(), bdbEntity.getCreateDate()); this.groupName = bdbEntity.getGroupName(); this.qryPriorityId = bdbEntity.getQryPriorityId(); this.ruleCnt = bdbEntity.getRuleCnt(); @@ -76,6 +77,7 @@ public class GroupResCtrlEntity extends BaseEntity implements Cloneable { new BdbGroupFlowCtrlEntity(getDataVerId(), this.groupName, this.flowCtrlInfo, statusId, this.ruleCnt, this.qryPriorityId, getAttributes(), getModifyUser(), getModifyDate()); + bdbEntity.setCreateInfo(getCreateUser(), getCreateDate()); bdbEntity.setResCheckStatus(resCheckStatus); bdbEntity.setAllowedBrokerClientRate(allowedBrokerClientRate); return bdbEntity; diff --git a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/TopicCtrlEntity.java b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/TopicCtrlEntity.java index 0ea8559..13a01e8 100644 --- a/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/TopicCtrlEntity.java +++ b/tubemq-server/src/main/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/TopicCtrlEntity.java @@ -63,7 +63,8 @@ public class TopicCtrlEntity extends BaseEntity implements Cloneable { public TopicCtrlEntity(BdbTopicAuthControlEntity bdbEntity) { super(bdbEntity.getDataVerId(), - bdbEntity.getCreateUser(), bdbEntity.getCreateDate()); + bdbEntity.getModifyUser(), bdbEntity.getModifyDate()); + setCreateInfo(bdbEntity.getCreateUser(), bdbEntity.getCreateDate()); this.topicName = bdbEntity.getTopicName(); this.topicNameId = bdbEntity.getTopicId(); this.fillMaxMsgSizeInB(bdbEntity.getMaxMsgSize()); @@ -79,6 +80,7 @@ public class TopicCtrlEntity extends BaseEntity implements Cloneable { BdbTopicAuthControlEntity bdbEntity = new BdbTopicAuthControlEntity(topicName, isAuthCtrlEnable(), getAttributes(), getModifyUser(), getModifyDate()); + bdbEntity.setCreateInfo(getCreateUser(), getCreateDate()); bdbEntity.setTopicId(topicNameId); bdbEntity.setDataVerId(getDataVerId()); bdbEntity.setMaxMsgSize(maxMsgSizeInB); diff --git a/tubemq-server/src/test/java/org/apache/tubemq/server/common/WebParameterUtilsTest.java b/tubemq-server/src/test/java/org/apache/tubemq/server/common/WebParameterUtilsTest.java index f27772a..2d13258 100644 --- a/tubemq-server/src/test/java/org/apache/tubemq/server/common/WebParameterUtilsTest.java +++ b/tubemq-server/src/test/java/org/apache/tubemq/server/common/WebParameterUtilsTest.java @@ -24,6 +24,7 @@ import java.util.Map; import java.util.Set; import java.util.TreeSet; +import org.apache.tubemq.corebase.utils.TStringUtils; import org.apache.tubemq.server.common.fielddef.WebFieldDef; import org.apache.tubemq.server.common.utils.ProcessResult; import org.apache.tubemq.server.common.utils.WebParameterUtils; @@ -242,8 +243,7 @@ public class WebParameterUtilsTest { retEntry = (BaseEntity) result.getRetData(); Assert.assertEquals(String.valueOf(retEntry.getDataVerId()), paramCntrMap.get(WebFieldDef.DATAVERSIONID.name)); - Assert.assertEquals(retEntry.getCreateUser(), - paramCntrMap.get(WebFieldDef.CREATEUSER.name)); + Assert.assertTrue(TStringUtils.isBlank(retEntry.getCreateUser())); Assert.assertEquals(retEntry.getModifyUser(), paramCntrMap.get(WebFieldDef.MODIFYUSER.name)); Assert.assertEquals(WebParameterUtils.date2yyyyMMddHHmmss(retEntry.getModifyDate()), diff --git a/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupConsumeCtrlEntityTest.java b/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupConsumeCtrlEntityTest.java index aafacb2..974419e 100644 --- a/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupConsumeCtrlEntityTest.java +++ b/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupConsumeCtrlEntityTest.java @@ -49,8 +49,8 @@ public class GroupConsumeCtrlEntityTest { Assert.assertEquals(bdbEntity1.getControlStatus(), 2); Assert.assertTrue(ctrlEntry1.getFilterEnable().isEnable()); Assert.assertEquals(ctrlEntry1.getConsumeEnable(), bdbEntity1.getConsumeEnable()); - Assert.assertEquals(ctrlEntry1.getCreateUser(), bdbEntity1.getCreateUser()); - Assert.assertEquals(ctrlEntry1.getCreateDate(), bdbEntity1.getCreateDate()); + Assert.assertEquals(ctrlEntry1.getCreateUser(), bdbEntity1.getModifyUser()); + Assert.assertEquals(ctrlEntry1.getCreateDate(), bdbEntity1.getModifyDate()); Assert.assertEquals(ctrlEntry1.getAttributes(), bdbEntity1.getAttributes()); Assert.assertEquals(ctrlEntry1.getDisableReason(), bdbEntity1.getDisableConsumeReason()); Assert.assertEquals(ctrlEntry1.getRecordKey(), bdbEntity1.getRecordKey()); @@ -80,10 +80,10 @@ public class GroupConsumeCtrlEntityTest { Assert.assertEquals(bdbEntity3.getControlStatus(), 2); Assert.assertTrue(ctrlEntry2.getFilterEnable().isEnable()); Assert.assertEquals(ctrlEntry2.getConsumeEnable(), bdbEntity3.getConsumeEnable()); - Assert.assertEquals(opInfoEntity.getCreateUser(), bdbEntity3.getCreateUser()); - Assert.assertEquals(opInfoEntity.getCreateDate(), bdbEntity3.getCreateDate()); - Assert.assertNotEquals(ctrlEntry2.getCreateDate(), bdbEntity3.getCreateDate()); - Assert.assertNotEquals(ctrlEntry2.getCreateUser(), bdbEntity3.getCreateUser()); + Assert.assertEquals(opInfoEntity.getCreateUser(), bdbEntity3.getModifyUser()); + Assert.assertEquals(opInfoEntity.getCreateDate(), bdbEntity3.getModifyDate()); + Assert.assertNotEquals(ctrlEntry2.getCreateDate(), bdbEntity3.getModifyDate()); + Assert.assertNotEquals(ctrlEntry2.getCreateUser(), bdbEntity3.getModifyUser()); Assert.assertEquals(ctrlEntry2.getAttributes(), bdbEntity3.getAttributes()); Assert.assertEquals(ctrlEntry2.getDisableReason(), bdbEntity3.getDisableConsumeReason()); Assert.assertEquals(ctrlEntry2.getRecordKey(), bdbEntity3.getRecordKey()); diff --git a/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupResCtrlEntityTest.java b/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupResCtrlEntityTest.java index 615f13b..b04a375 100644 --- a/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupResCtrlEntityTest.java +++ b/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/GroupResCtrlEntityTest.java @@ -64,8 +64,8 @@ public class GroupResCtrlEntityTest { Assert.assertEquals(bdbEntity2.getStatusId(), 1); Assert.assertEquals(bdbEntity2.getFlowCtrlInfo(), flowCtrlInfo); Assert.assertEquals(bdbEntity2.getRuleCnt(), ruleCnt); - Assert.assertEquals(bdbEntity2.getCreateUser(), createUser); - Assert.assertEquals(bdbEntity2.getCreateDate(), createDate); + Assert.assertEquals(bdbEntity2.getModifyUser(), createUser); + Assert.assertEquals(bdbEntity2.getModifyDate(), createDate); Assert.assertEquals(bdbEntity2.getSerialId(), dataVerId); bdbEntity2.setResCheckStatus(EnableStatus.STATUS_ENABLE); // case 3 @@ -78,8 +78,10 @@ public class GroupResCtrlEntityTest { Assert.assertTrue(resEntry3.getFlowCtrlStatus().isEnable()); Assert.assertEquals(bdbEntity2.getFlowCtrlInfo(), resEntry3.getFlowCtrlInfo()); Assert.assertEquals(bdbEntity2.getRuleCnt(), resEntry3.getRuleCnt()); - Assert.assertEquals(bdbEntity2.getCreateUser(), resEntry3.getCreateUser()); - Assert.assertEquals(bdbEntity2.getCreateDate(), resEntry3.getCreateDate()); + Assert.assertEquals(bdbEntity2.getModifyUser(), resEntry3.getModifyUser()); + Assert.assertEquals(bdbEntity2.getModifyDate(), resEntry3.getModifyDate()); + Assert.assertEquals(bdbEntity2.getModifyUser(), resEntry3.getCreateUser()); + Assert.assertEquals(bdbEntity2.getModifyDate(), resEntry3.getCreateDate()); Assert.assertEquals(bdbEntity2.getSerialId(), resEntry3.getDataVerId()); // case 4 long newDataVerId = 99; @@ -110,6 +112,8 @@ public class GroupResCtrlEntityTest { Assert.assertNotEquals(resEntry4.getRuleCnt(), resEntry3.getRuleCnt()); Assert.assertEquals(resEntry4.getCreateUser(), resEntry3.getCreateUser()); Assert.assertEquals(resEntry4.getCreateDate(), resEntry3.getCreateDate()); + Assert.assertEquals(resEntry4.getModifyUser(), resEntry3.getModifyUser()); + Assert.assertEquals(resEntry4.getModifyDate(), resEntry3.getModifyDate()); Assert.assertNotEquals(resEntry4.getDataVerId(), resEntry3.getDataVerId()); // case 5 BdbGroupFlowCtrlEntity bdbEntity5 = resEntry4.buildBdbGroupFlowCtrlEntity(); @@ -120,7 +124,11 @@ public class GroupResCtrlEntityTest { Assert.assertEquals(bdbEntity5.getStatusId(), 0); Assert.assertEquals(bdbEntity5.getRuleCnt(), newFlowRuleCnt); Assert.assertEquals(bdbEntity5.getFlowCtrlInfo(), newFlowCtrlRuleInfo); - Assert.assertEquals(bdbEntity5.getGroupName(), resEntry3.getGroupName()); + Assert.assertEquals(bdbEntity5.getGroupName(), bdbEntity5.getGroupName()); + Assert.assertEquals(resEntry4.getCreateUser(), bdbEntity5.getCreateUser()); + Assert.assertEquals(resEntry4.getCreateDateStr(), bdbEntity5.getStrCreateDate()); + Assert.assertEquals(resEntry4.getModifyUser(), bdbEntity5.getModifyUser()); + Assert.assertEquals(resEntry4.getModifyDateStr(), bdbEntity5.getStrModifyDate()); diff --git a/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/TopicCtrlEntityTest.java b/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/TopicCtrlEntityTest.java index 243f783..f833771 100644 --- a/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/TopicCtrlEntityTest.java +++ b/tubemq-server/src/test/java/org/apache/tubemq/server/master/metamanage/metastore/dao/entity/TopicCtrlEntityTest.java @@ -47,8 +47,8 @@ public class TopicCtrlEntityTest { Assert.assertEquals(bdbEntity1.getTopicId(), TBaseConstants.META_VALUE_UNDEFINED); Assert.assertEquals(bdbEntity1.isEnableAuthControl(), enableAuthControl); Assert.assertEquals(bdbEntity1.getMaxMsgSize(), TBaseConstants.META_VALUE_UNDEFINED); - Assert.assertEquals(bdbEntity1.getCreateUser(), createUser); - Assert.assertEquals(bdbEntity1.getCreateDate(), createDate); + Assert.assertEquals(bdbEntity1.getModifyUser(), createUser); + Assert.assertEquals(bdbEntity1.getModifyDate(), createDate); Assert.assertEquals(bdbEntity1.getDataVerId(), TBaseConstants.META_VALUE_UNDEFINED); bdbEntity1.setMaxMsgSize(maxMsgSizeInB); Assert.assertEquals(bdbEntity1.getMaxMsgSize(), maxMsgSizeInB); @@ -62,6 +62,8 @@ public class TopicCtrlEntityTest { TBaseConstants.META_MIN_ALLOWED_MESSAGE_SIZE_MB); Assert.assertEquals(ctrlEntity1.getCreateUser(), createUser); Assert.assertEquals(ctrlEntity1.getCreateDate(), createDate); + Assert.assertEquals(ctrlEntity1.getModifyUser(), createUser); + Assert.assertEquals(ctrlEntity1.getModifyDate(), createDate); Assert.assertEquals(ctrlEntity1.getDataVerId(), TBaseConstants.META_VALUE_UNDEFINED); // case 2 long dataVerId2 = 555; @@ -100,8 +102,10 @@ public class TopicCtrlEntityTest { Assert.assertEquals(bdbEntity3.isEnableAuthControl(), ctrlEntity2.getAuthCtrlStatus().isEnable()); Assert.assertEquals(bdbEntity3.getMaxMsgSize(), ctrlEntity2.getMaxMsgSizeInB()); - Assert.assertEquals(bdbEntity3.getCreateUser(), ctrlEntity2.getModifyUser()); - Assert.assertEquals(bdbEntity3.getCreateDate(), ctrlEntity2.getModifyDate()); + Assert.assertEquals(bdbEntity3.getModifyUser(), ctrlEntity2.getModifyUser()); + Assert.assertEquals(bdbEntity3.getStrModifyDate(), ctrlEntity2.getModifyDateStr()); + Assert.assertEquals(bdbEntity3.getCreateUser(), ctrlEntity2.getCreateUser()); + Assert.assertEquals(bdbEntity3.getStrCreateDate(), ctrlEntity2.getCreateDateStr()); Assert.assertEquals(bdbEntity3.getDataVerId(), ctrlEntity2.getDataVerId()); // case 4 TopicCtrlEntity ctrlEntity4 = new TopicCtrlEntity(bdbEntity3); @@ -111,8 +115,10 @@ public class TopicCtrlEntityTest { Assert.assertEquals(ctrlEntity4.getTopicId(), ctrlEntity2.getTopicId()); Assert.assertEquals(ctrlEntity4.getAuthCtrlStatus(), ctrlEntity2.getAuthCtrlStatus()); Assert.assertEquals(ctrlEntity4.getMaxMsgSizeInB(), ctrlEntity2.getMaxMsgSizeInB()); - Assert.assertEquals(ctrlEntity4.getCreateUser(), ctrlEntity2.getModifyUser()); - Assert.assertEquals(ctrlEntity4.getCreateDate(), ctrlEntity2.getModifyDate()); + Assert.assertEquals(ctrlEntity4.getCreateUser(), ctrlEntity2.getCreateUser()); + Assert.assertEquals(ctrlEntity4.getCreateDateStr(), ctrlEntity2.getCreateDateStr()); + Assert.assertEquals(ctrlEntity4.getModifyUser(), ctrlEntity2.getModifyUser()); + Assert.assertEquals(ctrlEntity4.getModifyDateStr(), ctrlEntity2.getModifyDateStr()); Assert.assertEquals(ctrlEntity4.getDataVerId(), ctrlEntity2.getDataVerId()); }
