package org.ovirt.engine.core.common.businessentities; import java.io.Serializable; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Enumerated; import javax.persistence.Id; import javax.persistence.Table; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; import org.hibernate.annotations.Type; import org.hibernate.annotations.TypeDef; import org.ovirt.engine.core.common.AuditLogSeverity; import org.ovirt.engine.core.common.AuditLogType; import org.ovirt.engine.core.common.businessentities.mapping.GuidType; import org.ovirt.engine.core.common.config.Config; import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.compat.INotifyPropertyChanged; import org.ovirt.engine.core.compat.NGuid; import org.ovirt.engine.core.compat.PropertyChangedEventArgs; //using VdcDAL.DbBroker.AuditLogHandling; //C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to .NET attributes: @XmlAccessorType(XmlAccessType.NONE) @XmlType(name = "AuditLog") @Entity @Table(name = "audit_log") @TypeDef(name = "guid", typeClass = GuidType.class) public class AuditLog extends IVdcQueryable implements INotifyPropertyChanged, Serializable { private static final long serialVersionUID = -2808392095455280186L; @Column(name = "processed") private boolean processed = false; private NGuid glusterVolumeId; private String glusterVolumeName; public AuditLog() { } public AuditLog(long audit_log_id, java.util.Date log_time, int log_type, int severity, String message, NGuid user_id, String user_name, NGuid vds_id, String vds_name, NGuid vm_id, String vm_name, NGuid vm_template_id, String vm_template_name) { this.auditLogId = audit_log_id; this.logTime = log_time; this.logType = log_type; this.severity = severity; this.message = message; this.userId = user_id; this.userName = user_name; this.vdsId = vds_id; this.vdsName = vds_name; this.vmId = vm_id; this.vmName = vm_name; this.vmTemplateId = vm_template_id; this.vmTemplateName = vm_template_name; } @Id @Column(name = "audit_log_id") private long auditLogId; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public long getaudit_log_id() { return this.auditLogId; } public void setaudit_log_id(long value) { this.auditLogId = value; } @Column(name = "log_time", nullable = false) private java.util.Date logTime = new java.util.Date(0); // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public java.util.Date getlog_time() { return this.logTime; } public void setlog_time(java.util.Date value) { this.logTime = value; } @Column(name = "message", nullable = false) private String message; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public String getmessage() { return this.message; } public void setmessage(String value) { final String INCOMPLETE_SIGN = "..."; int maxAuditLogMessageLength = Config.<Integer> GetValue(ConfigValues.MaxAuditLogMessageLength); // truncate message if exceeds configured max length. // truncated messages will be ended with "..." to indicate that message // is incomplete due to size limits. if (value.length() > maxAuditLogMessageLength) { value = value.substring(0, maxAuditLogMessageLength - (INCOMPLETE_SIGN.length() + 1)) + INCOMPLETE_SIGN; } this.message = value; } @Column(name = "user_id") @Type(type = "guid") private NGuid userId; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public NGuid getuser_id() { return this.userId; } public void setuser_id(NGuid value) { this.userId = value; } @Column(name = "user_name", length = 255) private String userName; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public String getuser_name() { return this.userName; } public void setuser_name(String value) { this.userName = value; } @Column(name = "vds_id") @Type(type = "guid") private NGuid vdsId; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement(nillable = true) public NGuid getvds_id() { return this.vdsId; } public void setvds_id(NGuid value) { this.vdsId = value; } @Column(name = "vds_name", length = 255) private String vdsName; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public String getvds_name() { return this.vdsName; } public void setvds_name(String value) { this.vdsName = value; } @Column(name = "vm_template_id") @Type(type = "guid") private NGuid vmTemplateId; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public NGuid getvm_template_id() { return this.vmTemplateId; } public void setvm_template_id(NGuid value) { this.vmTemplateId = value; } @Column(name = "vm_template_name", length = 40) private String vmTemplateName; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public String getvm_template_name() { return this.vmTemplateName; } public void setvm_template_name(String value) { this.vmTemplateName = value; } @Column(name = "vm_id") @Type(type = "guid") private NGuid vmId; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public NGuid getvm_id() { return this.vmId; } public void setvm_id(NGuid value) { this.vmId = value; } @Column(name = "vm_name", length = 255) private String vmName; // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public String getvm_name() { return this.vmName; } public void setvm_name(String value) { this.vmName = value; } // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement(name = "storage_pool_id") @Column(name = "storage_pool_id") @Type(type = "guid") private NGuid storagePoolId; public NGuid getstorage_pool_id() { return storagePoolId; } public void setstorage_pool_id(NGuid value) { storagePoolId = value; } // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement(name = "storage_pool_name") @Column(name = "storage_pool_name", length = 40) private String storagePoolName; public String getstorage_pool_name() { return storagePoolName; } public void setstorage_pool_name(String value) { storagePoolName = value; } // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement(name = "storage_domain_id") @Column(name = "storage_domain_id") @Type(type = "guid") private NGuid storageDomainId; public NGuid getstorage_domain_id() { return storageDomainId; } public void setstorage_domain_id(NGuid value) { storageDomainId = value; } // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement(name = "storage_domain_name") @Column(name = "storage_domain_name", length = 250) private String storageDomainName; public String getstorage_domain_name() { return storageDomainName; } public void setstorage_domain_name(String value) { storageDomainName = value; } // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement(name = "vds_group_id") @Column(name = "vds_group_id") @Type(type = "guid") private NGuid vdsGroupId; public NGuid getvds_group_id() { return vdsGroupId; } public void setvds_group_id(NGuid value) { vdsGroupId = value; } // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement(name = "vds_group_name") @Column(name = "vds_group_name", length = 255) private String vdsGroupName; public String getvds_group_name() { return vdsGroupName; } public void setvds_group_name(String value) { vdsGroupName = value; } public NGuid getGlusterVolumeId() { return glusterVolumeId; } public void setGlusterVolumeId(NGuid value) { glusterVolumeId = value; } public String getGlusterVolumeName() { return glusterVolumeName; } public void setGlusterVolumeName(String value) { glusterVolumeName = value; } // C# TO JAVA CONVERTER TODO TASK: Events are not available in Java: // public event PropertyChangedEventHandler PropertyChanged; protected void OnPropertyChanged(PropertyChangedEventArgs e) { /* if (PropertyChanged != null) */ { /* PropertyChanged(this, e); */ } } /** * Vitaly add */ public AuditLog(AuditLogType al_type, AuditLogSeverity al_severity, String al_msg, NGuid al_user_id, String al_user_name, NGuid al_vm_id, String al_vm_name, NGuid al_vds_id, String al_vds_name, NGuid al_vmt_id, String al_vmt_name) { logTime = new java.util.Date(); logType = al_type.getValue(); severity = al_severity.getValue(); message = al_msg; userId = al_user_id; userName = al_user_name; vmId = al_vm_id; vmName = al_vm_name; vdsId = al_vds_id; vdsName = al_vds_name; vmTemplateId = al_vmt_id; vmTemplateName = al_vmt_name; } @Column(name = "log_type", nullable = false) @Enumerated private int logType = AuditLogType.UNASSIGNED.getValue(); // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public AuditLogType getlog_type() { return AuditLogType.forValue(logType); } public void setlog_type(AuditLogType value) { logType = value.getValue(); } // We need log_typeValue for the UI, // We dont have the AuditLogType enumeration synchronized, // WSDL formatter set the enumeration value according to its string value // (enums are strings in WSDL) @XmlElement public int getlog_typeValue() { return getlog_type().getValue(); } public void setlog_typeValue(int value) { // Do nothing, this is mockup (WSDL need setter) } public String getlog_type_name() { return getlog_type().name(); } @Column(name = "severity", nullable = false) private int severity = AuditLogSeverity.NORMAL.getValue(); // C# TO JAVA CONVERTER TODO TASK: Java annotations will not correspond to // .NET attributes: @XmlElement public AuditLogSeverity getseverity() { return AuditLogSeverity.forValue(severity); } public void setseverity(AuditLogSeverity value) { severity = value.getValue(); } @Override public Object getQueryableId() { return getaudit_log_id(); } @Override public java.util.ArrayList<String> getChangeablePropertiesList() { return new java.util.ArrayList<String>(); } public void setProcessed(boolean processed) { this.processed = processed; } public boolean isProcessed() { return processed; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + (int) (auditLogId ^ (auditLogId >>> 32)); result = prime * result + ((logTime == null) ? 0 : logTime.hashCode()); result = prime * result + (logType * prime); result = prime * result + ((message == null) ? 0 : message.hashCode()); result = prime * result + ((storageDomainId == null) ? 0 : storageDomainId.hashCode()); result = prime * result + ((storagePoolId == null) ? 0 : storagePoolId.hashCode()); result = prime * result + (severity * prime); result = prime * result + ((userId == null) ? 0 : userId.hashCode()); result = prime * result + ((vdsId == null) ? 0 : vdsId.hashCode()); result = prime * result + ((vmId == null) ? 0 : vmId.hashCode()); result = prime * result + ((vmTemplateId == null) ? 0 : vmTemplateId.hashCode()); result = prime * result + (processed ? prime : 0); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; AuditLog other = (AuditLog) obj; if (auditLogId != other.auditLogId) return false; if (logTime == null) { if (other.logTime != null) return false; } else if (!logTime.equals(other.logTime)) return false; if (logType != other.logType) return false; if (message == null) { if (other.message != null) return false; } else if (!message.equals(other.message)) return false; if (storageDomainId == null) { if (other.storageDomainId != null) return false; } else if (!storageDomainId.equals(other.storageDomainId)) return false; if (storagePoolId == null) { if (other.storagePoolId != null) return false; } else if (!storagePoolId.equals(other.storagePoolId)) return false; if (severity != other.severity) return false; if (userId == null) { if (other.userId != null) return false; } else if (!userId.equals(other.userId)) return false; if (vdsId == null) { if (other.vdsId != null) return false; } else if (!vdsId.equals(other.vdsId)) return false; if (vmId == null) { if (other.vmId != null) return false; } else if (!vmId.equals(other.vmId)) return false; if (vmTemplateId == null) { if (other.vmTemplateId != null) return false; } else if (!vmTemplateId.equals(other.vmTemplateId)) return false; if(processed != other.processed) return false; return true; } }