public override async Task ExportDeletions(SmugglerJsonTextWriter jsonWriter, OperationState result, LastEtagsInfo maxEtagsToFetch) { jsonWriter.WritePropertyName("DocsDeletions"); jsonWriter.WriteStartArray(); result.LastDocDeleteEtag = await Operations.ExportDocumentsDeletion(jsonWriter, result.LastDocDeleteEtag, maxEtagsToFetch.LastDocDeleteEtag.IncrementBy(1)).ConfigureAwait(false); jsonWriter.WriteEndArray(); jsonWriter.WritePropertyName("AttachmentsDeletions"); jsonWriter.WriteStartArray(); result.LastAttachmentsDeleteEtag = await Operations.ExportAttachmentsDeletion(jsonWriter, result.LastAttachmentsDeleteEtag, maxEtagsToFetch.LastAttachmentsDeleteEtag.IncrementBy(1)).ConfigureAwait(false); jsonWriter.WriteEndArray(); }
public Task <Etag> ExportDocumentsDeletion(SmugglerJsonTextWriter jsonWriter, Etag startDocsEtag, Etag maxEtag) { var lastEtag = startDocsEtag; database.TransactionalStorage.Batch(accessor => { foreach (var listItem in accessor.Lists.Read(Constants.RavenPeriodicExportsDocsTombstones, startDocsEtag, maxEtag, int.MaxValue)) { var ravenJObj = new RavenJObject { { "Key", listItem.Key } }; jsonWriter.Write(ravenJObj); lastEtag = listItem.Etag; } }); return(new CompletedTask <Etag>(lastEtag)); }
public Task <Etag> ExportDocumentsDeletion(SmugglerJsonTextWriter jsonWriter, Etag startDocsEtag, Etag maxEtag) { throw new NotSupportedException("Exporting deletions is not supported for Command Line Smuggler"); }
public override Task ExportDeletions(SmugglerJsonTextWriter jsonWriter, OperationState result, LastEtagsInfo maxEtagsToFetch) { throw new NotSupportedException("Exporting deletions is not supported for Command Line Smuggler"); }
protected override Task <ExportOperationStatus> ExportAttachments(RavenConnectionStringOptions src, SmugglerJsonTextWriter jsonWriter, Etag lastEtag, Etag maxEtag, int maxNumberOfAttachmentsToExport) { if (maxEtag != null) { throw new ArgumentException("We don't support maxEtag in SmugglerDatabaseApi", maxEtag); } return(base.ExportAttachments(src, jsonWriter, lastEtag, null, maxNumberOfAttachmentsToExport)); }