/// <summary> /// Perform a set based update using the specified index. /// </summary> /// <param name="indexName">Name of the index.</param> /// <param name="queryToUpdate">The query to update.</param> /// <param name="patchRequests">The patch requests.</param> /// <param name="allowStale">if set to <c>true</c> [allow stale].</param> public void UpdateByIndex(string indexName, IndexQuery queryToUpdate, PatchRequest[] patchRequests, bool allowStale) { CurrentOperationContext.Headers.Value = OperationsHeaders; var databaseBulkOperations = new DatabaseBulkOperations(database, RavenTransactionAccessor.GetTransactionInformation()); databaseBulkOperations.UpdateByIndex(indexName, queryToUpdate, patchRequests, allowStale); }
public JsonDocument[] Get(string[] ids) { CurrentRavenOperation.Headers.Value = OperationsHeaders; return(ids .Select(id => database.Get(id, RavenTransactionAccessor.GetTransactionInformation())) .Where(document => document != null) .ToArray()); }
/// <summary> /// Executed the specified commands as a single batch /// </summary> /// <param name="commandDatas">The command data.</param> public BatchResult[] Batch(IEnumerable <ICommandData> commandDatas) { foreach (var commandData in commandDatas) { commandData.TransactionInformation = RavenTransactionAccessor.GetTransactionInformation(); } CurrentOperationContext.Headers.Value = OperationsHeaders; return(database.Batch(commandDatas)); }
/// <summary> /// Gets the results for the specified ids. /// </summary> /// <param name="ids">The ids.</param> /// <param name="includes">The includes.</param> /// <returns></returns> public MultiLoadResult Get(string[] ids, string[] includes) { CurrentOperationContext.Headers.Value = OperationsHeaders; return(new MultiLoadResult { Results = ids .Select(id => database.Get(id, RavenTransactionAccessor.GetTransactionInformation())) .Where(document => document != null) .Select(x => x.ToJson()) .ToList() }); }
private static void AddTransactionInformation(JObject metadata) { var transactionInformation = RavenTransactionAccessor.GetTransactionInformation(); if (transactionInformation == null) { return; } string txInfo = string.Format("{0}, {1}", transactionInformation.Id, transactionInformation.Timeout); metadata["Raven-Transaction-Information"] = new JValue(txInfo); }
/// <summary> /// Deletes the document with the specified key. /// </summary> /// <param name="key">The key.</param> /// <param name="etag">The etag.</param> public void Delete(string key, Guid?etag) { CurrentOperationContext.Headers.Value = OperationsHeaders; database.Delete(key, etag, RavenTransactionAccessor.GetTransactionInformation()); }
/// <summary> /// Puts the document with the specified key in the database /// </summary> /// <param name="key">The key.</param> /// <param name="etag">The etag.</param> /// <param name="document">The document.</param> /// <param name="metadata">The metadata.</param> /// <returns></returns> public PutResult Put(string key, Guid?etag, JObject document, JObject metadata) { CurrentOperationContext.Headers.Value = OperationsHeaders; return(database.Put(key, etag, document, metadata, RavenTransactionAccessor.GetTransactionInformation())); }
/// <summary> /// Gets the document for the specified key. /// </summary> /// <param name="key">The key.</param> /// <returns></returns> public JsonDocument Get(string key) { CurrentOperationContext.Headers.Value = OperationsHeaders; return(database.Get(key, RavenTransactionAccessor.GetTransactionInformation())); }
public void DeleteByIndex(string indexName, IndexQuery queryToDelete, bool allowStale) { var databaseBulkOperations = new DatabaseBulkOperations(database, RavenTransactionAccessor.GetTransactionInformation()); databaseBulkOperations.DeleteByIndex(indexName, queryToDelete, allowStale); }