public override ChangeFeedProcessorBuilder GetChangeFeedProcessorBuilderWithManualCheckpoint <T>(
            string processorName,
            ChangeFeedHandlerWithManualCheckpoint <T> onChangesDelegate)
        {
            return(this.container.GetChangeFeedProcessorBuilderWithManualCheckpoint(
                       processorName,
                       async(
                           ChangeFeedProcessorContext context,
                           IReadOnlyCollection <JObject> documents,
                           Func <Task <(bool isSuccess, Exception error)> > tryCheckpointAsync,
                           CancellationToken cancellationToken) =>
            {
                List <T> decryptItems = await this.DecryptChangeFeedDocumentsAsync <T>(
                    documents,
                    cancellationToken);

                // Call the original passed in delegate
                await onChangesDelegate(context, decryptItems, tryCheckpointAsync, cancellationToken);
            }));
 public override ChangeFeedProcessorBuilder GetChangeFeedProcessorBuilderWithManualCheckpoint <T>(
     string processorName,
     ChangeFeedHandlerWithManualCheckpoint <T> onChangesDelegate)
 {
     throw new NotImplementedException();
 }