protected override PutRecordBatchResponse SendRecords(List <Record> records, out bool successful)
        {
            var request = new PutRecordBatchRequest
            {
                DeliveryStreamName = _streamName,
                Records            = records
            };

            Logger.TraceFormat("Writing {0} records to firehose", records.Count);
            var response = _kinesisFirehoseClient.PutRecordBatch(request);

            successful = response.FailedPutCount == 0;
            return(response);
        }
 private Amazon.KinesisFirehose.Model.PutRecordBatchResponse CallAWSServiceOperation(IAmazonKinesisFirehose client, Amazon.KinesisFirehose.Model.PutRecordBatchRequest request)
 {
     Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon Kinesis Firehose", "PutRecordBatch");
     try
     {
         #if DESKTOP
         return(client.PutRecordBatch(request));
         #elif CORECLR
         return(client.PutRecordBatchAsync(request).GetAwaiter().GetResult());
         #else
                 #error "Unknown build edition"
         #endif
     }
     catch (AmazonServiceException exc)
     {
         var webException = exc.InnerException as System.Net.WebException;
         if (webException != null)
         {
             throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException);
         }
         throw;
     }
 }