@Override @PrePersist public void calculateHashes() { if (myHashIdentity == null) { String resourceType = getResourceType(); String paramName = getParamName(); setHashIdentity(calculateHashIdentity(resourceType, paramName)); } }
public Long getHashIdentity() { calculateHashes(); return myHashIdentity; }
@Override public boolean equals(Object theObj) { if (this == theObj) { return true; } if (theObj == null) { return false; } if (!(theObj instanceof ResourceIndexedSearchParamDate)) { return false; } ResourceIndexedSearchParamDate obj = (ResourceIndexedSearchParamDate) theObj; EqualsBuilder b = new EqualsBuilder(); b.append(getParamName(), obj.getParamName()); b.append(getResource(), obj.getResource()); b.append(getTimeFromDate(getValueHigh()), getTimeFromDate(obj.getValueHigh())); b.append(getTimeFromDate(getValueLow()), getTimeFromDate(obj.getValueLow())); b.append(getHashIdentity(), obj.getHashIdentity()); return b.isEquals(); }
@Override public int hashCode() { HashCodeBuilder b = new HashCodeBuilder(); b.append(getParamName()); b.append(getResource()); b.append(getTimeFromDate(getValueHigh())); b.append(getTimeFromDate(getValueLow())); return b.toHashCode(); }
continue; nextEntity = new ResourceIndexedSearchParamDate(nextSpDef.getName(), nextValue.getValue(), nextValue.getValue(), nextValue.getValueAsString()); } else if (nextObject instanceof Period) { Period nextValue = (Period) nextObject; continue; nextEntity = new ResourceIndexedSearchParamDate(nextSpDef.getName(), nextValue.getStart(), nextValue.getEnd(), nextValue.getStartElement().getValueAsString()); } else if (nextObject instanceof Timing) { Timing nextValue = (Timing) nextObject; nextEntity = new ResourceIndexedSearchParamDate(nextSpDef.getName(), dates.first(), dates.last(), firstValue); } else if (nextObject instanceof StringType) { nextEntity.setResource(theEntity); retVal.add(nextEntity);
switch (type) { case DATE: param = new ResourceIndexedSearchParamDate(); break; case NUMBER:
continue; nextEntity = new ResourceIndexedSearchParamDate(nextSpDef.getName(), nextValue.getValue(), nextValue.getValue(), nextValue.getValueAsString()); } else if (nextObject instanceof Period) { Period nextValue = (Period) nextObject; continue; nextEntity = new ResourceIndexedSearchParamDate(nextSpDef.getName(), nextValue.getStart(), nextValue.getEnd(), nextValue.getStartElement().getValueAsString()); } else if (nextObject instanceof Timing) { Timing nextValue = (Timing) nextObject; nextEntity = new ResourceIndexedSearchParamDate(nextSpDef.getName(), dates.first(), dates.last(), firstValue); } else if (nextObject instanceof StringType) { nextEntity.setResource(theEntity); retVal.add(nextEntity);
continue; nextEntity = new ResourceIndexedSearchParamDate(nextSpDef.getName(), nextValue.getValue(), nextValue.getValue(), nextValue.getValueAsString()); } else if (nextObject instanceof PeriodDt) { PeriodDt nextValue = (PeriodDt) nextObject; continue; nextEntity = new ResourceIndexedSearchParamDate(nextSpDef.getName(), nextValue.getStart(), nextValue.getEnd(), nextValue.getStartElement().getValueAsString()); } else { if (!multiType) { nextEntity.setResource(theEntity); retVal.add(nextEntity);
@Override public String toString() { ToStringBuilder b = new ToStringBuilder(this, ToStringStyle.SHORT_PREFIX_STYLE); b.append("paramName", getParamName()); b.append("resourceId", getResource().getId()); // TODO: add a field so we don't need to resolve this b.append("valueLow", new InstantDt(getValueLow())); b.append("valueHigh", new InstantDt(getValueHigh())); return b.build(); }