1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/glue/Glue_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/core/utils/DateTime.h>
10 #include <aws/glue/model/JobRunState.h>
11 #include <aws/core/utils/memory/stl/AWSMap.h>
12 #include <aws/core/utils/memory/stl/AWSVector.h>
13 #include <aws/glue/model/WorkerType.h>
14 #include <aws/glue/model/NotificationProperty.h>
15 #include <aws/glue/model/Predecessor.h>
16 #include <utility>
17 
18 namespace Aws
19 {
20 namespace Utils
21 {
22 namespace Json
23 {
24   class JsonValue;
25   class JsonView;
26 } // namespace Json
27 } // namespace Utils
28 namespace Glue
29 {
30 namespace Model
31 {
32 
33   /**
34    * <p>Contains information about a job run.</p><p><h3>See Also:</h3>   <a
35    * href="http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/JobRun">AWS API
36    * Reference</a></p>
37    */
38   class AWS_GLUE_API JobRun
39   {
40   public:
41     JobRun();
42     JobRun(Aws::Utils::Json::JsonView jsonValue);
43     JobRun& operator=(Aws::Utils::Json::JsonView jsonValue);
44     Aws::Utils::Json::JsonValue Jsonize() const;
45 
46 
47     /**
48      * <p>The ID of this job run.</p>
49      */
GetId()50     inline const Aws::String& GetId() const{ return m_id; }
51 
52     /**
53      * <p>The ID of this job run.</p>
54      */
IdHasBeenSet()55     inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
56 
57     /**
58      * <p>The ID of this job run.</p>
59      */
SetId(const Aws::String & value)60     inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
61 
62     /**
63      * <p>The ID of this job run.</p>
64      */
SetId(Aws::String && value)65     inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
66 
67     /**
68      * <p>The ID of this job run.</p>
69      */
SetId(const char * value)70     inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
71 
72     /**
73      * <p>The ID of this job run.</p>
74      */
WithId(const Aws::String & value)75     inline JobRun& WithId(const Aws::String& value) { SetId(value); return *this;}
76 
77     /**
78      * <p>The ID of this job run.</p>
79      */
WithId(Aws::String && value)80     inline JobRun& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
81 
82     /**
83      * <p>The ID of this job run.</p>
84      */
WithId(const char * value)85     inline JobRun& WithId(const char* value) { SetId(value); return *this;}
86 
87 
88     /**
89      * <p>The number of the attempt to run this job.</p>
90      */
GetAttempt()91     inline int GetAttempt() const{ return m_attempt; }
92 
93     /**
94      * <p>The number of the attempt to run this job.</p>
95      */
AttemptHasBeenSet()96     inline bool AttemptHasBeenSet() const { return m_attemptHasBeenSet; }
97 
98     /**
99      * <p>The number of the attempt to run this job.</p>
100      */
SetAttempt(int value)101     inline void SetAttempt(int value) { m_attemptHasBeenSet = true; m_attempt = value; }
102 
103     /**
104      * <p>The number of the attempt to run this job.</p>
105      */
WithAttempt(int value)106     inline JobRun& WithAttempt(int value) { SetAttempt(value); return *this;}
107 
108 
109     /**
110      * <p>The ID of the previous run of this job. For example, the
111      * <code>JobRunId</code> specified in the <code>StartJobRun</code> action.</p>
112      */
GetPreviousRunId()113     inline const Aws::String& GetPreviousRunId() const{ return m_previousRunId; }
114 
115     /**
116      * <p>The ID of the previous run of this job. For example, the
117      * <code>JobRunId</code> specified in the <code>StartJobRun</code> action.</p>
118      */
PreviousRunIdHasBeenSet()119     inline bool PreviousRunIdHasBeenSet() const { return m_previousRunIdHasBeenSet; }
120 
121     /**
122      * <p>The ID of the previous run of this job. For example, the
123      * <code>JobRunId</code> specified in the <code>StartJobRun</code> action.</p>
124      */
SetPreviousRunId(const Aws::String & value)125     inline void SetPreviousRunId(const Aws::String& value) { m_previousRunIdHasBeenSet = true; m_previousRunId = value; }
126 
127     /**
128      * <p>The ID of the previous run of this job. For example, the
129      * <code>JobRunId</code> specified in the <code>StartJobRun</code> action.</p>
130      */
SetPreviousRunId(Aws::String && value)131     inline void SetPreviousRunId(Aws::String&& value) { m_previousRunIdHasBeenSet = true; m_previousRunId = std::move(value); }
132 
133     /**
134      * <p>The ID of the previous run of this job. For example, the
135      * <code>JobRunId</code> specified in the <code>StartJobRun</code> action.</p>
136      */
SetPreviousRunId(const char * value)137     inline void SetPreviousRunId(const char* value) { m_previousRunIdHasBeenSet = true; m_previousRunId.assign(value); }
138 
139     /**
140      * <p>The ID of the previous run of this job. For example, the
141      * <code>JobRunId</code> specified in the <code>StartJobRun</code> action.</p>
142      */
WithPreviousRunId(const Aws::String & value)143     inline JobRun& WithPreviousRunId(const Aws::String& value) { SetPreviousRunId(value); return *this;}
144 
145     /**
146      * <p>The ID of the previous run of this job. For example, the
147      * <code>JobRunId</code> specified in the <code>StartJobRun</code> action.</p>
148      */
WithPreviousRunId(Aws::String && value)149     inline JobRun& WithPreviousRunId(Aws::String&& value) { SetPreviousRunId(std::move(value)); return *this;}
150 
151     /**
152      * <p>The ID of the previous run of this job. For example, the
153      * <code>JobRunId</code> specified in the <code>StartJobRun</code> action.</p>
154      */
WithPreviousRunId(const char * value)155     inline JobRun& WithPreviousRunId(const char* value) { SetPreviousRunId(value); return *this;}
156 
157 
158     /**
159      * <p>The name of the trigger that started this job run.</p>
160      */
GetTriggerName()161     inline const Aws::String& GetTriggerName() const{ return m_triggerName; }
162 
163     /**
164      * <p>The name of the trigger that started this job run.</p>
165      */
TriggerNameHasBeenSet()166     inline bool TriggerNameHasBeenSet() const { return m_triggerNameHasBeenSet; }
167 
168     /**
169      * <p>The name of the trigger that started this job run.</p>
170      */
SetTriggerName(const Aws::String & value)171     inline void SetTriggerName(const Aws::String& value) { m_triggerNameHasBeenSet = true; m_triggerName = value; }
172 
173     /**
174      * <p>The name of the trigger that started this job run.</p>
175      */
SetTriggerName(Aws::String && value)176     inline void SetTriggerName(Aws::String&& value) { m_triggerNameHasBeenSet = true; m_triggerName = std::move(value); }
177 
178     /**
179      * <p>The name of the trigger that started this job run.</p>
180      */
SetTriggerName(const char * value)181     inline void SetTriggerName(const char* value) { m_triggerNameHasBeenSet = true; m_triggerName.assign(value); }
182 
183     /**
184      * <p>The name of the trigger that started this job run.</p>
185      */
WithTriggerName(const Aws::String & value)186     inline JobRun& WithTriggerName(const Aws::String& value) { SetTriggerName(value); return *this;}
187 
188     /**
189      * <p>The name of the trigger that started this job run.</p>
190      */
WithTriggerName(Aws::String && value)191     inline JobRun& WithTriggerName(Aws::String&& value) { SetTriggerName(std::move(value)); return *this;}
192 
193     /**
194      * <p>The name of the trigger that started this job run.</p>
195      */
WithTriggerName(const char * value)196     inline JobRun& WithTriggerName(const char* value) { SetTriggerName(value); return *this;}
197 
198 
199     /**
200      * <p>The name of the job definition being used in this run.</p>
201      */
GetJobName()202     inline const Aws::String& GetJobName() const{ return m_jobName; }
203 
204     /**
205      * <p>The name of the job definition being used in this run.</p>
206      */
JobNameHasBeenSet()207     inline bool JobNameHasBeenSet() const { return m_jobNameHasBeenSet; }
208 
209     /**
210      * <p>The name of the job definition being used in this run.</p>
211      */
SetJobName(const Aws::String & value)212     inline void SetJobName(const Aws::String& value) { m_jobNameHasBeenSet = true; m_jobName = value; }
213 
214     /**
215      * <p>The name of the job definition being used in this run.</p>
216      */
SetJobName(Aws::String && value)217     inline void SetJobName(Aws::String&& value) { m_jobNameHasBeenSet = true; m_jobName = std::move(value); }
218 
219     /**
220      * <p>The name of the job definition being used in this run.</p>
221      */
SetJobName(const char * value)222     inline void SetJobName(const char* value) { m_jobNameHasBeenSet = true; m_jobName.assign(value); }
223 
224     /**
225      * <p>The name of the job definition being used in this run.</p>
226      */
WithJobName(const Aws::String & value)227     inline JobRun& WithJobName(const Aws::String& value) { SetJobName(value); return *this;}
228 
229     /**
230      * <p>The name of the job definition being used in this run.</p>
231      */
WithJobName(Aws::String && value)232     inline JobRun& WithJobName(Aws::String&& value) { SetJobName(std::move(value)); return *this;}
233 
234     /**
235      * <p>The name of the job definition being used in this run.</p>
236      */
WithJobName(const char * value)237     inline JobRun& WithJobName(const char* value) { SetJobName(value); return *this;}
238 
239 
240     /**
241      * <p>The date and time at which this job run was started.</p>
242      */
GetStartedOn()243     inline const Aws::Utils::DateTime& GetStartedOn() const{ return m_startedOn; }
244 
245     /**
246      * <p>The date and time at which this job run was started.</p>
247      */
StartedOnHasBeenSet()248     inline bool StartedOnHasBeenSet() const { return m_startedOnHasBeenSet; }
249 
250     /**
251      * <p>The date and time at which this job run was started.</p>
252      */
SetStartedOn(const Aws::Utils::DateTime & value)253     inline void SetStartedOn(const Aws::Utils::DateTime& value) { m_startedOnHasBeenSet = true; m_startedOn = value; }
254 
255     /**
256      * <p>The date and time at which this job run was started.</p>
257      */
SetStartedOn(Aws::Utils::DateTime && value)258     inline void SetStartedOn(Aws::Utils::DateTime&& value) { m_startedOnHasBeenSet = true; m_startedOn = std::move(value); }
259 
260     /**
261      * <p>The date and time at which this job run was started.</p>
262      */
WithStartedOn(const Aws::Utils::DateTime & value)263     inline JobRun& WithStartedOn(const Aws::Utils::DateTime& value) { SetStartedOn(value); return *this;}
264 
265     /**
266      * <p>The date and time at which this job run was started.</p>
267      */
WithStartedOn(Aws::Utils::DateTime && value)268     inline JobRun& WithStartedOn(Aws::Utils::DateTime&& value) { SetStartedOn(std::move(value)); return *this;}
269 
270 
271     /**
272      * <p>The last time that this job run was modified.</p>
273      */
GetLastModifiedOn()274     inline const Aws::Utils::DateTime& GetLastModifiedOn() const{ return m_lastModifiedOn; }
275 
276     /**
277      * <p>The last time that this job run was modified.</p>
278      */
LastModifiedOnHasBeenSet()279     inline bool LastModifiedOnHasBeenSet() const { return m_lastModifiedOnHasBeenSet; }
280 
281     /**
282      * <p>The last time that this job run was modified.</p>
283      */
SetLastModifiedOn(const Aws::Utils::DateTime & value)284     inline void SetLastModifiedOn(const Aws::Utils::DateTime& value) { m_lastModifiedOnHasBeenSet = true; m_lastModifiedOn = value; }
285 
286     /**
287      * <p>The last time that this job run was modified.</p>
288      */
SetLastModifiedOn(Aws::Utils::DateTime && value)289     inline void SetLastModifiedOn(Aws::Utils::DateTime&& value) { m_lastModifiedOnHasBeenSet = true; m_lastModifiedOn = std::move(value); }
290 
291     /**
292      * <p>The last time that this job run was modified.</p>
293      */
WithLastModifiedOn(const Aws::Utils::DateTime & value)294     inline JobRun& WithLastModifiedOn(const Aws::Utils::DateTime& value) { SetLastModifiedOn(value); return *this;}
295 
296     /**
297      * <p>The last time that this job run was modified.</p>
298      */
WithLastModifiedOn(Aws::Utils::DateTime && value)299     inline JobRun& WithLastModifiedOn(Aws::Utils::DateTime&& value) { SetLastModifiedOn(std::move(value)); return *this;}
300 
301 
302     /**
303      * <p>The date and time that this job run completed.</p>
304      */
GetCompletedOn()305     inline const Aws::Utils::DateTime& GetCompletedOn() const{ return m_completedOn; }
306 
307     /**
308      * <p>The date and time that this job run completed.</p>
309      */
CompletedOnHasBeenSet()310     inline bool CompletedOnHasBeenSet() const { return m_completedOnHasBeenSet; }
311 
312     /**
313      * <p>The date and time that this job run completed.</p>
314      */
SetCompletedOn(const Aws::Utils::DateTime & value)315     inline void SetCompletedOn(const Aws::Utils::DateTime& value) { m_completedOnHasBeenSet = true; m_completedOn = value; }
316 
317     /**
318      * <p>The date and time that this job run completed.</p>
319      */
SetCompletedOn(Aws::Utils::DateTime && value)320     inline void SetCompletedOn(Aws::Utils::DateTime&& value) { m_completedOnHasBeenSet = true; m_completedOn = std::move(value); }
321 
322     /**
323      * <p>The date and time that this job run completed.</p>
324      */
WithCompletedOn(const Aws::Utils::DateTime & value)325     inline JobRun& WithCompletedOn(const Aws::Utils::DateTime& value) { SetCompletedOn(value); return *this;}
326 
327     /**
328      * <p>The date and time that this job run completed.</p>
329      */
WithCompletedOn(Aws::Utils::DateTime && value)330     inline JobRun& WithCompletedOn(Aws::Utils::DateTime&& value) { SetCompletedOn(std::move(value)); return *this;}
331 
332 
333     /**
334      * <p>The current state of the job run. For more information about the statuses of
335      * jobs that have terminated abnormally, see <a
336      * href="https://docs.aws.amazon.com/glue/latest/dg/job-run-statuses.html">Glue Job
337      * Run Statuses</a>.</p>
338      */
GetJobRunState()339     inline const JobRunState& GetJobRunState() const{ return m_jobRunState; }
340 
341     /**
342      * <p>The current state of the job run. For more information about the statuses of
343      * jobs that have terminated abnormally, see <a
344      * href="https://docs.aws.amazon.com/glue/latest/dg/job-run-statuses.html">Glue Job
345      * Run Statuses</a>.</p>
346      */
JobRunStateHasBeenSet()347     inline bool JobRunStateHasBeenSet() const { return m_jobRunStateHasBeenSet; }
348 
349     /**
350      * <p>The current state of the job run. For more information about the statuses of
351      * jobs that have terminated abnormally, see <a
352      * href="https://docs.aws.amazon.com/glue/latest/dg/job-run-statuses.html">Glue Job
353      * Run Statuses</a>.</p>
354      */
SetJobRunState(const JobRunState & value)355     inline void SetJobRunState(const JobRunState& value) { m_jobRunStateHasBeenSet = true; m_jobRunState = value; }
356 
357     /**
358      * <p>The current state of the job run. For more information about the statuses of
359      * jobs that have terminated abnormally, see <a
360      * href="https://docs.aws.amazon.com/glue/latest/dg/job-run-statuses.html">Glue Job
361      * Run Statuses</a>.</p>
362      */
SetJobRunState(JobRunState && value)363     inline void SetJobRunState(JobRunState&& value) { m_jobRunStateHasBeenSet = true; m_jobRunState = std::move(value); }
364 
365     /**
366      * <p>The current state of the job run. For more information about the statuses of
367      * jobs that have terminated abnormally, see <a
368      * href="https://docs.aws.amazon.com/glue/latest/dg/job-run-statuses.html">Glue Job
369      * Run Statuses</a>.</p>
370      */
WithJobRunState(const JobRunState & value)371     inline JobRun& WithJobRunState(const JobRunState& value) { SetJobRunState(value); return *this;}
372 
373     /**
374      * <p>The current state of the job run. For more information about the statuses of
375      * jobs that have terminated abnormally, see <a
376      * href="https://docs.aws.amazon.com/glue/latest/dg/job-run-statuses.html">Glue Job
377      * Run Statuses</a>.</p>
378      */
WithJobRunState(JobRunState && value)379     inline JobRun& WithJobRunState(JobRunState&& value) { SetJobRunState(std::move(value)); return *this;}
380 
381 
382     /**
383      * <p>The job arguments associated with this run. For this job run, they replace
384      * the default arguments set in the job definition itself.</p> <p>You can specify
385      * arguments here that your own job-execution script consumes, as well as arguments
386      * that Glue itself consumes.</p> <p>For information about how to specify and
387      * consume your own job arguments, see the <a
388      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
389      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
390      * about the key-value pairs that Glue consumes to set up your job, see the <a
391      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
392      * Parameters Used by Glue</a> topic in the developer guide.</p>
393      */
GetArguments()394     inline const Aws::Map<Aws::String, Aws::String>& GetArguments() const{ return m_arguments; }
395 
396     /**
397      * <p>The job arguments associated with this run. For this job run, they replace
398      * the default arguments set in the job definition itself.</p> <p>You can specify
399      * arguments here that your own job-execution script consumes, as well as arguments
400      * that Glue itself consumes.</p> <p>For information about how to specify and
401      * consume your own job arguments, see the <a
402      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
403      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
404      * about the key-value pairs that Glue consumes to set up your job, see the <a
405      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
406      * Parameters Used by Glue</a> topic in the developer guide.</p>
407      */
ArgumentsHasBeenSet()408     inline bool ArgumentsHasBeenSet() const { return m_argumentsHasBeenSet; }
409 
410     /**
411      * <p>The job arguments associated with this run. For this job run, they replace
412      * the default arguments set in the job definition itself.</p> <p>You can specify
413      * arguments here that your own job-execution script consumes, as well as arguments
414      * that Glue itself consumes.</p> <p>For information about how to specify and
415      * consume your own job arguments, see the <a
416      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
417      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
418      * about the key-value pairs that Glue consumes to set up your job, see the <a
419      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
420      * Parameters Used by Glue</a> topic in the developer guide.</p>
421      */
SetArguments(const Aws::Map<Aws::String,Aws::String> & value)422     inline void SetArguments(const Aws::Map<Aws::String, Aws::String>& value) { m_argumentsHasBeenSet = true; m_arguments = value; }
423 
424     /**
425      * <p>The job arguments associated with this run. For this job run, they replace
426      * the default arguments set in the job definition itself.</p> <p>You can specify
427      * arguments here that your own job-execution script consumes, as well as arguments
428      * that Glue itself consumes.</p> <p>For information about how to specify and
429      * consume your own job arguments, see the <a
430      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
431      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
432      * about the key-value pairs that Glue consumes to set up your job, see the <a
433      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
434      * Parameters Used by Glue</a> topic in the developer guide.</p>
435      */
SetArguments(Aws::Map<Aws::String,Aws::String> && value)436     inline void SetArguments(Aws::Map<Aws::String, Aws::String>&& value) { m_argumentsHasBeenSet = true; m_arguments = std::move(value); }
437 
438     /**
439      * <p>The job arguments associated with this run. For this job run, they replace
440      * the default arguments set in the job definition itself.</p> <p>You can specify
441      * arguments here that your own job-execution script consumes, as well as arguments
442      * that Glue itself consumes.</p> <p>For information about how to specify and
443      * consume your own job arguments, see the <a
444      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
445      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
446      * about the key-value pairs that Glue consumes to set up your job, see the <a
447      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
448      * Parameters Used by Glue</a> topic in the developer guide.</p>
449      */
WithArguments(const Aws::Map<Aws::String,Aws::String> & value)450     inline JobRun& WithArguments(const Aws::Map<Aws::String, Aws::String>& value) { SetArguments(value); return *this;}
451 
452     /**
453      * <p>The job arguments associated with this run. For this job run, they replace
454      * the default arguments set in the job definition itself.</p> <p>You can specify
455      * arguments here that your own job-execution script consumes, as well as arguments
456      * that Glue itself consumes.</p> <p>For information about how to specify and
457      * consume your own job arguments, see the <a
458      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
459      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
460      * about the key-value pairs that Glue consumes to set up your job, see the <a
461      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
462      * Parameters Used by Glue</a> topic in the developer guide.</p>
463      */
WithArguments(Aws::Map<Aws::String,Aws::String> && value)464     inline JobRun& WithArguments(Aws::Map<Aws::String, Aws::String>&& value) { SetArguments(std::move(value)); return *this;}
465 
466     /**
467      * <p>The job arguments associated with this run. For this job run, they replace
468      * the default arguments set in the job definition itself.</p> <p>You can specify
469      * arguments here that your own job-execution script consumes, as well as arguments
470      * that Glue itself consumes.</p> <p>For information about how to specify and
471      * consume your own job arguments, see the <a
472      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
473      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
474      * about the key-value pairs that Glue consumes to set up your job, see the <a
475      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
476      * Parameters Used by Glue</a> topic in the developer guide.</p>
477      */
AddArguments(const Aws::String & key,const Aws::String & value)478     inline JobRun& AddArguments(const Aws::String& key, const Aws::String& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(key, value); return *this; }
479 
480     /**
481      * <p>The job arguments associated with this run. For this job run, they replace
482      * the default arguments set in the job definition itself.</p> <p>You can specify
483      * arguments here that your own job-execution script consumes, as well as arguments
484      * that Glue itself consumes.</p> <p>For information about how to specify and
485      * consume your own job arguments, see the <a
486      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
487      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
488      * about the key-value pairs that Glue consumes to set up your job, see the <a
489      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
490      * Parameters Used by Glue</a> topic in the developer guide.</p>
491      */
AddArguments(Aws::String && key,const Aws::String & value)492     inline JobRun& AddArguments(Aws::String&& key, const Aws::String& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(std::move(key), value); return *this; }
493 
494     /**
495      * <p>The job arguments associated with this run. For this job run, they replace
496      * the default arguments set in the job definition itself.</p> <p>You can specify
497      * arguments here that your own job-execution script consumes, as well as arguments
498      * that Glue itself consumes.</p> <p>For information about how to specify and
499      * consume your own job arguments, see the <a
500      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
501      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
502      * about the key-value pairs that Glue consumes to set up your job, see the <a
503      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
504      * Parameters Used by Glue</a> topic in the developer guide.</p>
505      */
AddArguments(const Aws::String & key,Aws::String && value)506     inline JobRun& AddArguments(const Aws::String& key, Aws::String&& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(key, std::move(value)); return *this; }
507 
508     /**
509      * <p>The job arguments associated with this run. For this job run, they replace
510      * the default arguments set in the job definition itself.</p> <p>You can specify
511      * arguments here that your own job-execution script consumes, as well as arguments
512      * that Glue itself consumes.</p> <p>For information about how to specify and
513      * consume your own job arguments, see the <a
514      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
515      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
516      * about the key-value pairs that Glue consumes to set up your job, see the <a
517      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
518      * Parameters Used by Glue</a> topic in the developer guide.</p>
519      */
AddArguments(Aws::String && key,Aws::String && value)520     inline JobRun& AddArguments(Aws::String&& key, Aws::String&& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(std::move(key), std::move(value)); return *this; }
521 
522     /**
523      * <p>The job arguments associated with this run. For this job run, they replace
524      * the default arguments set in the job definition itself.</p> <p>You can specify
525      * arguments here that your own job-execution script consumes, as well as arguments
526      * that Glue itself consumes.</p> <p>For information about how to specify and
527      * consume your own job arguments, see the <a
528      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
529      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
530      * about the key-value pairs that Glue consumes to set up your job, see the <a
531      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
532      * Parameters Used by Glue</a> topic in the developer guide.</p>
533      */
AddArguments(const char * key,Aws::String && value)534     inline JobRun& AddArguments(const char* key, Aws::String&& value) { m_argumentsHasBeenSet = true; m_arguments.emplace(key, std::move(value)); return *this; }
535 
536     /**
537      * <p>The job arguments associated with this run. For this job run, they replace
538      * the default arguments set in the job definition itself.</p> <p>You can specify
539      * arguments here that your own job-execution script consumes, as well as arguments
540      * that Glue itself consumes.</p> <p>For information about how to specify and
541      * consume your own job arguments, see the <a
542      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
543      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
544      * about the key-value pairs that Glue consumes to set up your job, see the <a
545      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
546      * Parameters Used by Glue</a> topic in the developer guide.</p>
547      */
AddArguments(Aws::String && key,const char * value)548     inline JobRun& AddArguments(Aws::String&& key, const char* value) { m_argumentsHasBeenSet = true; m_arguments.emplace(std::move(key), value); return *this; }
549 
550     /**
551      * <p>The job arguments associated with this run. For this job run, they replace
552      * the default arguments set in the job definition itself.</p> <p>You can specify
553      * arguments here that your own job-execution script consumes, as well as arguments
554      * that Glue itself consumes.</p> <p>For information about how to specify and
555      * consume your own job arguments, see the <a
556      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling
557      * Glue APIs in Python</a> topic in the developer guide.</p> <p>For information
558      * about the key-value pairs that Glue consumes to set up your job, see the <a
559      * href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special
560      * Parameters Used by Glue</a> topic in the developer guide.</p>
561      */
AddArguments(const char * key,const char * value)562     inline JobRun& AddArguments(const char* key, const char* value) { m_argumentsHasBeenSet = true; m_arguments.emplace(key, value); return *this; }
563 
564 
565     /**
566      * <p>An error message associated with this job run.</p>
567      */
GetErrorMessage()568     inline const Aws::String& GetErrorMessage() const{ return m_errorMessage; }
569 
570     /**
571      * <p>An error message associated with this job run.</p>
572      */
ErrorMessageHasBeenSet()573     inline bool ErrorMessageHasBeenSet() const { return m_errorMessageHasBeenSet; }
574 
575     /**
576      * <p>An error message associated with this job run.</p>
577      */
SetErrorMessage(const Aws::String & value)578     inline void SetErrorMessage(const Aws::String& value) { m_errorMessageHasBeenSet = true; m_errorMessage = value; }
579 
580     /**
581      * <p>An error message associated with this job run.</p>
582      */
SetErrorMessage(Aws::String && value)583     inline void SetErrorMessage(Aws::String&& value) { m_errorMessageHasBeenSet = true; m_errorMessage = std::move(value); }
584 
585     /**
586      * <p>An error message associated with this job run.</p>
587      */
SetErrorMessage(const char * value)588     inline void SetErrorMessage(const char* value) { m_errorMessageHasBeenSet = true; m_errorMessage.assign(value); }
589 
590     /**
591      * <p>An error message associated with this job run.</p>
592      */
WithErrorMessage(const Aws::String & value)593     inline JobRun& WithErrorMessage(const Aws::String& value) { SetErrorMessage(value); return *this;}
594 
595     /**
596      * <p>An error message associated with this job run.</p>
597      */
WithErrorMessage(Aws::String && value)598     inline JobRun& WithErrorMessage(Aws::String&& value) { SetErrorMessage(std::move(value)); return *this;}
599 
600     /**
601      * <p>An error message associated with this job run.</p>
602      */
WithErrorMessage(const char * value)603     inline JobRun& WithErrorMessage(const char* value) { SetErrorMessage(value); return *this;}
604 
605 
606     /**
607      * <p>A list of predecessors to this job run.</p>
608      */
GetPredecessorRuns()609     inline const Aws::Vector<Predecessor>& GetPredecessorRuns() const{ return m_predecessorRuns; }
610 
611     /**
612      * <p>A list of predecessors to this job run.</p>
613      */
PredecessorRunsHasBeenSet()614     inline bool PredecessorRunsHasBeenSet() const { return m_predecessorRunsHasBeenSet; }
615 
616     /**
617      * <p>A list of predecessors to this job run.</p>
618      */
SetPredecessorRuns(const Aws::Vector<Predecessor> & value)619     inline void SetPredecessorRuns(const Aws::Vector<Predecessor>& value) { m_predecessorRunsHasBeenSet = true; m_predecessorRuns = value; }
620 
621     /**
622      * <p>A list of predecessors to this job run.</p>
623      */
SetPredecessorRuns(Aws::Vector<Predecessor> && value)624     inline void SetPredecessorRuns(Aws::Vector<Predecessor>&& value) { m_predecessorRunsHasBeenSet = true; m_predecessorRuns = std::move(value); }
625 
626     /**
627      * <p>A list of predecessors to this job run.</p>
628      */
WithPredecessorRuns(const Aws::Vector<Predecessor> & value)629     inline JobRun& WithPredecessorRuns(const Aws::Vector<Predecessor>& value) { SetPredecessorRuns(value); return *this;}
630 
631     /**
632      * <p>A list of predecessors to this job run.</p>
633      */
WithPredecessorRuns(Aws::Vector<Predecessor> && value)634     inline JobRun& WithPredecessorRuns(Aws::Vector<Predecessor>&& value) { SetPredecessorRuns(std::move(value)); return *this;}
635 
636     /**
637      * <p>A list of predecessors to this job run.</p>
638      */
AddPredecessorRuns(const Predecessor & value)639     inline JobRun& AddPredecessorRuns(const Predecessor& value) { m_predecessorRunsHasBeenSet = true; m_predecessorRuns.push_back(value); return *this; }
640 
641     /**
642      * <p>A list of predecessors to this job run.</p>
643      */
AddPredecessorRuns(Predecessor && value)644     inline JobRun& AddPredecessorRuns(Predecessor&& value) { m_predecessorRunsHasBeenSet = true; m_predecessorRuns.push_back(std::move(value)); return *this; }
645 
646 
647     /**
648      * <p>The amount of time (in seconds) that the job run consumed resources.</p>
649      */
GetExecutionTime()650     inline int GetExecutionTime() const{ return m_executionTime; }
651 
652     /**
653      * <p>The amount of time (in seconds) that the job run consumed resources.</p>
654      */
ExecutionTimeHasBeenSet()655     inline bool ExecutionTimeHasBeenSet() const { return m_executionTimeHasBeenSet; }
656 
657     /**
658      * <p>The amount of time (in seconds) that the job run consumed resources.</p>
659      */
SetExecutionTime(int value)660     inline void SetExecutionTime(int value) { m_executionTimeHasBeenSet = true; m_executionTime = value; }
661 
662     /**
663      * <p>The amount of time (in seconds) that the job run consumed resources.</p>
664      */
WithExecutionTime(int value)665     inline JobRun& WithExecutionTime(int value) { SetExecutionTime(value); return *this;}
666 
667 
668     /**
669      * <p>The <code>JobRun</code> timeout in minutes. This is the maximum time that a
670      * job run can consume resources before it is terminated and enters
671      * <code>TIMEOUT</code> status. The default is 2,880 minutes (48 hours). This
672      * overrides the timeout value set in the parent job.</p>
673      */
GetTimeout()674     inline int GetTimeout() const{ return m_timeout; }
675 
676     /**
677      * <p>The <code>JobRun</code> timeout in minutes. This is the maximum time that a
678      * job run can consume resources before it is terminated and enters
679      * <code>TIMEOUT</code> status. The default is 2,880 minutes (48 hours). This
680      * overrides the timeout value set in the parent job.</p>
681      */
TimeoutHasBeenSet()682     inline bool TimeoutHasBeenSet() const { return m_timeoutHasBeenSet; }
683 
684     /**
685      * <p>The <code>JobRun</code> timeout in minutes. This is the maximum time that a
686      * job run can consume resources before it is terminated and enters
687      * <code>TIMEOUT</code> status. The default is 2,880 minutes (48 hours). This
688      * overrides the timeout value set in the parent job.</p>
689      */
SetTimeout(int value)690     inline void SetTimeout(int value) { m_timeoutHasBeenSet = true; m_timeout = value; }
691 
692     /**
693      * <p>The <code>JobRun</code> timeout in minutes. This is the maximum time that a
694      * job run can consume resources before it is terminated and enters
695      * <code>TIMEOUT</code> status. The default is 2,880 minutes (48 hours). This
696      * overrides the timeout value set in the parent job.</p>
697      */
WithTimeout(int value)698     inline JobRun& WithTimeout(int value) { SetTimeout(value); return *this;}
699 
700 
701     /**
702      * <p>The number of Glue data processing units (DPUs) that can be allocated when
703      * this job runs. A DPU is a relative measure of processing power that consists of
704      * 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the
705      * <a href="https://aws.amazon.com/glue/pricing/">Glue pricing page</a>.</p> <p>Do
706      * not set <code>Max Capacity</code> if using <code>WorkerType</code> and
707      * <code>NumberOfWorkers</code>.</p> <p>The value that can be allocated for
708      * <code>MaxCapacity</code> depends on whether you are running a Python shell job
709      * or an Apache Spark ETL job:</p> <ul> <li> <p>When you specify a Python shell job
710      * (<code>JobCommand.Name</code>="pythonshell"), you can allocate either 0.0625 or
711      * 1 DPU. The default is 0.0625 DPU.</p> </li> <li> <p>When you specify an Apache
712      * Spark ETL job (<code>JobCommand.Name</code>="glueetl"), you can allocate from 2
713      * to 100 DPUs. The default is 10 DPUs. This job type cannot have a fractional DPU
714      * allocation.</p> </li> </ul>
715      */
GetMaxCapacity()716     inline double GetMaxCapacity() const{ return m_maxCapacity; }
717 
718     /**
719      * <p>The number of Glue data processing units (DPUs) that can be allocated when
720      * this job runs. A DPU is a relative measure of processing power that consists of
721      * 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the
722      * <a href="https://aws.amazon.com/glue/pricing/">Glue pricing page</a>.</p> <p>Do
723      * not set <code>Max Capacity</code> if using <code>WorkerType</code> and
724      * <code>NumberOfWorkers</code>.</p> <p>The value that can be allocated for
725      * <code>MaxCapacity</code> depends on whether you are running a Python shell job
726      * or an Apache Spark ETL job:</p> <ul> <li> <p>When you specify a Python shell job
727      * (<code>JobCommand.Name</code>="pythonshell"), you can allocate either 0.0625 or
728      * 1 DPU. The default is 0.0625 DPU.</p> </li> <li> <p>When you specify an Apache
729      * Spark ETL job (<code>JobCommand.Name</code>="glueetl"), you can allocate from 2
730      * to 100 DPUs. The default is 10 DPUs. This job type cannot have a fractional DPU
731      * allocation.</p> </li> </ul>
732      */
MaxCapacityHasBeenSet()733     inline bool MaxCapacityHasBeenSet() const { return m_maxCapacityHasBeenSet; }
734 
735     /**
736      * <p>The number of Glue data processing units (DPUs) that can be allocated when
737      * this job runs. A DPU is a relative measure of processing power that consists of
738      * 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the
739      * <a href="https://aws.amazon.com/glue/pricing/">Glue pricing page</a>.</p> <p>Do
740      * not set <code>Max Capacity</code> if using <code>WorkerType</code> and
741      * <code>NumberOfWorkers</code>.</p> <p>The value that can be allocated for
742      * <code>MaxCapacity</code> depends on whether you are running a Python shell job
743      * or an Apache Spark ETL job:</p> <ul> <li> <p>When you specify a Python shell job
744      * (<code>JobCommand.Name</code>="pythonshell"), you can allocate either 0.0625 or
745      * 1 DPU. The default is 0.0625 DPU.</p> </li> <li> <p>When you specify an Apache
746      * Spark ETL job (<code>JobCommand.Name</code>="glueetl"), you can allocate from 2
747      * to 100 DPUs. The default is 10 DPUs. This job type cannot have a fractional DPU
748      * allocation.</p> </li> </ul>
749      */
SetMaxCapacity(double value)750     inline void SetMaxCapacity(double value) { m_maxCapacityHasBeenSet = true; m_maxCapacity = value; }
751 
752     /**
753      * <p>The number of Glue data processing units (DPUs) that can be allocated when
754      * this job runs. A DPU is a relative measure of processing power that consists of
755      * 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the
756      * <a href="https://aws.amazon.com/glue/pricing/">Glue pricing page</a>.</p> <p>Do
757      * not set <code>Max Capacity</code> if using <code>WorkerType</code> and
758      * <code>NumberOfWorkers</code>.</p> <p>The value that can be allocated for
759      * <code>MaxCapacity</code> depends on whether you are running a Python shell job
760      * or an Apache Spark ETL job:</p> <ul> <li> <p>When you specify a Python shell job
761      * (<code>JobCommand.Name</code>="pythonshell"), you can allocate either 0.0625 or
762      * 1 DPU. The default is 0.0625 DPU.</p> </li> <li> <p>When you specify an Apache
763      * Spark ETL job (<code>JobCommand.Name</code>="glueetl"), you can allocate from 2
764      * to 100 DPUs. The default is 10 DPUs. This job type cannot have a fractional DPU
765      * allocation.</p> </li> </ul>
766      */
WithMaxCapacity(double value)767     inline JobRun& WithMaxCapacity(double value) { SetMaxCapacity(value); return *this;}
768 
769 
770     /**
771      * <p>The type of predefined worker that is allocated when a job runs. Accepts a
772      * value of Standard, G.1X, or G.2X.</p> <ul> <li> <p>For the <code>Standard</code>
773      * worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2
774      * executors per worker.</p> </li> <li> <p>For the <code>G.1X</code> worker type,
775      * each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per
776      * worker.</p> </li> <li> <p>For the <code>G.2X</code> worker type, each worker
777      * provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per
778      * worker.</p> </li> </ul>
779      */
GetWorkerType()780     inline const WorkerType& GetWorkerType() const{ return m_workerType; }
781 
782     /**
783      * <p>The type of predefined worker that is allocated when a job runs. Accepts a
784      * value of Standard, G.1X, or G.2X.</p> <ul> <li> <p>For the <code>Standard</code>
785      * worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2
786      * executors per worker.</p> </li> <li> <p>For the <code>G.1X</code> worker type,
787      * each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per
788      * worker.</p> </li> <li> <p>For the <code>G.2X</code> worker type, each worker
789      * provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per
790      * worker.</p> </li> </ul>
791      */
WorkerTypeHasBeenSet()792     inline bool WorkerTypeHasBeenSet() const { return m_workerTypeHasBeenSet; }
793 
794     /**
795      * <p>The type of predefined worker that is allocated when a job runs. Accepts a
796      * value of Standard, G.1X, or G.2X.</p> <ul> <li> <p>For the <code>Standard</code>
797      * worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2
798      * executors per worker.</p> </li> <li> <p>For the <code>G.1X</code> worker type,
799      * each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per
800      * worker.</p> </li> <li> <p>For the <code>G.2X</code> worker type, each worker
801      * provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per
802      * worker.</p> </li> </ul>
803      */
SetWorkerType(const WorkerType & value)804     inline void SetWorkerType(const WorkerType& value) { m_workerTypeHasBeenSet = true; m_workerType = value; }
805 
806     /**
807      * <p>The type of predefined worker that is allocated when a job runs. Accepts a
808      * value of Standard, G.1X, or G.2X.</p> <ul> <li> <p>For the <code>Standard</code>
809      * worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2
810      * executors per worker.</p> </li> <li> <p>For the <code>G.1X</code> worker type,
811      * each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per
812      * worker.</p> </li> <li> <p>For the <code>G.2X</code> worker type, each worker
813      * provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per
814      * worker.</p> </li> </ul>
815      */
SetWorkerType(WorkerType && value)816     inline void SetWorkerType(WorkerType&& value) { m_workerTypeHasBeenSet = true; m_workerType = std::move(value); }
817 
818     /**
819      * <p>The type of predefined worker that is allocated when a job runs. Accepts a
820      * value of Standard, G.1X, or G.2X.</p> <ul> <li> <p>For the <code>Standard</code>
821      * worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2
822      * executors per worker.</p> </li> <li> <p>For the <code>G.1X</code> worker type,
823      * each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per
824      * worker.</p> </li> <li> <p>For the <code>G.2X</code> worker type, each worker
825      * provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per
826      * worker.</p> </li> </ul>
827      */
WithWorkerType(const WorkerType & value)828     inline JobRun& WithWorkerType(const WorkerType& value) { SetWorkerType(value); return *this;}
829 
830     /**
831      * <p>The type of predefined worker that is allocated when a job runs. Accepts a
832      * value of Standard, G.1X, or G.2X.</p> <ul> <li> <p>For the <code>Standard</code>
833      * worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2
834      * executors per worker.</p> </li> <li> <p>For the <code>G.1X</code> worker type,
835      * each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per
836      * worker.</p> </li> <li> <p>For the <code>G.2X</code> worker type, each worker
837      * provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per
838      * worker.</p> </li> </ul>
839      */
WithWorkerType(WorkerType && value)840     inline JobRun& WithWorkerType(WorkerType&& value) { SetWorkerType(std::move(value)); return *this;}
841 
842 
843     /**
844      * <p>The number of workers of a defined <code>workerType</code> that are allocated
845      * when a job runs.</p> <p>The maximum number of workers you can define are 299 for
846      * <code>G.1X</code>, and 149 for <code>G.2X</code>. </p>
847      */
GetNumberOfWorkers()848     inline int GetNumberOfWorkers() const{ return m_numberOfWorkers; }
849 
850     /**
851      * <p>The number of workers of a defined <code>workerType</code> that are allocated
852      * when a job runs.</p> <p>The maximum number of workers you can define are 299 for
853      * <code>G.1X</code>, and 149 for <code>G.2X</code>. </p>
854      */
NumberOfWorkersHasBeenSet()855     inline bool NumberOfWorkersHasBeenSet() const { return m_numberOfWorkersHasBeenSet; }
856 
857     /**
858      * <p>The number of workers of a defined <code>workerType</code> that are allocated
859      * when a job runs.</p> <p>The maximum number of workers you can define are 299 for
860      * <code>G.1X</code>, and 149 for <code>G.2X</code>. </p>
861      */
SetNumberOfWorkers(int value)862     inline void SetNumberOfWorkers(int value) { m_numberOfWorkersHasBeenSet = true; m_numberOfWorkers = value; }
863 
864     /**
865      * <p>The number of workers of a defined <code>workerType</code> that are allocated
866      * when a job runs.</p> <p>The maximum number of workers you can define are 299 for
867      * <code>G.1X</code>, and 149 for <code>G.2X</code>. </p>
868      */
WithNumberOfWorkers(int value)869     inline JobRun& WithNumberOfWorkers(int value) { SetNumberOfWorkers(value); return *this;}
870 
871 
872     /**
873      * <p>The name of the <code>SecurityConfiguration</code> structure to be used with
874      * this job run.</p>
875      */
GetSecurityConfiguration()876     inline const Aws::String& GetSecurityConfiguration() const{ return m_securityConfiguration; }
877 
878     /**
879      * <p>The name of the <code>SecurityConfiguration</code> structure to be used with
880      * this job run.</p>
881      */
SecurityConfigurationHasBeenSet()882     inline bool SecurityConfigurationHasBeenSet() const { return m_securityConfigurationHasBeenSet; }
883 
884     /**
885      * <p>The name of the <code>SecurityConfiguration</code> structure to be used with
886      * this job run.</p>
887      */
SetSecurityConfiguration(const Aws::String & value)888     inline void SetSecurityConfiguration(const Aws::String& value) { m_securityConfigurationHasBeenSet = true; m_securityConfiguration = value; }
889 
890     /**
891      * <p>The name of the <code>SecurityConfiguration</code> structure to be used with
892      * this job run.</p>
893      */
SetSecurityConfiguration(Aws::String && value)894     inline void SetSecurityConfiguration(Aws::String&& value) { m_securityConfigurationHasBeenSet = true; m_securityConfiguration = std::move(value); }
895 
896     /**
897      * <p>The name of the <code>SecurityConfiguration</code> structure to be used with
898      * this job run.</p>
899      */
SetSecurityConfiguration(const char * value)900     inline void SetSecurityConfiguration(const char* value) { m_securityConfigurationHasBeenSet = true; m_securityConfiguration.assign(value); }
901 
902     /**
903      * <p>The name of the <code>SecurityConfiguration</code> structure to be used with
904      * this job run.</p>
905      */
WithSecurityConfiguration(const Aws::String & value)906     inline JobRun& WithSecurityConfiguration(const Aws::String& value) { SetSecurityConfiguration(value); return *this;}
907 
908     /**
909      * <p>The name of the <code>SecurityConfiguration</code> structure to be used with
910      * this job run.</p>
911      */
WithSecurityConfiguration(Aws::String && value)912     inline JobRun& WithSecurityConfiguration(Aws::String&& value) { SetSecurityConfiguration(std::move(value)); return *this;}
913 
914     /**
915      * <p>The name of the <code>SecurityConfiguration</code> structure to be used with
916      * this job run.</p>
917      */
WithSecurityConfiguration(const char * value)918     inline JobRun& WithSecurityConfiguration(const char* value) { SetSecurityConfiguration(value); return *this;}
919 
920 
921     /**
922      * <p>The name of the log group for secure logging that can be server-side
923      * encrypted in Amazon CloudWatch using KMS. This name can be
924      * <code>/aws-glue/jobs/</code>, in which case the default encryption is
925      * <code>NONE</code>. If you add a role name and <code>SecurityConfiguration</code>
926      * name (in other words,
927      * <code>/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/</code>), then
928      * that security configuration is used to encrypt the log group.</p>
929      */
GetLogGroupName()930     inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; }
931 
932     /**
933      * <p>The name of the log group for secure logging that can be server-side
934      * encrypted in Amazon CloudWatch using KMS. This name can be
935      * <code>/aws-glue/jobs/</code>, in which case the default encryption is
936      * <code>NONE</code>. If you add a role name and <code>SecurityConfiguration</code>
937      * name (in other words,
938      * <code>/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/</code>), then
939      * that security configuration is used to encrypt the log group.</p>
940      */
LogGroupNameHasBeenSet()941     inline bool LogGroupNameHasBeenSet() const { return m_logGroupNameHasBeenSet; }
942 
943     /**
944      * <p>The name of the log group for secure logging that can be server-side
945      * encrypted in Amazon CloudWatch using KMS. This name can be
946      * <code>/aws-glue/jobs/</code>, in which case the default encryption is
947      * <code>NONE</code>. If you add a role name and <code>SecurityConfiguration</code>
948      * name (in other words,
949      * <code>/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/</code>), then
950      * that security configuration is used to encrypt the log group.</p>
951      */
SetLogGroupName(const Aws::String & value)952     inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; }
953 
954     /**
955      * <p>The name of the log group for secure logging that can be server-side
956      * encrypted in Amazon CloudWatch using KMS. This name can be
957      * <code>/aws-glue/jobs/</code>, in which case the default encryption is
958      * <code>NONE</code>. If you add a role name and <code>SecurityConfiguration</code>
959      * name (in other words,
960      * <code>/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/</code>), then
961      * that security configuration is used to encrypt the log group.</p>
962      */
SetLogGroupName(Aws::String && value)963     inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = std::move(value); }
964 
965     /**
966      * <p>The name of the log group for secure logging that can be server-side
967      * encrypted in Amazon CloudWatch using KMS. This name can be
968      * <code>/aws-glue/jobs/</code>, in which case the default encryption is
969      * <code>NONE</code>. If you add a role name and <code>SecurityConfiguration</code>
970      * name (in other words,
971      * <code>/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/</code>), then
972      * that security configuration is used to encrypt the log group.</p>
973      */
SetLogGroupName(const char * value)974     inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); }
975 
976     /**
977      * <p>The name of the log group for secure logging that can be server-side
978      * encrypted in Amazon CloudWatch using KMS. This name can be
979      * <code>/aws-glue/jobs/</code>, in which case the default encryption is
980      * <code>NONE</code>. If you add a role name and <code>SecurityConfiguration</code>
981      * name (in other words,
982      * <code>/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/</code>), then
983      * that security configuration is used to encrypt the log group.</p>
984      */
WithLogGroupName(const Aws::String & value)985     inline JobRun& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;}
986 
987     /**
988      * <p>The name of the log group for secure logging that can be server-side
989      * encrypted in Amazon CloudWatch using KMS. This name can be
990      * <code>/aws-glue/jobs/</code>, in which case the default encryption is
991      * <code>NONE</code>. If you add a role name and <code>SecurityConfiguration</code>
992      * name (in other words,
993      * <code>/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/</code>), then
994      * that security configuration is used to encrypt the log group.</p>
995      */
WithLogGroupName(Aws::String && value)996     inline JobRun& WithLogGroupName(Aws::String&& value) { SetLogGroupName(std::move(value)); return *this;}
997 
998     /**
999      * <p>The name of the log group for secure logging that can be server-side
1000      * encrypted in Amazon CloudWatch using KMS. This name can be
1001      * <code>/aws-glue/jobs/</code>, in which case the default encryption is
1002      * <code>NONE</code>. If you add a role name and <code>SecurityConfiguration</code>
1003      * name (in other words,
1004      * <code>/aws-glue/jobs-yourRoleName-yourSecurityConfigurationName/</code>), then
1005      * that security configuration is used to encrypt the log group.</p>
1006      */
WithLogGroupName(const char * value)1007     inline JobRun& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;}
1008 
1009 
1010     /**
1011      * <p>Specifies configuration properties of a job run notification.</p>
1012      */
GetNotificationProperty()1013     inline const NotificationProperty& GetNotificationProperty() const{ return m_notificationProperty; }
1014 
1015     /**
1016      * <p>Specifies configuration properties of a job run notification.</p>
1017      */
NotificationPropertyHasBeenSet()1018     inline bool NotificationPropertyHasBeenSet() const { return m_notificationPropertyHasBeenSet; }
1019 
1020     /**
1021      * <p>Specifies configuration properties of a job run notification.</p>
1022      */
SetNotificationProperty(const NotificationProperty & value)1023     inline void SetNotificationProperty(const NotificationProperty& value) { m_notificationPropertyHasBeenSet = true; m_notificationProperty = value; }
1024 
1025     /**
1026      * <p>Specifies configuration properties of a job run notification.</p>
1027      */
SetNotificationProperty(NotificationProperty && value)1028     inline void SetNotificationProperty(NotificationProperty&& value) { m_notificationPropertyHasBeenSet = true; m_notificationProperty = std::move(value); }
1029 
1030     /**
1031      * <p>Specifies configuration properties of a job run notification.</p>
1032      */
WithNotificationProperty(const NotificationProperty & value)1033     inline JobRun& WithNotificationProperty(const NotificationProperty& value) { SetNotificationProperty(value); return *this;}
1034 
1035     /**
1036      * <p>Specifies configuration properties of a job run notification.</p>
1037      */
WithNotificationProperty(NotificationProperty && value)1038     inline JobRun& WithNotificationProperty(NotificationProperty&& value) { SetNotificationProperty(std::move(value)); return *this;}
1039 
1040 
1041     /**
1042      * <p>Glue version determines the versions of Apache Spark and Python that Glue
1043      * supports. The Python version indicates the version supported for jobs of type
1044      * Spark. </p> <p>For more information about the available Glue versions and
1045      * corresponding Spark and Python versions, see <a
1046      * href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a>
1047      * in the developer guide.</p> <p>Jobs that are created without specifying a Glue
1048      * version default to Glue 0.9.</p>
1049      */
GetGlueVersion()1050     inline const Aws::String& GetGlueVersion() const{ return m_glueVersion; }
1051 
1052     /**
1053      * <p>Glue version determines the versions of Apache Spark and Python that Glue
1054      * supports. The Python version indicates the version supported for jobs of type
1055      * Spark. </p> <p>For more information about the available Glue versions and
1056      * corresponding Spark and Python versions, see <a
1057      * href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a>
1058      * in the developer guide.</p> <p>Jobs that are created without specifying a Glue
1059      * version default to Glue 0.9.</p>
1060      */
GlueVersionHasBeenSet()1061     inline bool GlueVersionHasBeenSet() const { return m_glueVersionHasBeenSet; }
1062 
1063     /**
1064      * <p>Glue version determines the versions of Apache Spark and Python that Glue
1065      * supports. The Python version indicates the version supported for jobs of type
1066      * Spark. </p> <p>For more information about the available Glue versions and
1067      * corresponding Spark and Python versions, see <a
1068      * href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a>
1069      * in the developer guide.</p> <p>Jobs that are created without specifying a Glue
1070      * version default to Glue 0.9.</p>
1071      */
SetGlueVersion(const Aws::String & value)1072     inline void SetGlueVersion(const Aws::String& value) { m_glueVersionHasBeenSet = true; m_glueVersion = value; }
1073 
1074     /**
1075      * <p>Glue version determines the versions of Apache Spark and Python that Glue
1076      * supports. The Python version indicates the version supported for jobs of type
1077      * Spark. </p> <p>For more information about the available Glue versions and
1078      * corresponding Spark and Python versions, see <a
1079      * href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a>
1080      * in the developer guide.</p> <p>Jobs that are created without specifying a Glue
1081      * version default to Glue 0.9.</p>
1082      */
SetGlueVersion(Aws::String && value)1083     inline void SetGlueVersion(Aws::String&& value) { m_glueVersionHasBeenSet = true; m_glueVersion = std::move(value); }
1084 
1085     /**
1086      * <p>Glue version determines the versions of Apache Spark and Python that Glue
1087      * supports. The Python version indicates the version supported for jobs of type
1088      * Spark. </p> <p>For more information about the available Glue versions and
1089      * corresponding Spark and Python versions, see <a
1090      * href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a>
1091      * in the developer guide.</p> <p>Jobs that are created without specifying a Glue
1092      * version default to Glue 0.9.</p>
1093      */
SetGlueVersion(const char * value)1094     inline void SetGlueVersion(const char* value) { m_glueVersionHasBeenSet = true; m_glueVersion.assign(value); }
1095 
1096     /**
1097      * <p>Glue version determines the versions of Apache Spark and Python that Glue
1098      * supports. The Python version indicates the version supported for jobs of type
1099      * Spark. </p> <p>For more information about the available Glue versions and
1100      * corresponding Spark and Python versions, see <a
1101      * href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a>
1102      * in the developer guide.</p> <p>Jobs that are created without specifying a Glue
1103      * version default to Glue 0.9.</p>
1104      */
WithGlueVersion(const Aws::String & value)1105     inline JobRun& WithGlueVersion(const Aws::String& value) { SetGlueVersion(value); return *this;}
1106 
1107     /**
1108      * <p>Glue version determines the versions of Apache Spark and Python that Glue
1109      * supports. The Python version indicates the version supported for jobs of type
1110      * Spark. </p> <p>For more information about the available Glue versions and
1111      * corresponding Spark and Python versions, see <a
1112      * href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a>
1113      * in the developer guide.</p> <p>Jobs that are created without specifying a Glue
1114      * version default to Glue 0.9.</p>
1115      */
WithGlueVersion(Aws::String && value)1116     inline JobRun& WithGlueVersion(Aws::String&& value) { SetGlueVersion(std::move(value)); return *this;}
1117 
1118     /**
1119      * <p>Glue version determines the versions of Apache Spark and Python that Glue
1120      * supports. The Python version indicates the version supported for jobs of type
1121      * Spark. </p> <p>For more information about the available Glue versions and
1122      * corresponding Spark and Python versions, see <a
1123      * href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a>
1124      * in the developer guide.</p> <p>Jobs that are created without specifying a Glue
1125      * version default to Glue 0.9.</p>
1126      */
WithGlueVersion(const char * value)1127     inline JobRun& WithGlueVersion(const char* value) { SetGlueVersion(value); return *this;}
1128 
1129   private:
1130 
1131     Aws::String m_id;
1132     bool m_idHasBeenSet;
1133 
1134     int m_attempt;
1135     bool m_attemptHasBeenSet;
1136 
1137     Aws::String m_previousRunId;
1138     bool m_previousRunIdHasBeenSet;
1139 
1140     Aws::String m_triggerName;
1141     bool m_triggerNameHasBeenSet;
1142 
1143     Aws::String m_jobName;
1144     bool m_jobNameHasBeenSet;
1145 
1146     Aws::Utils::DateTime m_startedOn;
1147     bool m_startedOnHasBeenSet;
1148 
1149     Aws::Utils::DateTime m_lastModifiedOn;
1150     bool m_lastModifiedOnHasBeenSet;
1151 
1152     Aws::Utils::DateTime m_completedOn;
1153     bool m_completedOnHasBeenSet;
1154 
1155     JobRunState m_jobRunState;
1156     bool m_jobRunStateHasBeenSet;
1157 
1158     Aws::Map<Aws::String, Aws::String> m_arguments;
1159     bool m_argumentsHasBeenSet;
1160 
1161     Aws::String m_errorMessage;
1162     bool m_errorMessageHasBeenSet;
1163 
1164     Aws::Vector<Predecessor> m_predecessorRuns;
1165     bool m_predecessorRunsHasBeenSet;
1166 
1167     int m_executionTime;
1168     bool m_executionTimeHasBeenSet;
1169 
1170     int m_timeout;
1171     bool m_timeoutHasBeenSet;
1172 
1173     double m_maxCapacity;
1174     bool m_maxCapacityHasBeenSet;
1175 
1176     WorkerType m_workerType;
1177     bool m_workerTypeHasBeenSet;
1178 
1179     int m_numberOfWorkers;
1180     bool m_numberOfWorkersHasBeenSet;
1181 
1182     Aws::String m_securityConfiguration;
1183     bool m_securityConfigurationHasBeenSet;
1184 
1185     Aws::String m_logGroupName;
1186     bool m_logGroupNameHasBeenSet;
1187 
1188     NotificationProperty m_notificationProperty;
1189     bool m_notificationPropertyHasBeenSet;
1190 
1191     Aws::String m_glueVersion;
1192     bool m_glueVersionHasBeenSet;
1193   };
1194 
1195 } // namespace Model
1196 } // namespace Glue
1197 } // namespace Aws
1198