Beispiel #1
0
            private OutgoingReplicationStatsScope GetStatsFor(ReplicationBatchItem.ReplicationItemType type)
            {
                switch (type)
                {
                case ReplicationBatchItem.ReplicationItemType.Document:
                    return(_documentRead);

                case ReplicationBatchItem.ReplicationItemType.Attachment:
                    return(_attachmentRead);

                case ReplicationBatchItem.ReplicationItemType.CounterGroup:
                    return(_countersRead);

                case ReplicationBatchItem.ReplicationItemType.DocumentTombstone:
                case ReplicationBatchItem.ReplicationItemType.AttachmentTombstone:
                case ReplicationBatchItem.ReplicationItemType.RevisionTombstone:
                    return(_tombstoneRead);

                case ReplicationBatchItem.ReplicationItemType.TimeSeriesSegment:
                case ReplicationBatchItem.ReplicationItemType.DeletedTimeSeriesRange:
                    return(_timeSeriesRead);

                default:
                    throw new ArgumentOutOfRangeException();
                }
            }
Beispiel #2
0
            public void AddEnumerator(ReplicationBatchItem.ReplicationItemType type, IEnumerator <ReplicationBatchItem> enumerator)
            {
                if (enumerator == null)
                {
                    return;
                }

                if (enumerator.MoveNext())
                {
                    using (GetStatsFor(type).Start())
                    {
                        _workEnumerators.Add(enumerator);
                    }
                }
            }
            private OutgoingReplicationStatsScope GetStatsFor(ReplicationBatchItem.ReplicationItemType type)
            {
                switch (type)
                {
                case ReplicationBatchItem.ReplicationItemType.Document:
                    return(_documentRead);

                case ReplicationBatchItem.ReplicationItemType.Attachment:
                    return(_attachmentRead);

                case ReplicationBatchItem.ReplicationItemType.DocumentTombstone:
                case ReplicationBatchItem.ReplicationItemType.AttachmentTombstone:
                case ReplicationBatchItem.ReplicationItemType.RevisionTombstone:
                    return(_tombstoneRead);

                default:
                    throw new ArgumentOutOfRangeException();
                }
            }