/// <summary> /// Initializes a new instance of the <see cref="TransitionHashPartitionResolver" /> class. /// </summary> /// <param name="current">The current IPartitionResolver.</param> /// <param name="next">The next IPartitionResolver.</param> /// <param name="readMode">How to handle read requests during transition.</param> public TransitionHashPartitionResolver( IPartitionResolver current, IPartitionResolver next, TransitionReadMode readMode = TransitionReadMode.ReadBoth) { this.CurrentResolver = current; this.NextResolver = next; }
/// <summary> /// Initializes a new instance of the <see cref="TransitionHashPartitionResolver" /> class. /// </summary> /// <param name="current">The current IPartitionResolver.</param> /// <param name="next">The next IPartitionResolver.</param> /// <param name="readMode">How to handle read requests during transition.</param> public TransitionHashPartitionResolver( IPartitionResolver current, IPartitionResolver next, TransitionReadMode readMode = TransitionReadMode.ReadBoth) { this.CurrentResolver = current; this.NextResolver = next; this.ReadMode = readMode; }
/// <summary> /// Initializes a new instance of the <see cref="DocumentClientHashPartitioningManager"/> class. /// </summary> /// <param name="partitionKeyExtractor">The partition key extractor function.</param> /// <param name="client">The DocumentDB client instance.</param> /// <param name="database">The database to partition.</param> /// <param name="initialPartitionCount">The number of initial partitions to create.</param> /// <param name="readMode">The mode to process requests in during data migrations.</param> public DocumentClientHashPartitioningManager( Func <object, string> partitionKeyExtractor, DocumentClient client, Database database, int initialPartitionCount, TransitionReadMode readMode = TransitionReadMode.ReadBoth) { this.Client = client; this.Database = database; this.Client.PartitionResolvers[database.SelfLink] = new ManagedHashPartitionResolver(partitionKeyExtractor, client, database, initialPartitionCount); this.ReadMode = readMode; }
/// <summary> /// Initializes a new instance of the <see cref="DocumentClientHashPartitioningManager"/> class. /// </summary> /// <param name="partitionKeyExtractor">The partition key extractor function.</param> /// <param name="client">The DocumentDB client instance.</param> /// <param name="database">The database to partition.</param> /// <param name="initialPartitionCount">The number of initial partitions to create.</param> /// <param name="readMode">The mode to process requests in during data migrations.</param> public DocumentClientHashPartitioningManager( Func<object, string> partitionKeyExtractor, DocumentClient client, Database database, int initialPartitionCount, TransitionReadMode readMode = TransitionReadMode.ReadBoth) { this.Client = client; this.Database = database; this.Client.PartitionResolvers[database.SelfLink] = new ManagedHashPartitionResolver(partitionKeyExtractor, client, database, initialPartitionCount); this.ReadMode = readMode; }