public ResponseContext postEntry(RequestContext request) {
try {
Entry entry = getEntryFromRequest(request);
if (entry != null) {
if (!ProviderHelper.isValidEntry(entry))
return new EmptyResponseContext(400);
entry.setUpdated(new Date());
T entryObj = postEntry(entry.getTitle(),
entry.getId(),
entry.getSummary(),
entry.getUpdated(),
entry.getAuthors(),
entry.getContentElement(), request);
entry.getIdElement().setValue(getId(entryObj));
IRI feedIri = getFeedIRI(entryObj, request);
String link = getLink(entryObj, feedIri, request);
entry.addLink(link, "edit");
return buildCreateEntryResponse(link, entry);
} else {
return new EmptyResponseContext(400);
}
} catch (ResponseContextException e) {
return createErrorResponse(e);
}
}