public async Task SaveReplicationsAsync(CountersReplicationDocument newReplicationDocument, CancellationToken token = default(CancellationToken))
        {
            AssertInitialized();
            var requestUriString = $"{Url}/cs/{Name}/replications/save";

            using (var request = CreateHttpJsonRequest(requestUriString, HttpMethods.Post))
            {
                await request.WriteAsync(RavenJObject.FromObject(newReplicationDocument)).WithCancellation(token).ConfigureAwait(false);

                await request.ReadResponseJsonAsync().WithCancellation(token).ConfigureAwait(false);
            }
        }
Beispiel #2
0
        protected static async Task <object> SetupReplicationAsync(ICounterStore source, params ICounterStore[] destinations)
        {
            var replicationDocument = new CountersReplicationDocument();

            foreach (var destStore in destinations)
            {
                replicationDocument.Destinations.Add(new CounterReplicationDestination
                {
                    CounterStorageName = destStore.Name,
                    ServerUrl          = destStore.Url
                });
            }

            await source.SaveReplicationsAsync(replicationDocument);

            return(null);
        }