2019-10-24 11:39:41 +02:00
|
|
|
package eu.dnetlib.dhp.schema.oaf;
|
|
|
|
|
|
|
|
import java.io.Serializable;
|
|
|
|
import java.util.List;
|
2020-03-11 16:57:28 +01:00
|
|
|
import java.util.Objects;
|
2019-10-24 11:39:41 +02:00
|
|
|
|
2019-10-25 18:10:30 +02:00
|
|
|
public class Dataset extends Result implements Serializable {
|
2019-10-24 11:39:41 +02:00
|
|
|
|
|
|
|
private Field<String> storagedate;
|
|
|
|
|
|
|
|
private Field<String> device;
|
|
|
|
|
|
|
|
private Field<String> size;
|
|
|
|
|
|
|
|
private Field<String> version;
|
|
|
|
|
|
|
|
private Field<String> lastmetadataupdate;
|
|
|
|
|
|
|
|
private Field<String> metadataversionnumber;
|
|
|
|
|
|
|
|
private List<GeoLocation> geolocation;
|
|
|
|
|
2019-12-12 15:18:48 +01:00
|
|
|
public Field<String> getStoragedate() {
|
2019-10-24 11:39:41 +02:00
|
|
|
return storagedate;
|
|
|
|
}
|
|
|
|
|
2019-10-25 18:10:30 +02:00
|
|
|
public void setStoragedate(Field<String> storagedate) {
|
2019-10-24 11:39:41 +02:00
|
|
|
this.storagedate = storagedate;
|
|
|
|
}
|
|
|
|
|
|
|
|
public Field<String> getDevice() {
|
|
|
|
return device;
|
|
|
|
}
|
|
|
|
|
2019-10-25 18:10:30 +02:00
|
|
|
public void setDevice(Field<String> device) {
|
2019-10-24 11:39:41 +02:00
|
|
|
this.device = device;
|
|
|
|
}
|
|
|
|
|
|
|
|
public Field<String> getSize() {
|
|
|
|
return size;
|
|
|
|
}
|
|
|
|
|
2019-10-25 18:10:30 +02:00
|
|
|
public void setSize(Field<String> size) {
|
2019-10-24 11:39:41 +02:00
|
|
|
this.size = size;
|
|
|
|
}
|
|
|
|
|
|
|
|
public Field<String> getVersion() {
|
|
|
|
return version;
|
|
|
|
}
|
|
|
|
|
2019-10-25 18:10:30 +02:00
|
|
|
public void setVersion(Field<String> version) {
|
2019-10-24 11:39:41 +02:00
|
|
|
this.version = version;
|
|
|
|
}
|
|
|
|
|
|
|
|
public Field<String> getLastmetadataupdate() {
|
|
|
|
return lastmetadataupdate;
|
|
|
|
}
|
|
|
|
|
2019-10-25 18:10:30 +02:00
|
|
|
public void setLastmetadataupdate(Field<String> lastmetadataupdate) {
|
2019-10-24 11:39:41 +02:00
|
|
|
this.lastmetadataupdate = lastmetadataupdate;
|
|
|
|
}
|
|
|
|
|
|
|
|
public Field<String> getMetadataversionnumber() {
|
|
|
|
return metadataversionnumber;
|
|
|
|
}
|
|
|
|
|
2019-10-25 18:10:30 +02:00
|
|
|
public void setMetadataversionnumber(Field<String> metadataversionnumber) {
|
2019-10-24 11:39:41 +02:00
|
|
|
this.metadataversionnumber = metadataversionnumber;
|
|
|
|
}
|
|
|
|
|
|
|
|
public List<GeoLocation> getGeolocation() {
|
|
|
|
return geolocation;
|
|
|
|
}
|
|
|
|
|
2019-10-25 18:10:30 +02:00
|
|
|
public void setGeolocation(List<GeoLocation> geolocation) {
|
2019-10-24 11:39:41 +02:00
|
|
|
this.geolocation = geolocation;
|
2019-10-25 10:55:35 +02:00
|
|
|
}
|
2019-12-12 15:18:48 +01:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public void mergeFrom(OafEntity e) {
|
|
|
|
super.mergeFrom(e);
|
|
|
|
final Dataset d = (Dataset) e;
|
|
|
|
|
|
|
|
storagedate = d.getStoragedate() != null && compareTrust(this, e)<0? d.getStoragedate() : storagedate;
|
|
|
|
|
|
|
|
device= d.getDevice() != null && compareTrust(this, e)<0? d.getDevice() : device;
|
|
|
|
|
|
|
|
size= d.getSize() != null && compareTrust(this, e)<0? d.getSize() : size;
|
|
|
|
|
|
|
|
version= d.getVersion() != null && compareTrust(this, e)<0? d.getVersion() : version;
|
|
|
|
|
|
|
|
lastmetadataupdate= d.getLastmetadataupdate() != null && compareTrust(this, e)<0? d.getLastmetadataupdate() :lastmetadataupdate;
|
|
|
|
|
|
|
|
metadataversionnumber= d.getMetadataversionnumber() != null && compareTrust(this, e)<0? d.getMetadataversionnumber() : metadataversionnumber;
|
|
|
|
|
|
|
|
geolocation = mergeLists(geolocation, d.getGeolocation());
|
|
|
|
|
|
|
|
mergeOAFDataInfo(d);
|
|
|
|
}
|
2020-03-11 16:57:28 +01:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public boolean equals(Object o) {
|
|
|
|
if (this == o) return true;
|
|
|
|
if (o == null || getClass() != o.getClass()) return false;
|
|
|
|
if (!super.equals(o)) return false;
|
|
|
|
Dataset dataset = (Dataset) o;
|
|
|
|
return Objects.equals(storagedate, dataset.storagedate) &&
|
|
|
|
Objects.equals(device, dataset.device) &&
|
|
|
|
Objects.equals(size, dataset.size) &&
|
|
|
|
Objects.equals(version, dataset.version) &&
|
|
|
|
Objects.equals(lastmetadataupdate, dataset.lastmetadataupdate) &&
|
|
|
|
Objects.equals(metadataversionnumber, dataset.metadataversionnumber) &&
|
|
|
|
Objects.equals(geolocation, dataset.geolocation);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public int hashCode() {
|
|
|
|
return Objects.hash(super.hashCode(), storagedate, device, size, version, lastmetadataupdate, metadataversionnumber, geolocation);
|
|
|
|
}
|
2019-10-24 11:39:41 +02:00
|
|
|
}
|