if (r.getStatusCode() == 404)
return null;
if (r.getStatusCode() != 200 && r.getStatusCode() != 304)
throw new RiakResponseException(new RiakResponseRuntimeException(r, r.getBodyAsString()));
if (r.getStatusCode() == 200 && !(r.hasObject() || r.hasSiblings()))
throw new RiakResponseException(new RiakResponseRuntimeException(r, "Failed to parse object"));
if (r.hasSiblings())
return r.getSiblings();
return Arrays.asList(r.getObject());
}