}</BUG>
Response.ResponseBuilder builder = request.evaluatePreconditions(etag);
if ( builder != null ) {
builder = builder.entity("ETag mismatch");
} else {
<BUG>builder = request.evaluatePreconditions(roundedDate);
</BUG>
if ( builder != null ) {
builder = builder.entity("Date mismatch");
}

} else {
etag = new EntityTag(resource.getDescribedResource().getEtagValue());
date = resource.getDescribedResource().getLastModifiedDate();
}
if (date != null) {
roundedDate = date.minusMillis(date.toEpochMilli() % 1000);
}
Response.ResponseBuilder builder = request.evaluatePreconditions(etag);
if ( builder != null ) {
builder = builder.entity("ETag mismatch");
} else {
builder = request.evaluatePreconditions(Date.from(roundedDate));
if ( builder != null ) {
builder = builder.entity("Date mismatch");
