/// <inheritdoc />
        public override void DeleteDataset(DatasetReference datasetReference, DeleteDatasetOptions options = null)
        {
            GaxPreconditions.CheckNotNull(datasetReference, nameof(datasetReference));
            var request = Service.Datasets.Delete(datasetReference.ProjectId, datasetReference.DatasetId);

            options?.ModifyRequest(request);
            request.Execute();
        }
        /// <inheritdoc />
        public override async Task DeleteDatasetAsync(DatasetReference datasetReference, DeleteDatasetOptions options = null, CancellationToken cancellationToken = default(CancellationToken))
        {
            GaxPreconditions.CheckNotNull(datasetReference, nameof(datasetReference));
            var request = Service.Datasets.Delete(datasetReference.ProjectId, datasetReference.DatasetId);

            options?.ModifyRequest(request);
            await request.ExecuteAsync(cancellationToken).ConfigureAwait(false);
        }
        private DeleteRequest CreateDeleteDatasetRequest(DatasetReference datasetReference, DeleteDatasetOptions options)
        {
            GaxPreconditions.CheckNotNull(datasetReference, nameof(datasetReference));
            var request = Service.Datasets.Delete(datasetReference.ProjectId, datasetReference.DatasetId);

            options?.ModifyRequest(request);
            return(request);
        }