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

Represents the output of a test. Examples of artifacts include logs and * screenshots.

See Also:

AWS * API Reference

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

The artifact's ARN.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The artifact's ARN.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The artifact's ARN.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The artifact's ARN.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The artifact's ARN.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The artifact's ARN.

*/ inline Artifact& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The artifact's ARN.

*/ inline Artifact& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The artifact's ARN.

*/ inline Artifact& WithArn(const char* value) { SetArn(value); return *this;} /** *

The artifact's name.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The artifact's name.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The artifact's name.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The artifact's name.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The artifact's name.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The artifact's name.

*/ inline Artifact& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The artifact's name.

*/ inline Artifact& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The artifact's name.

*/ inline Artifact& WithName(const char* value) { SetName(value); return *this;} /** *

The artifact's type.

Allowed values include the following:

    *
  • UNKNOWN

  • SCREENSHOT

  • DEVICE_LOG

    *
  • MESSAGE_LOG

  • VIDEO_LOG

  • *

    RESULT_LOG

  • SERVICE_LOG

  • WEBKIT_LOG

    *
  • INSTRUMENTATION_OUTPUT

  • EXERCISER_MONKEY_OUTPUT: * the artifact (log) generated by an Android fuzz test.

  • *

    CALABASH_JSON_OUTPUT

  • CALABASH_PRETTY_OUTPUT

  • *

    CALABASH_STANDARD_OUTPUT

  • CALABASH_JAVA_XML_OUTPUT

  • *
  • AUTOMATION_OUTPUT

  • APPIUM_SERVER_OUTPUT

  • *

    APPIUM_JAVA_OUTPUT

  • APPIUM_JAVA_XML_OUTPUT

  • *

    APPIUM_PYTHON_OUTPUT

  • APPIUM_PYTHON_XML_OUTPUT

  • *
  • EXPLORER_EVENT_LOG

  • EXPLORER_SUMMARY_LOG

  • *

    APPLICATION_CRASH_REPORT

  • XCTEST_LOG

  • *

    VIDEO

  • CUSTOMER_ARTIFACT

  • *

    CUSTOMER_ARTIFACT_LOG

  • TESTSPEC_OUTPUT

*/ inline const ArtifactType& GetType() const{ return m_type; } /** *

The artifact's type.

Allowed values include the following:

    *
  • UNKNOWN

  • SCREENSHOT

  • DEVICE_LOG

    *
  • MESSAGE_LOG

  • VIDEO_LOG

  • *

    RESULT_LOG

  • SERVICE_LOG

  • WEBKIT_LOG

    *
  • INSTRUMENTATION_OUTPUT

  • EXERCISER_MONKEY_OUTPUT: * the artifact (log) generated by an Android fuzz test.

  • *

    CALABASH_JSON_OUTPUT

  • CALABASH_PRETTY_OUTPUT

  • *

    CALABASH_STANDARD_OUTPUT

  • CALABASH_JAVA_XML_OUTPUT

  • *
  • AUTOMATION_OUTPUT

  • APPIUM_SERVER_OUTPUT

  • *

    APPIUM_JAVA_OUTPUT

  • APPIUM_JAVA_XML_OUTPUT

  • *

    APPIUM_PYTHON_OUTPUT

  • APPIUM_PYTHON_XML_OUTPUT

  • *
  • EXPLORER_EVENT_LOG

  • EXPLORER_SUMMARY_LOG

  • *

    APPLICATION_CRASH_REPORT

  • XCTEST_LOG

  • *

    VIDEO

  • CUSTOMER_ARTIFACT

  • *

    CUSTOMER_ARTIFACT_LOG

  • TESTSPEC_OUTPUT

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The artifact's type.

Allowed values include the following:

    *
  • UNKNOWN

  • SCREENSHOT

  • DEVICE_LOG

    *
  • MESSAGE_LOG

  • VIDEO_LOG

  • *

    RESULT_LOG

  • SERVICE_LOG

  • WEBKIT_LOG

    *
  • INSTRUMENTATION_OUTPUT

  • EXERCISER_MONKEY_OUTPUT: * the artifact (log) generated by an Android fuzz test.

  • *

    CALABASH_JSON_OUTPUT

  • CALABASH_PRETTY_OUTPUT

  • *

    CALABASH_STANDARD_OUTPUT

  • CALABASH_JAVA_XML_OUTPUT

  • *
  • AUTOMATION_OUTPUT

  • APPIUM_SERVER_OUTPUT

  • *

    APPIUM_JAVA_OUTPUT

  • APPIUM_JAVA_XML_OUTPUT

  • *

    APPIUM_PYTHON_OUTPUT

  • APPIUM_PYTHON_XML_OUTPUT

  • *
  • EXPLORER_EVENT_LOG

  • EXPLORER_SUMMARY_LOG

  • *

    APPLICATION_CRASH_REPORT

  • XCTEST_LOG

  • *

    VIDEO

  • CUSTOMER_ARTIFACT

  • *

    CUSTOMER_ARTIFACT_LOG

  • TESTSPEC_OUTPUT

*/ inline void SetType(const ArtifactType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The artifact's type.

Allowed values include the following:

    *
  • UNKNOWN

  • SCREENSHOT

  • DEVICE_LOG

    *
  • MESSAGE_LOG

  • VIDEO_LOG

  • *

    RESULT_LOG

  • SERVICE_LOG

  • WEBKIT_LOG

    *
  • INSTRUMENTATION_OUTPUT

  • EXERCISER_MONKEY_OUTPUT: * the artifact (log) generated by an Android fuzz test.

  • *

    CALABASH_JSON_OUTPUT

  • CALABASH_PRETTY_OUTPUT

  • *

    CALABASH_STANDARD_OUTPUT

  • CALABASH_JAVA_XML_OUTPUT

  • *
  • AUTOMATION_OUTPUT

  • APPIUM_SERVER_OUTPUT

  • *

    APPIUM_JAVA_OUTPUT

  • APPIUM_JAVA_XML_OUTPUT

  • *

    APPIUM_PYTHON_OUTPUT

  • APPIUM_PYTHON_XML_OUTPUT

  • *
  • EXPLORER_EVENT_LOG

  • EXPLORER_SUMMARY_LOG

  • *

    APPLICATION_CRASH_REPORT

  • XCTEST_LOG

  • *

    VIDEO

  • CUSTOMER_ARTIFACT

  • *

    CUSTOMER_ARTIFACT_LOG

  • TESTSPEC_OUTPUT

*/ inline void SetType(ArtifactType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The artifact's type.

Allowed values include the following:

    *
  • UNKNOWN

  • SCREENSHOT

  • DEVICE_LOG

    *
  • MESSAGE_LOG

  • VIDEO_LOG

  • *

    RESULT_LOG

  • SERVICE_LOG

  • WEBKIT_LOG

    *
  • INSTRUMENTATION_OUTPUT

  • EXERCISER_MONKEY_OUTPUT: * the artifact (log) generated by an Android fuzz test.

  • *

    CALABASH_JSON_OUTPUT

  • CALABASH_PRETTY_OUTPUT

  • *

    CALABASH_STANDARD_OUTPUT

  • CALABASH_JAVA_XML_OUTPUT

  • *
  • AUTOMATION_OUTPUT

  • APPIUM_SERVER_OUTPUT

  • *

    APPIUM_JAVA_OUTPUT

  • APPIUM_JAVA_XML_OUTPUT

  • *

    APPIUM_PYTHON_OUTPUT

  • APPIUM_PYTHON_XML_OUTPUT

  • *
  • EXPLORER_EVENT_LOG

  • EXPLORER_SUMMARY_LOG

  • *

    APPLICATION_CRASH_REPORT

  • XCTEST_LOG

  • *

    VIDEO

  • CUSTOMER_ARTIFACT

  • *

    CUSTOMER_ARTIFACT_LOG

  • TESTSPEC_OUTPUT

*/ inline Artifact& WithType(const ArtifactType& value) { SetType(value); return *this;} /** *

The artifact's type.

Allowed values include the following:

    *
  • UNKNOWN

  • SCREENSHOT

  • DEVICE_LOG

    *
  • MESSAGE_LOG

  • VIDEO_LOG

  • *

    RESULT_LOG

  • SERVICE_LOG

  • WEBKIT_LOG

    *
  • INSTRUMENTATION_OUTPUT

  • EXERCISER_MONKEY_OUTPUT: * the artifact (log) generated by an Android fuzz test.

  • *

    CALABASH_JSON_OUTPUT

  • CALABASH_PRETTY_OUTPUT

  • *

    CALABASH_STANDARD_OUTPUT

  • CALABASH_JAVA_XML_OUTPUT

  • *
  • AUTOMATION_OUTPUT

  • APPIUM_SERVER_OUTPUT

  • *

    APPIUM_JAVA_OUTPUT

  • APPIUM_JAVA_XML_OUTPUT

  • *

    APPIUM_PYTHON_OUTPUT

  • APPIUM_PYTHON_XML_OUTPUT

  • *
  • EXPLORER_EVENT_LOG

  • EXPLORER_SUMMARY_LOG

  • *

    APPLICATION_CRASH_REPORT

  • XCTEST_LOG

  • *

    VIDEO

  • CUSTOMER_ARTIFACT

  • *

    CUSTOMER_ARTIFACT_LOG

  • TESTSPEC_OUTPUT

*/ inline Artifact& WithType(ArtifactType&& value) { SetType(std::move(value)); return *this;} /** *

The artifact's file extension.

*/ inline const Aws::String& GetExtension() const{ return m_extension; } /** *

The artifact's file extension.

*/ inline bool ExtensionHasBeenSet() const { return m_extensionHasBeenSet; } /** *

The artifact's file extension.

*/ inline void SetExtension(const Aws::String& value) { m_extensionHasBeenSet = true; m_extension = value; } /** *

The artifact's file extension.

*/ inline void SetExtension(Aws::String&& value) { m_extensionHasBeenSet = true; m_extension = std::move(value); } /** *

The artifact's file extension.

*/ inline void SetExtension(const char* value) { m_extensionHasBeenSet = true; m_extension.assign(value); } /** *

The artifact's file extension.

*/ inline Artifact& WithExtension(const Aws::String& value) { SetExtension(value); return *this;} /** *

The artifact's file extension.

*/ inline Artifact& WithExtension(Aws::String&& value) { SetExtension(std::move(value)); return *this;} /** *

The artifact's file extension.

*/ inline Artifact& WithExtension(const char* value) { SetExtension(value); return *this;} /** *

The presigned Amazon S3 URL that can be used with a GET request to download * the artifact's file.

*/ inline const Aws::String& GetUrl() const{ return m_url; } /** *

The presigned Amazon S3 URL that can be used with a GET request to download * the artifact's file.

*/ inline bool UrlHasBeenSet() const { return m_urlHasBeenSet; } /** *

The presigned Amazon S3 URL that can be used with a GET request to download * the artifact's file.

*/ inline void SetUrl(const Aws::String& value) { m_urlHasBeenSet = true; m_url = value; } /** *

The presigned Amazon S3 URL that can be used with a GET request to download * the artifact's file.

*/ inline void SetUrl(Aws::String&& value) { m_urlHasBeenSet = true; m_url = std::move(value); } /** *

The presigned Amazon S3 URL that can be used with a GET request to download * the artifact's file.

*/ inline void SetUrl(const char* value) { m_urlHasBeenSet = true; m_url.assign(value); } /** *

The presigned Amazon S3 URL that can be used with a GET request to download * the artifact's file.

*/ inline Artifact& WithUrl(const Aws::String& value) { SetUrl(value); return *this;} /** *

The presigned Amazon S3 URL that can be used with a GET request to download * the artifact's file.

*/ inline Artifact& WithUrl(Aws::String&& value) { SetUrl(std::move(value)); return *this;} /** *

The presigned Amazon S3 URL that can be used with a GET request to download * the artifact's file.

*/ inline Artifact& WithUrl(const char* value) { SetUrl(value); return *this;} private: Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; ArtifactType m_type; bool m_typeHasBeenSet = false; Aws::String m_extension; bool m_extensionHasBeenSet = false; Aws::String m_url; bool m_urlHasBeenSet = false; }; } // namespace Model } // namespace DeviceFarm } // namespace Aws