package org.ovirt.engine.core.common.businessentities.storage;
import java.util.Date;
import java.util.Objects;
import javax.validation.constraints.Pattern;
import org.ovirt.engine.core.common.businessentities.BusinessEntity;
import org.ovirt.engine.core.common.businessentities.IVdcQueryable;
import org.ovirt.engine.core.common.utils.ValidationUtils;
import org.ovirt.engine.core.compat.Guid;
public class LibvirtSecret implements IVdcQueryable, BusinessEntity<Guid> {
private Guid id;
@Pattern(regexp = ValidationUtils.BASE_64_PATTERN, message = "LIBVIRT_SECRET_VALUE_ILLEGAL_FORMAT")
private String value;
private LibvirtSecretUsageType usageType;
private String description;
private Guid providerId;
private Date creationDate;
public LibvirtSecret() {
}
public Guid getId() {
return id;
}
public void setId(Guid id) {
this.id = id;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public LibvirtSecretUsageType getUsageType() {
return usageType;
}
public void setUsageType(LibvirtSecretUsageType usageType) {
this.usageType = usageType;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public Guid getProviderId() {
return providerId;
}
public Date getCreationDate() {
return creationDate;
}
public void setCreationDate(Date creationDate) {
this.creationDate = creationDate;
}
public void setProviderId(Guid providerId) {
this.providerId = providerId;
}
public Object getQueryableId() {
return getId();
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!(obj instanceof LibvirtSecret)) {
return false;
}
LibvirtSecret other = (LibvirtSecret) obj;
return Objects.equals(id, other.id)
&& Objects.equals(value, other.value)
&& usageType == other.usageType
&& Objects.equals(description, other.description)
&& Objects.equals(providerId, other.providerId)
&& Objects.equals(creationDate, other.creationDate);
}
@Override
public int hashCode() {
return Objects.hash(
id,
value,
usageType,
description,
providerId,
creationDate
);
}
}