/aws-cpp-sdk-devicefarm/include/aws/devicefarm/model/Job.h

https://github.com/aws/aws-sdk-cpp · C Header · 713 lines · 165 code · 133 blank · 415 comment · 0 complexity · 32ccadef197b13c22b6cb411b1b66eb0 MD5 · raw file

  1. /**
  2. * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
  3. * SPDX-License-Identifier: Apache-2.0.
  4. */
  5. #pragma once
  6. #include <aws/devicefarm/DeviceFarm_EXPORTS.h>
  7. #include <aws/core/utils/memory/stl/AWSString.h>
  8. #include <aws/devicefarm/model/TestType.h>
  9. #include <aws/core/utils/DateTime.h>
  10. #include <aws/devicefarm/model/ExecutionStatus.h>
  11. #include <aws/devicefarm/model/ExecutionResult.h>
  12. #include <aws/devicefarm/model/Counters.h>
  13. #include <aws/devicefarm/model/Device.h>
  14. #include <aws/devicefarm/model/DeviceMinutes.h>
  15. #include <utility>
  16. namespace Aws
  17. {
  18. namespace Utils
  19. {
  20. namespace Json
  21. {
  22. class JsonValue;
  23. class JsonView;
  24. } // namespace Json
  25. } // namespace Utils
  26. namespace DeviceFarm
  27. {
  28. namespace Model
  29. {
  30. /**
  31. * <p>Represents a device.</p><p><h3>See Also:</h3> <a
  32. * href="http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/Job">AWS API
  33. * Reference</a></p>
  34. */
  35. class AWS_DEVICEFARM_API Job
  36. {
  37. public:
  38. Job();
  39. Job(Aws::Utils::Json::JsonView jsonValue);
  40. Job& operator=(Aws::Utils::Json::JsonView jsonValue);
  41. Aws::Utils::Json::JsonValue Jsonize() const;
  42. /**
  43. * <p>The job's ARN.</p>
  44. */
  45. inline const Aws::String& GetArn() const{ return m_arn; }
  46. /**
  47. * <p>The job's ARN.</p>
  48. */
  49. inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
  50. /**
  51. * <p>The job's ARN.</p>
  52. */
  53. inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
  54. /**
  55. * <p>The job's ARN.</p>
  56. */
  57. inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); }
  58. /**
  59. * <p>The job's ARN.</p>
  60. */
  61. inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
  62. /**
  63. * <p>The job's ARN.</p>
  64. */
  65. inline Job& WithArn(const Aws::String& value) { SetArn(value); return *this;}
  66. /**
  67. * <p>The job's ARN.</p>
  68. */
  69. inline Job& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}
  70. /**
  71. * <p>The job's ARN.</p>
  72. */
  73. inline Job& WithArn(const char* value) { SetArn(value); return *this;}
  74. /**
  75. * <p>The job's name.</p>
  76. */
  77. inline const Aws::String& GetName() const{ return m_name; }
  78. /**
  79. * <p>The job's name.</p>
  80. */
  81. inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
  82. /**
  83. * <p>The job's name.</p>
  84. */
  85. inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
  86. /**
  87. * <p>The job's name.</p>
  88. */
  89. inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
  90. /**
  91. * <p>The job's name.</p>
  92. */
  93. inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
  94. /**
  95. * <p>The job's name.</p>
  96. */
  97. inline Job& WithName(const Aws::String& value) { SetName(value); return *this;}
  98. /**
  99. * <p>The job's name.</p>
  100. */
  101. inline Job& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
  102. /**
  103. * <p>The job's name.</p>
  104. */
  105. inline Job& WithName(const char* value) { SetName(value); return *this;}
  106. /**
  107. * <p>The job's type.</p> <p>Allowed values include the following:</p> <ul> <li>
  108. * <p>BUILTIN_FUZZ</p> </li> <li> <p>BUILTIN_EXPLORER. For Android, an app explorer
  109. * that traverses an Android app, interacting with it and capturing screenshots at
  110. * the same time.</p> </li> <li> <p>APPIUM_JAVA_JUNIT</p> </li> <li>
  111. * <p>APPIUM_JAVA_TESTNG</p> </li> <li> <p>APPIUM_PYTHON</p> </li> <li>
  112. * <p>APPIUM_NODE</p> </li> <li> <p>APPIUM_RUBY</p> </li> <li>
  113. * <p>APPIUM_WEB_JAVA_JUNIT</p> </li> <li> <p>APPIUM_WEB_JAVA_TESTNG</p> </li> <li>
  114. * <p>APPIUM_WEB_PYTHON</p> </li> <li> <p>APPIUM_WEB_NODE</p> </li> <li>
  115. * <p>APPIUM_WEB_RUBY</p> </li> <li> <p>CALABASH</p> </li> <li>
  116. * <p>INSTRUMENTATION</p> </li> <li> <p>UIAUTOMATION</p> </li> <li>
  117. * <p>UIAUTOMATOR</p> </li> <li> <p>XCTEST</p> </li> <li> <p>XCTEST_UI</p> </li>
  118. * </ul>
  119. */
  120. inline const TestType& GetType() const{ return m_type; }
  121. /**
  122. * <p>The job's type.</p> <p>Allowed values include the following:</p> <ul> <li>
  123. * <p>BUILTIN_FUZZ</p> </li> <li> <p>BUILTIN_EXPLORER. For Android, an app explorer
  124. * that traverses an Android app, interacting with it and capturing screenshots at
  125. * the same time.</p> </li> <li> <p>APPIUM_JAVA_JUNIT</p> </li> <li>
  126. * <p>APPIUM_JAVA_TESTNG</p> </li> <li> <p>APPIUM_PYTHON</p> </li> <li>
  127. * <p>APPIUM_NODE</p> </li> <li> <p>APPIUM_RUBY</p> </li> <li>
  128. * <p>APPIUM_WEB_JAVA_JUNIT</p> </li> <li> <p>APPIUM_WEB_JAVA_TESTNG</p> </li> <li>
  129. * <p>APPIUM_WEB_PYTHON</p> </li> <li> <p>APPIUM_WEB_NODE</p> </li> <li>
  130. * <p>APPIUM_WEB_RUBY</p> </li> <li> <p>CALABASH</p> </li> <li>
  131. * <p>INSTRUMENTATION</p> </li> <li> <p>UIAUTOMATION</p> </li> <li>
  132. * <p>UIAUTOMATOR</p> </li> <li> <p>XCTEST</p> </li> <li> <p>XCTEST_UI</p> </li>
  133. * </ul>
  134. */
  135. inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
  136. /**
  137. * <p>The job's type.</p> <p>Allowed values include the following:</p> <ul> <li>
  138. * <p>BUILTIN_FUZZ</p> </li> <li> <p>BUILTIN_EXPLORER. For Android, an app explorer
  139. * that traverses an Android app, interacting with it and capturing screenshots at
  140. * the same time.</p> </li> <li> <p>APPIUM_JAVA_JUNIT</p> </li> <li>
  141. * <p>APPIUM_JAVA_TESTNG</p> </li> <li> <p>APPIUM_PYTHON</p> </li> <li>
  142. * <p>APPIUM_NODE</p> </li> <li> <p>APPIUM_RUBY</p> </li> <li>
  143. * <p>APPIUM_WEB_JAVA_JUNIT</p> </li> <li> <p>APPIUM_WEB_JAVA_TESTNG</p> </li> <li>
  144. * <p>APPIUM_WEB_PYTHON</p> </li> <li> <p>APPIUM_WEB_NODE</p> </li> <li>
  145. * <p>APPIUM_WEB_RUBY</p> </li> <li> <p>CALABASH</p> </li> <li>
  146. * <p>INSTRUMENTATION</p> </li> <li> <p>UIAUTOMATION</p> </li> <li>
  147. * <p>UIAUTOMATOR</p> </li> <li> <p>XCTEST</p> </li> <li> <p>XCTEST_UI</p> </li>
  148. * </ul>
  149. */
  150. inline void SetType(const TestType& value) { m_typeHasBeenSet = true; m_type = value; }
  151. /**
  152. * <p>The job's type.</p> <p>Allowed values include the following:</p> <ul> <li>
  153. * <p>BUILTIN_FUZZ</p> </li> <li> <p>BUILTIN_EXPLORER. For Android, an app explorer
  154. * that traverses an Android app, interacting with it and capturing screenshots at
  155. * the same time.</p> </li> <li> <p>APPIUM_JAVA_JUNIT</p> </li> <li>
  156. * <p>APPIUM_JAVA_TESTNG</p> </li> <li> <p>APPIUM_PYTHON</p> </li> <li>
  157. * <p>APPIUM_NODE</p> </li> <li> <p>APPIUM_RUBY</p> </li> <li>
  158. * <p>APPIUM_WEB_JAVA_JUNIT</p> </li> <li> <p>APPIUM_WEB_JAVA_TESTNG</p> </li> <li>
  159. * <p>APPIUM_WEB_PYTHON</p> </li> <li> <p>APPIUM_WEB_NODE</p> </li> <li>
  160. * <p>APPIUM_WEB_RUBY</p> </li> <li> <p>CALABASH</p> </li> <li>
  161. * <p>INSTRUMENTATION</p> </li> <li> <p>UIAUTOMATION</p> </li> <li>
  162. * <p>UIAUTOMATOR</p> </li> <li> <p>XCTEST</p> </li> <li> <p>XCTEST_UI</p> </li>
  163. * </ul>
  164. */
  165. inline void SetType(TestType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
  166. /**
  167. * <p>The job's type.</p> <p>Allowed values include the following:</p> <ul> <li>
  168. * <p>BUILTIN_FUZZ</p> </li> <li> <p>BUILTIN_EXPLORER. For Android, an app explorer
  169. * that traverses an Android app, interacting with it and capturing screenshots at
  170. * the same time.</p> </li> <li> <p>APPIUM_JAVA_JUNIT</p> </li> <li>
  171. * <p>APPIUM_JAVA_TESTNG</p> </li> <li> <p>APPIUM_PYTHON</p> </li> <li>
  172. * <p>APPIUM_NODE</p> </li> <li> <p>APPIUM_RUBY</p> </li> <li>
  173. * <p>APPIUM_WEB_JAVA_JUNIT</p> </li> <li> <p>APPIUM_WEB_JAVA_TESTNG</p> </li> <li>
  174. * <p>APPIUM_WEB_PYTHON</p> </li> <li> <p>APPIUM_WEB_NODE</p> </li> <li>
  175. * <p>APPIUM_WEB_RUBY</p> </li> <li> <p>CALABASH</p> </li> <li>
  176. * <p>INSTRUMENTATION</p> </li> <li> <p>UIAUTOMATION</p> </li> <li>
  177. * <p>UIAUTOMATOR</p> </li> <li> <p>XCTEST</p> </li> <li> <p>XCTEST_UI</p> </li>
  178. * </ul>
  179. */
  180. inline Job& WithType(const TestType& value) { SetType(value); return *this;}
  181. /**
  182. * <p>The job's type.</p> <p>Allowed values include the following:</p> <ul> <li>
  183. * <p>BUILTIN_FUZZ</p> </li> <li> <p>BUILTIN_EXPLORER. For Android, an app explorer
  184. * that traverses an Android app, interacting with it and capturing screenshots at
  185. * the same time.</p> </li> <li> <p>APPIUM_JAVA_JUNIT</p> </li> <li>
  186. * <p>APPIUM_JAVA_TESTNG</p> </li> <li> <p>APPIUM_PYTHON</p> </li> <li>
  187. * <p>APPIUM_NODE</p> </li> <li> <p>APPIUM_RUBY</p> </li> <li>
  188. * <p>APPIUM_WEB_JAVA_JUNIT</p> </li> <li> <p>APPIUM_WEB_JAVA_TESTNG</p> </li> <li>
  189. * <p>APPIUM_WEB_PYTHON</p> </li> <li> <p>APPIUM_WEB_NODE</p> </li> <li>
  190. * <p>APPIUM_WEB_RUBY</p> </li> <li> <p>CALABASH</p> </li> <li>
  191. * <p>INSTRUMENTATION</p> </li> <li> <p>UIAUTOMATION</p> </li> <li>
  192. * <p>UIAUTOMATOR</p> </li> <li> <p>XCTEST</p> </li> <li> <p>XCTEST_UI</p> </li>
  193. * </ul>
  194. */
  195. inline Job& WithType(TestType&& value) { SetType(std::move(value)); return *this;}
  196. /**
  197. * <p>When the job was created.</p>
  198. */
  199. inline const Aws::Utils::DateTime& GetCreated() const{ return m_created; }
  200. /**
  201. * <p>When the job was created.</p>
  202. */
  203. inline bool CreatedHasBeenSet() const { return m_createdHasBeenSet; }
  204. /**
  205. * <p>When the job was created.</p>
  206. */
  207. inline void SetCreated(const Aws::Utils::DateTime& value) { m_createdHasBeenSet = true; m_created = value; }
  208. /**
  209. * <p>When the job was created.</p>
  210. */
  211. inline void SetCreated(Aws::Utils::DateTime&& value) { m_createdHasBeenSet = true; m_created = std::move(value); }
  212. /**
  213. * <p>When the job was created.</p>
  214. */
  215. inline Job& WithCreated(const Aws::Utils::DateTime& value) { SetCreated(value); return *this;}
  216. /**
  217. * <p>When the job was created.</p>
  218. */
  219. inline Job& WithCreated(Aws::Utils::DateTime&& value) { SetCreated(std::move(value)); return *this;}
  220. /**
  221. * <p>The job's status.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  222. * </li> <li> <p>PENDING_CONCURRENCY</p> </li> <li> <p>PENDING_DEVICE</p> </li>
  223. * <li> <p>PROCESSING</p> </li> <li> <p>SCHEDULING</p> </li> <li> <p>PREPARING</p>
  224. * </li> <li> <p>RUNNING</p> </li> <li> <p>COMPLETED</p> </li> <li> <p>STOPPING</p>
  225. * </li> </ul>
  226. */
  227. inline const ExecutionStatus& GetStatus() const{ return m_status; }
  228. /**
  229. * <p>The job's status.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  230. * </li> <li> <p>PENDING_CONCURRENCY</p> </li> <li> <p>PENDING_DEVICE</p> </li>
  231. * <li> <p>PROCESSING</p> </li> <li> <p>SCHEDULING</p> </li> <li> <p>PREPARING</p>
  232. * </li> <li> <p>RUNNING</p> </li> <li> <p>COMPLETED</p> </li> <li> <p>STOPPING</p>
  233. * </li> </ul>
  234. */
  235. inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
  236. /**
  237. * <p>The job's status.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  238. * </li> <li> <p>PENDING_CONCURRENCY</p> </li> <li> <p>PENDING_DEVICE</p> </li>
  239. * <li> <p>PROCESSING</p> </li> <li> <p>SCHEDULING</p> </li> <li> <p>PREPARING</p>
  240. * </li> <li> <p>RUNNING</p> </li> <li> <p>COMPLETED</p> </li> <li> <p>STOPPING</p>
  241. * </li> </ul>
  242. */
  243. inline void SetStatus(const ExecutionStatus& value) { m_statusHasBeenSet = true; m_status = value; }
  244. /**
  245. * <p>The job's status.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  246. * </li> <li> <p>PENDING_CONCURRENCY</p> </li> <li> <p>PENDING_DEVICE</p> </li>
  247. * <li> <p>PROCESSING</p> </li> <li> <p>SCHEDULING</p> </li> <li> <p>PREPARING</p>
  248. * </li> <li> <p>RUNNING</p> </li> <li> <p>COMPLETED</p> </li> <li> <p>STOPPING</p>
  249. * </li> </ul>
  250. */
  251. inline void SetStatus(ExecutionStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
  252. /**
  253. * <p>The job's status.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  254. * </li> <li> <p>PENDING_CONCURRENCY</p> </li> <li> <p>PENDING_DEVICE</p> </li>
  255. * <li> <p>PROCESSING</p> </li> <li> <p>SCHEDULING</p> </li> <li> <p>PREPARING</p>
  256. * </li> <li> <p>RUNNING</p> </li> <li> <p>COMPLETED</p> </li> <li> <p>STOPPING</p>
  257. * </li> </ul>
  258. */
  259. inline Job& WithStatus(const ExecutionStatus& value) { SetStatus(value); return *this;}
  260. /**
  261. * <p>The job's status.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  262. * </li> <li> <p>PENDING_CONCURRENCY</p> </li> <li> <p>PENDING_DEVICE</p> </li>
  263. * <li> <p>PROCESSING</p> </li> <li> <p>SCHEDULING</p> </li> <li> <p>PREPARING</p>
  264. * </li> <li> <p>RUNNING</p> </li> <li> <p>COMPLETED</p> </li> <li> <p>STOPPING</p>
  265. * </li> </ul>
  266. */
  267. inline Job& WithStatus(ExecutionStatus&& value) { SetStatus(std::move(value)); return *this;}
  268. /**
  269. * <p>The job's result.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  270. * </li> <li> <p>PASSED</p> </li> <li> <p>WARNED</p> </li> <li> <p>FAILED</p> </li>
  271. * <li> <p>SKIPPED</p> </li> <li> <p>ERRORED</p> </li> <li> <p>STOPPED</p> </li>
  272. * </ul>
  273. */
  274. inline const ExecutionResult& GetResult() const{ return m_result; }
  275. /**
  276. * <p>The job's result.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  277. * </li> <li> <p>PASSED</p> </li> <li> <p>WARNED</p> </li> <li> <p>FAILED</p> </li>
  278. * <li> <p>SKIPPED</p> </li> <li> <p>ERRORED</p> </li> <li> <p>STOPPED</p> </li>
  279. * </ul>
  280. */
  281. inline bool ResultHasBeenSet() const { return m_resultHasBeenSet; }
  282. /**
  283. * <p>The job's result.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  284. * </li> <li> <p>PASSED</p> </li> <li> <p>WARNED</p> </li> <li> <p>FAILED</p> </li>
  285. * <li> <p>SKIPPED</p> </li> <li> <p>ERRORED</p> </li> <li> <p>STOPPED</p> </li>
  286. * </ul>
  287. */
  288. inline void SetResult(const ExecutionResult& value) { m_resultHasBeenSet = true; m_result = value; }
  289. /**
  290. * <p>The job's result.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  291. * </li> <li> <p>PASSED</p> </li> <li> <p>WARNED</p> </li> <li> <p>FAILED</p> </li>
  292. * <li> <p>SKIPPED</p> </li> <li> <p>ERRORED</p> </li> <li> <p>STOPPED</p> </li>
  293. * </ul>
  294. */
  295. inline void SetResult(ExecutionResult&& value) { m_resultHasBeenSet = true; m_result = std::move(value); }
  296. /**
  297. * <p>The job's result.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  298. * </li> <li> <p>PASSED</p> </li> <li> <p>WARNED</p> </li> <li> <p>FAILED</p> </li>
  299. * <li> <p>SKIPPED</p> </li> <li> <p>ERRORED</p> </li> <li> <p>STOPPED</p> </li>
  300. * </ul>
  301. */
  302. inline Job& WithResult(const ExecutionResult& value) { SetResult(value); return *this;}
  303. /**
  304. * <p>The job's result.</p> <p>Allowed values include:</p> <ul> <li> <p>PENDING</p>
  305. * </li> <li> <p>PASSED</p> </li> <li> <p>WARNED</p> </li> <li> <p>FAILED</p> </li>
  306. * <li> <p>SKIPPED</p> </li> <li> <p>ERRORED</p> </li> <li> <p>STOPPED</p> </li>
  307. * </ul>
  308. */
  309. inline Job& WithResult(ExecutionResult&& value) { SetResult(std::move(value)); return *this;}
  310. /**
  311. * <p>The job's start time.</p>
  312. */
  313. inline const Aws::Utils::DateTime& GetStarted() const{ return m_started; }
  314. /**
  315. * <p>The job's start time.</p>
  316. */
  317. inline bool StartedHasBeenSet() const { return m_startedHasBeenSet; }
  318. /**
  319. * <p>The job's start time.</p>
  320. */
  321. inline void SetStarted(const Aws::Utils::DateTime& value) { m_startedHasBeenSet = true; m_started = value; }
  322. /**
  323. * <p>The job's start time.</p>
  324. */
  325. inline void SetStarted(Aws::Utils::DateTime&& value) { m_startedHasBeenSet = true; m_started = std::move(value); }
  326. /**
  327. * <p>The job's start time.</p>
  328. */
  329. inline Job& WithStarted(const Aws::Utils::DateTime& value) { SetStarted(value); return *this;}
  330. /**
  331. * <p>The job's start time.</p>
  332. */
  333. inline Job& WithStarted(Aws::Utils::DateTime&& value) { SetStarted(std::move(value)); return *this;}
  334. /**
  335. * <p>The job's stop time.</p>
  336. */
  337. inline const Aws::Utils::DateTime& GetStopped() const{ return m_stopped; }
  338. /**
  339. * <p>The job's stop time.</p>
  340. */
  341. inline bool StoppedHasBeenSet() const { return m_stoppedHasBeenSet; }
  342. /**
  343. * <p>The job's stop time.</p>
  344. */
  345. inline void SetStopped(const Aws::Utils::DateTime& value) { m_stoppedHasBeenSet = true; m_stopped = value; }
  346. /**
  347. * <p>The job's stop time.</p>
  348. */
  349. inline void SetStopped(Aws::Utils::DateTime&& value) { m_stoppedHasBeenSet = true; m_stopped = std::move(value); }
  350. /**
  351. * <p>The job's stop time.</p>
  352. */
  353. inline Job& WithStopped(const Aws::Utils::DateTime& value) { SetStopped(value); return *this;}
  354. /**
  355. * <p>The job's stop time.</p>
  356. */
  357. inline Job& WithStopped(Aws::Utils::DateTime&& value) { SetStopped(std::move(value)); return *this;}
  358. /**
  359. * <p>The job's result counters.</p>
  360. */
  361. inline const Counters& GetCounters() const{ return m_counters; }
  362. /**
  363. * <p>The job's result counters.</p>
  364. */
  365. inline bool CountersHasBeenSet() const { return m_countersHasBeenSet; }
  366. /**
  367. * <p>The job's result counters.</p>
  368. */
  369. inline void SetCounters(const Counters& value) { m_countersHasBeenSet = true; m_counters = value; }
  370. /**
  371. * <p>The job's result counters.</p>
  372. */
  373. inline void SetCounters(Counters&& value) { m_countersHasBeenSet = true; m_counters = std::move(value); }
  374. /**
  375. * <p>The job's result counters.</p>
  376. */
  377. inline Job& WithCounters(const Counters& value) { SetCounters(value); return *this;}
  378. /**
  379. * <p>The job's result counters.</p>
  380. */
  381. inline Job& WithCounters(Counters&& value) { SetCounters(std::move(value)); return *this;}
  382. /**
  383. * <p>A message about the job's result.</p>
  384. */
  385. inline const Aws::String& GetMessage() const{ return m_message; }
  386. /**
  387. * <p>A message about the job's result.</p>
  388. */
  389. inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
  390. /**
  391. * <p>A message about the job's result.</p>
  392. */
  393. inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
  394. /**
  395. * <p>A message about the job's result.</p>
  396. */
  397. inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
  398. /**
  399. * <p>A message about the job's result.</p>
  400. */
  401. inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
  402. /**
  403. * <p>A message about the job's result.</p>
  404. */
  405. inline Job& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
  406. /**
  407. * <p>A message about the job's result.</p>
  408. */
  409. inline Job& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
  410. /**
  411. * <p>A message about the job's result.</p>
  412. */
  413. inline Job& WithMessage(const char* value) { SetMessage(value); return *this;}
  414. /**
  415. * <p>The device (phone or tablet).</p>
  416. */
  417. inline const Device& GetDevice() const{ return m_device; }
  418. /**
  419. * <p>The device (phone or tablet).</p>
  420. */
  421. inline bool DeviceHasBeenSet() const { return m_deviceHasBeenSet; }
  422. /**
  423. * <p>The device (phone or tablet).</p>
  424. */
  425. inline void SetDevice(const Device& value) { m_deviceHasBeenSet = true; m_device = value; }
  426. /**
  427. * <p>The device (phone or tablet).</p>
  428. */
  429. inline void SetDevice(Device&& value) { m_deviceHasBeenSet = true; m_device = std::move(value); }
  430. /**
  431. * <p>The device (phone or tablet).</p>
  432. */
  433. inline Job& WithDevice(const Device& value) { SetDevice(value); return *this;}
  434. /**
  435. * <p>The device (phone or tablet).</p>
  436. */
  437. inline Job& WithDevice(Device&& value) { SetDevice(std::move(value)); return *this;}
  438. /**
  439. * <p>The ARN of the instance.</p>
  440. */
  441. inline const Aws::String& GetInstanceArn() const{ return m_instanceArn; }
  442. /**
  443. * <p>The ARN of the instance.</p>
  444. */
  445. inline bool InstanceArnHasBeenSet() const { return m_instanceArnHasBeenSet; }
  446. /**
  447. * <p>The ARN of the instance.</p>
  448. */
  449. inline void SetInstanceArn(const Aws::String& value) { m_instanceArnHasBeenSet = true; m_instanceArn = value; }
  450. /**
  451. * <p>The ARN of the instance.</p>
  452. */
  453. inline void SetInstanceArn(Aws::String&& value) { m_instanceArnHasBeenSet = true; m_instanceArn = std::move(value); }
  454. /**
  455. * <p>The ARN of the instance.</p>
  456. */
  457. inline void SetInstanceArn(const char* value) { m_instanceArnHasBeenSet = true; m_instanceArn.assign(value); }
  458. /**
  459. * <p>The ARN of the instance.</p>
  460. */
  461. inline Job& WithInstanceArn(const Aws::String& value) { SetInstanceArn(value); return *this;}
  462. /**
  463. * <p>The ARN of the instance.</p>
  464. */
  465. inline Job& WithInstanceArn(Aws::String&& value) { SetInstanceArn(std::move(value)); return *this;}
  466. /**
  467. * <p>The ARN of the instance.</p>
  468. */
  469. inline Job& WithInstanceArn(const char* value) { SetInstanceArn(value); return *this;}
  470. /**
  471. * <p>Represents the total (metered or unmetered) minutes used by the job.</p>
  472. */
  473. inline const DeviceMinutes& GetDeviceMinutes() const{ return m_deviceMinutes; }
  474. /**
  475. * <p>Represents the total (metered or unmetered) minutes used by the job.</p>
  476. */
  477. inline bool DeviceMinutesHasBeenSet() const { return m_deviceMinutesHasBeenSet; }
  478. /**
  479. * <p>Represents the total (metered or unmetered) minutes used by the job.</p>
  480. */
  481. inline void SetDeviceMinutes(const DeviceMinutes& value) { m_deviceMinutesHasBeenSet = true; m_deviceMinutes = value; }
  482. /**
  483. * <p>Represents the total (metered or unmetered) minutes used by the job.</p>
  484. */
  485. inline void SetDeviceMinutes(DeviceMinutes&& value) { m_deviceMinutesHasBeenSet = true; m_deviceMinutes = std::move(value); }
  486. /**
  487. * <p>Represents the total (metered or unmetered) minutes used by the job.</p>
  488. */
  489. inline Job& WithDeviceMinutes(const DeviceMinutes& value) { SetDeviceMinutes(value); return *this;}
  490. /**
  491. * <p>Represents the total (metered or unmetered) minutes used by the job.</p>
  492. */
  493. inline Job& WithDeviceMinutes(DeviceMinutes&& value) { SetDeviceMinutes(std::move(value)); return *this;}
  494. /**
  495. * <p>The endpoint for streaming device video.</p>
  496. */
  497. inline const Aws::String& GetVideoEndpoint() const{ return m_videoEndpoint; }
  498. /**
  499. * <p>The endpoint for streaming device video.</p>
  500. */
  501. inline bool VideoEndpointHasBeenSet() const { return m_videoEndpointHasBeenSet; }
  502. /**
  503. * <p>The endpoint for streaming device video.</p>
  504. */
  505. inline void SetVideoEndpoint(const Aws::String& value) { m_videoEndpointHasBeenSet = true; m_videoEndpoint = value; }
  506. /**
  507. * <p>The endpoint for streaming device video.</p>
  508. */
  509. inline void SetVideoEndpoint(Aws::String&& value) { m_videoEndpointHasBeenSet = true; m_videoEndpoint = std::move(value); }
  510. /**
  511. * <p>The endpoint for streaming device video.</p>
  512. */
  513. inline void SetVideoEndpoint(const char* value) { m_videoEndpointHasBeenSet = true; m_videoEndpoint.assign(value); }
  514. /**
  515. * <p>The endpoint for streaming device video.</p>
  516. */
  517. inline Job& WithVideoEndpoint(const Aws::String& value) { SetVideoEndpoint(value); return *this;}
  518. /**
  519. * <p>The endpoint for streaming device video.</p>
  520. */
  521. inline Job& WithVideoEndpoint(Aws::String&& value) { SetVideoEndpoint(std::move(value)); return *this;}
  522. /**
  523. * <p>The endpoint for streaming device video.</p>
  524. */
  525. inline Job& WithVideoEndpoint(const char* value) { SetVideoEndpoint(value); return *this;}
  526. /**
  527. * <p>This value is set to true if video capture is enabled. Otherwise, it is set
  528. * to false.</p>
  529. */
  530. inline bool GetVideoCapture() const{ return m_videoCapture; }
  531. /**
  532. * <p>This value is set to true if video capture is enabled. Otherwise, it is set
  533. * to false.</p>
  534. */
  535. inline bool VideoCaptureHasBeenSet() const { return m_videoCaptureHasBeenSet; }
  536. /**
  537. * <p>This value is set to true if video capture is enabled. Otherwise, it is set
  538. * to false.</p>
  539. */
  540. inline void SetVideoCapture(bool value) { m_videoCaptureHasBeenSet = true; m_videoCapture = value; }
  541. /**
  542. * <p>This value is set to true if video capture is enabled. Otherwise, it is set
  543. * to false.</p>
  544. */
  545. inline Job& WithVideoCapture(bool value) { SetVideoCapture(value); return *this;}
  546. private:
  547. Aws::String m_arn;
  548. bool m_arnHasBeenSet;
  549. Aws::String m_name;
  550. bool m_nameHasBeenSet;
  551. TestType m_type;
  552. bool m_typeHasBeenSet;
  553. Aws::Utils::DateTime m_created;
  554. bool m_createdHasBeenSet;
  555. ExecutionStatus m_status;
  556. bool m_statusHasBeenSet;
  557. ExecutionResult m_result;
  558. bool m_resultHasBeenSet;
  559. Aws::Utils::DateTime m_started;
  560. bool m_startedHasBeenSet;
  561. Aws::Utils::DateTime m_stopped;
  562. bool m_stoppedHasBeenSet;
  563. Counters m_counters;
  564. bool m_countersHasBeenSet;
  565. Aws::String m_message;
  566. bool m_messageHasBeenSet;
  567. Device m_device;
  568. bool m_deviceHasBeenSet;
  569. Aws::String m_instanceArn;
  570. bool m_instanceArnHasBeenSet;
  571. DeviceMinutes m_deviceMinutes;
  572. bool m_deviceMinutesHasBeenSet;
  573. Aws::String m_videoEndpoint;
  574. bool m_videoEndpointHasBeenSet;
  575. bool m_videoCapture;
  576. bool m_videoCaptureHasBeenSet;
  577. };
  578. } // namespace Model
  579. } // namespace DeviceFarm
  580. } // namespace Aws