package edu.gatech.i3l.fhir.jpa.entity;
import javax.persistence.MappedSuperclass;
import javax.persistence.Transient;
import ca.uhn.fhir.model.primitive.IdDt;
@MappedSuperclass
public abstract class BaseResourceEntity implements IResourceEntity{
@Transient
private Long version = 0L;
@Override
public IdDt getIdDt() {
if(version != 0L)
return new IdDt(this.getResourceType(), String.valueOf(this.getId()), String.valueOf(this.getVersion()));
return new IdDt(getResourceType(), this.getId().toString());
}
/**
* While version is Null, the system treats the entity as being the current version.
* @see //TODO document here
*/
@Override
public Long getVersion() {
return version;
}
public void setVersion(Long version) {
this.version = version;
}
}