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

Represents configuration information about a test run, such as the execution * timeout (in minutes).

See Also:

AWS * API Reference

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

The number of minutes a test run executes before it times out.

*/ inline int GetJobTimeoutMinutes() const{ return m_jobTimeoutMinutes; } /** *

The number of minutes a test run executes before it times out.

*/ inline bool JobTimeoutMinutesHasBeenSet() const { return m_jobTimeoutMinutesHasBeenSet; } /** *

The number of minutes a test run executes before it times out.

*/ inline void SetJobTimeoutMinutes(int value) { m_jobTimeoutMinutesHasBeenSet = true; m_jobTimeoutMinutes = value; } /** *

The number of minutes a test run executes before it times out.

*/ inline ExecutionConfiguration& WithJobTimeoutMinutes(int value) { SetJobTimeoutMinutes(value); return *this;} /** *

True if account cleanup is enabled at the beginning of the test. Otherwise, * false.

*/ inline bool GetAccountsCleanup() const{ return m_accountsCleanup; } /** *

True if account cleanup is enabled at the beginning of the test. Otherwise, * false.

*/ inline bool AccountsCleanupHasBeenSet() const { return m_accountsCleanupHasBeenSet; } /** *

True if account cleanup is enabled at the beginning of the test. Otherwise, * false.

*/ inline void SetAccountsCleanup(bool value) { m_accountsCleanupHasBeenSet = true; m_accountsCleanup = value; } /** *

True if account cleanup is enabled at the beginning of the test. Otherwise, * false.

*/ inline ExecutionConfiguration& WithAccountsCleanup(bool value) { SetAccountsCleanup(value); return *this;} /** *

True if app package cleanup is enabled at the beginning of the test. * Otherwise, false.

*/ inline bool GetAppPackagesCleanup() const{ return m_appPackagesCleanup; } /** *

True if app package cleanup is enabled at the beginning of the test. * Otherwise, false.

*/ inline bool AppPackagesCleanupHasBeenSet() const { return m_appPackagesCleanupHasBeenSet; } /** *

True if app package cleanup is enabled at the beginning of the test. * Otherwise, false.

*/ inline void SetAppPackagesCleanup(bool value) { m_appPackagesCleanupHasBeenSet = true; m_appPackagesCleanup = value; } /** *

True if app package cleanup is enabled at the beginning of the test. * Otherwise, false.

*/ inline ExecutionConfiguration& WithAppPackagesCleanup(bool value) { SetAppPackagesCleanup(value); return *this;} /** *

Set to true to enable video capture. Otherwise, set to false. The default is * true.

*/ inline bool GetVideoCapture() const{ return m_videoCapture; } /** *

Set to true to enable video capture. Otherwise, set to false. The default is * true.

*/ inline bool VideoCaptureHasBeenSet() const { return m_videoCaptureHasBeenSet; } /** *

Set to true to enable video capture. Otherwise, set to false. The default is * true.

*/ inline void SetVideoCapture(bool value) { m_videoCaptureHasBeenSet = true; m_videoCapture = value; } /** *

Set to true to enable video capture. Otherwise, set to false. The default is * true.

*/ inline ExecutionConfiguration& WithVideoCapture(bool value) { SetVideoCapture(value); return *this;} /** *

When set to true, for private devices, Device Farm does not sign * your app again. For public devices, Device Farm always signs your apps * again.

For more information about how Device Farm re-signs your apps, see * Do you modify my app? in * the AWS Device Farm FAQs.

*/ inline bool GetSkipAppResign() const{ return m_skipAppResign; } /** *

When set to true, for private devices, Device Farm does not sign * your app again. For public devices, Device Farm always signs your apps * again.

For more information about how Device Farm re-signs your apps, see * Do you modify my app? in * the AWS Device Farm FAQs.

*/ inline bool SkipAppResignHasBeenSet() const { return m_skipAppResignHasBeenSet; } /** *

When set to true, for private devices, Device Farm does not sign * your app again. For public devices, Device Farm always signs your apps * again.

For more information about how Device Farm re-signs your apps, see * Do you modify my app? in * the AWS Device Farm FAQs.

*/ inline void SetSkipAppResign(bool value) { m_skipAppResignHasBeenSet = true; m_skipAppResign = value; } /** *

When set to true, for private devices, Device Farm does not sign * your app again. For public devices, Device Farm always signs your apps * again.

For more information about how Device Farm re-signs your apps, see * Do you modify my app? in * the AWS Device Farm FAQs.

*/ inline ExecutionConfiguration& WithSkipAppResign(bool value) { SetSkipAppResign(value); return *this;} private: int m_jobTimeoutMinutes; bool m_jobTimeoutMinutesHasBeenSet = false; bool m_accountsCleanup; bool m_accountsCleanupHasBeenSet = false; bool m_appPackagesCleanup; bool m_appPackagesCleanupHasBeenSet = false; bool m_videoCapture; bool m_videoCaptureHasBeenSet = false; bool m_skipAppResign; bool m_skipAppResignHasBeenSet = false; }; } // namespace Model } // namespace DeviceFarm } // namespace Aws