public virtual AtomEntry UpdateEntry(SDataBaseRequest request, AtomEntry entry)
{
Guard.ArgumentNotNull(request, "request");
Guard.ArgumentNotNull(entry, "entry");
try
{
var url = request.ToString();
var eTag = entry.GetSDataHttpETag();
var batchItem = new SDataBatchRequestItem
{
Url = url,
Method = HttpMethod.Put,
Entry = entry,
ETag = eTag
};
if (BatchProcess.Instance.AddToBatch(batchItem))
{
return null;
}
var operation = new RequestOperation(HttpMethod.Put, entry) {ETag = eTag};
return ExecuteEntryRequest(url, operation);
}
catch (SDataClientException)
{
throw;
}
catch (Exception ex)
{
throw new SDataClientException(ex.Message, ex);
}
}