package org.zstack.network.securitygroup; import org.zstack.header.network.l3.L3NetworkEO; import org.zstack.header.network.l3.L3NetworkVO; import org.zstack.header.vo.ForeignKey; import org.zstack.header.vo.ForeignKey.ReferenceOption; import org.zstack.header.vo.SoftDeletionCascade; import org.zstack.header.vo.SoftDeletionCascades; import javax.persistence.*; import java.sql.Timestamp; @Entity @Table @SoftDeletionCascades({ @SoftDeletionCascade(parent = L3NetworkVO.class, joinColumn = "l3NetworkUuid"), @SoftDeletionCascade(parent = SecurityGroupVO.class, joinColumn = "securityGroupUuid") }) public class SecurityGroupL3NetworkRefVO { @Id @Column private String uuid; @Column @ForeignKey(parentEntityClass = L3NetworkEO.class, onDeleteAction = ReferenceOption.CASCADE) private String l3NetworkUuid; @Column @ForeignKey(parentEntityClass = SecurityGroupVO.class, onDeleteAction = ReferenceOption.CASCADE) private String securityGroupUuid; @Column private Timestamp createDate; @Column private Timestamp lastOpDate; @PreUpdate private void preUpdate() { lastOpDate = null; } public String getUuid() { return uuid; } public void setUuid(String uuid) { this.uuid = uuid; } public String getL3NetworkUuid() { return l3NetworkUuid; } public void setL3NetworkUuid(String l3NetworkUuid) { this.l3NetworkUuid = l3NetworkUuid; } public String getSecurityGroupUuid() { return securityGroupUuid; } public void setSecurityGroupUuid(String securityGroupUuid) { this.securityGroupUuid = securityGroupUuid; } public Timestamp getCreateDate() { return createDate; } public void setCreateDate(Timestamp createDate) { this.createDate = createDate; } public Timestamp getLastOpDate() { return lastOpDate; } public void setLastOpDate(Timestamp lastOpDate) { this.lastOpDate = lastOpDate; } }