package com.ctrip.framework.apollo.biz.entity; import com.google.common.base.MoreObjects; import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.PrePersist; import javax.persistence.PreUpdate; import javax.persistence.Table; /** * @author Jason Song(song_s@ctrip.com) */ @Entity @Table(name = "InstanceConfig") public class InstanceConfig { @Id @GeneratedValue @Column(name = "Id") private long id; @Column(name = "InstanceId") private long instanceId; @Column(name = "ConfigAppId", nullable = false) private String configAppId; @Column(name = "ConfigClusterName", nullable = false) private String configClusterName; @Column(name = "ConfigNamespaceName", nullable = false) private String configNamespaceName; @Column(name = "ReleaseKey", nullable = false) private String releaseKey; @Column(name = "ReleaseDeliveryTime", nullable = false) private Date releaseDeliveryTime; @Column(name = "DataChange_CreatedTime", nullable = false) private Date dataChangeCreatedTime; @Column(name = "DataChange_LastTime") private Date dataChangeLastModifiedTime; @PrePersist protected void prePersist() { if (this.dataChangeCreatedTime == null) { dataChangeCreatedTime = new Date(); } if (this.dataChangeLastModifiedTime == null) { dataChangeLastModifiedTime = dataChangeCreatedTime; } } @PreUpdate protected void preUpdate() { this.dataChangeLastModifiedTime = new Date(); } public long getId() { return id; } public void setId(long id) { this.id = id; } public long getInstanceId() { return instanceId; } public void setInstanceId(long instanceId) { this.instanceId = instanceId; } public String getConfigAppId() { return configAppId; } public void setConfigAppId(String configAppId) { this.configAppId = configAppId; } public String getConfigNamespaceName() { return configNamespaceName; } public void setConfigNamespaceName(String configNamespaceName) { this.configNamespaceName = configNamespaceName; } public String getReleaseKey() { return releaseKey; } public void setReleaseKey(String releaseKey) { this.releaseKey = releaseKey; } public Date getDataChangeCreatedTime() { return dataChangeCreatedTime; } public void setDataChangeCreatedTime(Date dataChangeCreatedTime) { this.dataChangeCreatedTime = dataChangeCreatedTime; } public Date getDataChangeLastModifiedTime() { return dataChangeLastModifiedTime; } public void setDataChangeLastModifiedTime(Date dataChangeLastModifiedTime) { this.dataChangeLastModifiedTime = dataChangeLastModifiedTime; } public String getConfigClusterName() { return configClusterName; } public void setConfigClusterName(String configClusterName) { this.configClusterName = configClusterName; } public Date getReleaseDeliveryTime() { return releaseDeliveryTime; } public void setReleaseDeliveryTime(Date releaseDeliveryTime) { this.releaseDeliveryTime = releaseDeliveryTime; } @Override public String toString() { return MoreObjects.toStringHelper(this) .omitNullValues() .add("id", id) .add("configAppId", configAppId) .add("configClusterName", configClusterName) .add("configNamespaceName", configNamespaceName) .add("releaseKey", releaseKey) .add("dataChangeCreatedTime", dataChangeCreatedTime) .add("dataChangeLastModifiedTime", dataChangeLastModifiedTime) .toString(); } }