/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace AlexaForBusiness { namespace Model { /** *

The schedule of the usage report.

See Also:

AWS * API Reference

*/ class BusinessReportSchedule { public: AWS_ALEXAFORBUSINESS_API BusinessReportSchedule(); AWS_ALEXAFORBUSINESS_API BusinessReportSchedule(Aws::Utils::Json::JsonView jsonValue); AWS_ALEXAFORBUSINESS_API BusinessReportSchedule& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_ALEXAFORBUSINESS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The ARN of the business report schedule.

*/ inline const Aws::String& GetScheduleArn() const{ return m_scheduleArn; } /** *

The ARN of the business report schedule.

*/ inline bool ScheduleArnHasBeenSet() const { return m_scheduleArnHasBeenSet; } /** *

The ARN of the business report schedule.

*/ inline void SetScheduleArn(const Aws::String& value) { m_scheduleArnHasBeenSet = true; m_scheduleArn = value; } /** *

The ARN of the business report schedule.

*/ inline void SetScheduleArn(Aws::String&& value) { m_scheduleArnHasBeenSet = true; m_scheduleArn = std::move(value); } /** *

The ARN of the business report schedule.

*/ inline void SetScheduleArn(const char* value) { m_scheduleArnHasBeenSet = true; m_scheduleArn.assign(value); } /** *

The ARN of the business report schedule.

*/ inline BusinessReportSchedule& WithScheduleArn(const Aws::String& value) { SetScheduleArn(value); return *this;} /** *

The ARN of the business report schedule.

*/ inline BusinessReportSchedule& WithScheduleArn(Aws::String&& value) { SetScheduleArn(std::move(value)); return *this;} /** *

The ARN of the business report schedule.

*/ inline BusinessReportSchedule& WithScheduleArn(const char* value) { SetScheduleArn(value); return *this;} /** *

The name identifier of the schedule.

*/ inline const Aws::String& GetScheduleName() const{ return m_scheduleName; } /** *

The name identifier of the schedule.

*/ inline bool ScheduleNameHasBeenSet() const { return m_scheduleNameHasBeenSet; } /** *

The name identifier of the schedule.

*/ inline void SetScheduleName(const Aws::String& value) { m_scheduleNameHasBeenSet = true; m_scheduleName = value; } /** *

The name identifier of the schedule.

*/ inline void SetScheduleName(Aws::String&& value) { m_scheduleNameHasBeenSet = true; m_scheduleName = std::move(value); } /** *

The name identifier of the schedule.

*/ inline void SetScheduleName(const char* value) { m_scheduleNameHasBeenSet = true; m_scheduleName.assign(value); } /** *

The name identifier of the schedule.

*/ inline BusinessReportSchedule& WithScheduleName(const Aws::String& value) { SetScheduleName(value); return *this;} /** *

The name identifier of the schedule.

*/ inline BusinessReportSchedule& WithScheduleName(Aws::String&& value) { SetScheduleName(std::move(value)); return *this;} /** *

The name identifier of the schedule.

*/ inline BusinessReportSchedule& WithScheduleName(const char* value) { SetScheduleName(value); return *this;} /** *

The S3 bucket name of the output reports.

*/ inline const Aws::String& GetS3BucketName() const{ return m_s3BucketName; } /** *

The S3 bucket name of the output reports.

*/ inline bool S3BucketNameHasBeenSet() const { return m_s3BucketNameHasBeenSet; } /** *

The S3 bucket name of the output reports.

*/ inline void SetS3BucketName(const Aws::String& value) { m_s3BucketNameHasBeenSet = true; m_s3BucketName = value; } /** *

The S3 bucket name of the output reports.

*/ inline void SetS3BucketName(Aws::String&& value) { m_s3BucketNameHasBeenSet = true; m_s3BucketName = std::move(value); } /** *

The S3 bucket name of the output reports.

*/ inline void SetS3BucketName(const char* value) { m_s3BucketNameHasBeenSet = true; m_s3BucketName.assign(value); } /** *

The S3 bucket name of the output reports.

*/ inline BusinessReportSchedule& WithS3BucketName(const Aws::String& value) { SetS3BucketName(value); return *this;} /** *

The S3 bucket name of the output reports.

*/ inline BusinessReportSchedule& WithS3BucketName(Aws::String&& value) { SetS3BucketName(std::move(value)); return *this;} /** *

The S3 bucket name of the output reports.

*/ inline BusinessReportSchedule& WithS3BucketName(const char* value) { SetS3BucketName(value); return *this;} /** *

The S3 key where the report is delivered.

*/ inline const Aws::String& GetS3KeyPrefix() const{ return m_s3KeyPrefix; } /** *

The S3 key where the report is delivered.

*/ inline bool S3KeyPrefixHasBeenSet() const { return m_s3KeyPrefixHasBeenSet; } /** *

The S3 key where the report is delivered.

*/ inline void SetS3KeyPrefix(const Aws::String& value) { m_s3KeyPrefixHasBeenSet = true; m_s3KeyPrefix = value; } /** *

The S3 key where the report is delivered.

*/ inline void SetS3KeyPrefix(Aws::String&& value) { m_s3KeyPrefixHasBeenSet = true; m_s3KeyPrefix = std::move(value); } /** *

The S3 key where the report is delivered.

*/ inline void SetS3KeyPrefix(const char* value) { m_s3KeyPrefixHasBeenSet = true; m_s3KeyPrefix.assign(value); } /** *

The S3 key where the report is delivered.

*/ inline BusinessReportSchedule& WithS3KeyPrefix(const Aws::String& value) { SetS3KeyPrefix(value); return *this;} /** *

The S3 key where the report is delivered.

*/ inline BusinessReportSchedule& WithS3KeyPrefix(Aws::String&& value) { SetS3KeyPrefix(std::move(value)); return *this;} /** *

The S3 key where the report is delivered.

*/ inline BusinessReportSchedule& WithS3KeyPrefix(const char* value) { SetS3KeyPrefix(value); return *this;} /** *

The format of the generated report (individual CSV files or zipped files of * individual files).

*/ inline const BusinessReportFormat& GetFormat() const{ return m_format; } /** *

The format of the generated report (individual CSV files or zipped files of * individual files).

*/ inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; } /** *

The format of the generated report (individual CSV files or zipped files of * individual files).

*/ inline void SetFormat(const BusinessReportFormat& value) { m_formatHasBeenSet = true; m_format = value; } /** *

The format of the generated report (individual CSV files or zipped files of * individual files).

*/ inline void SetFormat(BusinessReportFormat&& value) { m_formatHasBeenSet = true; m_format = std::move(value); } /** *

The format of the generated report (individual CSV files or zipped files of * individual files).

*/ inline BusinessReportSchedule& WithFormat(const BusinessReportFormat& value) { SetFormat(value); return *this;} /** *

The format of the generated report (individual CSV files or zipped files of * individual files).

*/ inline BusinessReportSchedule& WithFormat(BusinessReportFormat&& value) { SetFormat(std::move(value)); return *this;} /** *

The content range of the reports.

*/ inline const BusinessReportContentRange& GetContentRange() const{ return m_contentRange; } /** *

The content range of the reports.

*/ inline bool ContentRangeHasBeenSet() const { return m_contentRangeHasBeenSet; } /** *

The content range of the reports.

*/ inline void SetContentRange(const BusinessReportContentRange& value) { m_contentRangeHasBeenSet = true; m_contentRange = value; } /** *

The content range of the reports.

*/ inline void SetContentRange(BusinessReportContentRange&& value) { m_contentRangeHasBeenSet = true; m_contentRange = std::move(value); } /** *

The content range of the reports.

*/ inline BusinessReportSchedule& WithContentRange(const BusinessReportContentRange& value) { SetContentRange(value); return *this;} /** *

The content range of the reports.

*/ inline BusinessReportSchedule& WithContentRange(BusinessReportContentRange&& value) { SetContentRange(std::move(value)); return *this;} /** *

The recurrence of the reports.

*/ inline const BusinessReportRecurrence& GetRecurrence() const{ return m_recurrence; } /** *

The recurrence of the reports.

*/ inline bool RecurrenceHasBeenSet() const { return m_recurrenceHasBeenSet; } /** *

The recurrence of the reports.

*/ inline void SetRecurrence(const BusinessReportRecurrence& value) { m_recurrenceHasBeenSet = true; m_recurrence = value; } /** *

The recurrence of the reports.

*/ inline void SetRecurrence(BusinessReportRecurrence&& value) { m_recurrenceHasBeenSet = true; m_recurrence = std::move(value); } /** *

The recurrence of the reports.

*/ inline BusinessReportSchedule& WithRecurrence(const BusinessReportRecurrence& value) { SetRecurrence(value); return *this;} /** *

The recurrence of the reports.

*/ inline BusinessReportSchedule& WithRecurrence(BusinessReportRecurrence&& value) { SetRecurrence(std::move(value)); return *this;} /** *

The details of the last business report delivery for a specified time * interval.

*/ inline const BusinessReport& GetLastBusinessReport() const{ return m_lastBusinessReport; } /** *

The details of the last business report delivery for a specified time * interval.

*/ inline bool LastBusinessReportHasBeenSet() const { return m_lastBusinessReportHasBeenSet; } /** *

The details of the last business report delivery for a specified time * interval.

*/ inline void SetLastBusinessReport(const BusinessReport& value) { m_lastBusinessReportHasBeenSet = true; m_lastBusinessReport = value; } /** *

The details of the last business report delivery for a specified time * interval.

*/ inline void SetLastBusinessReport(BusinessReport&& value) { m_lastBusinessReportHasBeenSet = true; m_lastBusinessReport = std::move(value); } /** *

The details of the last business report delivery for a specified time * interval.

*/ inline BusinessReportSchedule& WithLastBusinessReport(const BusinessReport& value) { SetLastBusinessReport(value); return *this;} /** *

The details of the last business report delivery for a specified time * interval.

*/ inline BusinessReportSchedule& WithLastBusinessReport(BusinessReport&& value) { SetLastBusinessReport(std::move(value)); return *this;} private: Aws::String m_scheduleArn; bool m_scheduleArnHasBeenSet = false; Aws::String m_scheduleName; bool m_scheduleNameHasBeenSet = false; Aws::String m_s3BucketName; bool m_s3BucketNameHasBeenSet = false; Aws::String m_s3KeyPrefix; bool m_s3KeyPrefixHasBeenSet = false; BusinessReportFormat m_format; bool m_formatHasBeenSet = false; BusinessReportContentRange m_contentRange; bool m_contentRangeHasBeenSet = false; BusinessReportRecurrence m_recurrence; bool m_recurrenceHasBeenSet = false; BusinessReport m_lastBusinessReport; bool m_lastBusinessReportHasBeenSet = false; }; } // namespace Model } // namespace AlexaForBusiness } // namespace Aws