public override void Visit(StartFromTime startFromTime) { // Our current public contract for ChangeFeedProcessor uses DateTime.MinValue.ToUniversalTime as beginning. // We need to add a special case here, otherwise it would send it as normal StartTime. // The problem is Multi master accounts do not support StartTime header on ReadFeed, and thus, // it would break multi master Change Feed Processor users using Start From Beginning semantics. // It's also an optimization, since the backend won't have to binary search for the value. if (startFromTime.Time != PopulateStartFromRequestOptionVisitor.StartFromBeginningTime) { this.requestMessage.Headers.Add( HttpConstants.HttpHeaders.IfModifiedSince, startFromTime.Time.ToString("r", CultureInfo.InvariantCulture)); } }
public abstract void Visit(StartFromTime startFromTime);