/
FlinkJobProfile.cs
100 lines (91 loc) · 5.85 KB
/
FlinkJobProfile.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// <auto-generated/>
#nullable disable
using System;
using System.Collections.Generic;
namespace Azure.ResourceManager.HDInsight.Containers.Models
{
/// <summary> Job specifications for flink clusters in application deployment mode. The specification is immutable even if job properties are changed by calling the RunJob API, please use the ListJob API to get the latest job information. </summary>
public partial class FlinkJobProfile
{
/// <summary>
/// Keeps track of any properties unknown to the library.
/// <para>
/// To assign an object to the value of this property use <see cref="BinaryData.FromObjectAsJson{T}(T, System.Text.Json.JsonSerializerOptions?)"/>.
/// </para>
/// <para>
/// To assign an already formatted json string to this property use <see cref="BinaryData.FromString(string)"/>.
/// </para>
/// <para>
/// Examples:
/// <list type="bullet">
/// <item>
/// <term>BinaryData.FromObjectAsJson("foo")</term>
/// <description>Creates a payload of "foo".</description>
/// </item>
/// <item>
/// <term>BinaryData.FromString("\"foo\"")</term>
/// <description>Creates a payload of "foo".</description>
/// </item>
/// <item>
/// <term>BinaryData.FromObjectAsJson(new { key = "value" })</term>
/// <description>Creates a payload of { "key": "value" }.</description>
/// </item>
/// <item>
/// <term>BinaryData.FromString("{\"key\": \"value\"}")</term>
/// <description>Creates a payload of { "key": "value" }.</description>
/// </item>
/// </list>
/// </para>
/// </summary>
private IDictionary<string, BinaryData> _serializedAdditionalRawData;
/// <summary> Initializes a new instance of <see cref="FlinkJobProfile"/>. </summary>
/// <param name="jobJarDirectory"> A string property that specifies the directory where the job JAR is located. </param>
/// <param name="jarName"> A string property that represents the name of the job JAR. </param>
/// <param name="upgradeMode"> A string property that indicates the upgrade mode to be performed on the Flink job. It can have one of the following enum values => STATELESS_UPDATE, UPDATE, LAST_STATE_UPDATE. </param>
/// <exception cref="ArgumentNullException"> <paramref name="jobJarDirectory"/> or <paramref name="jarName"/> is null. </exception>
public FlinkJobProfile(string jobJarDirectory, string jarName, UpgradeMode upgradeMode)
{
Argument.AssertNotNull(jobJarDirectory, nameof(jobJarDirectory));
Argument.AssertNotNull(jarName, nameof(jarName));
JobJarDirectory = jobJarDirectory;
JarName = jarName;
UpgradeMode = upgradeMode;
}
/// <summary> Initializes a new instance of <see cref="FlinkJobProfile"/>. </summary>
/// <param name="jobJarDirectory"> A string property that specifies the directory where the job JAR is located. </param>
/// <param name="jarName"> A string property that represents the name of the job JAR. </param>
/// <param name="entryClass"> A string property that specifies the entry class for the Flink job. If not specified, the entry point is auto-detected from the flink job jar package. </param>
/// <param name="args"> A string property representing additional JVM arguments for the Flink job. It should be space separated value. </param>
/// <param name="savePointName"> A string property that represents the name of the savepoint for the Flink job. </param>
/// <param name="upgradeMode"> A string property that indicates the upgrade mode to be performed on the Flink job. It can have one of the following enum values => STATELESS_UPDATE, UPDATE, LAST_STATE_UPDATE. </param>
/// <param name="serializedAdditionalRawData"> Keeps track of any properties unknown to the library. </param>
internal FlinkJobProfile(string jobJarDirectory, string jarName, string entryClass, string args, string savePointName, UpgradeMode upgradeMode, IDictionary<string, BinaryData> serializedAdditionalRawData)
{
JobJarDirectory = jobJarDirectory;
JarName = jarName;
EntryClass = entryClass;
Args = args;
SavePointName = savePointName;
UpgradeMode = upgradeMode;
_serializedAdditionalRawData = serializedAdditionalRawData;
}
/// <summary> Initializes a new instance of <see cref="FlinkJobProfile"/> for deserialization. </summary>
internal FlinkJobProfile()
{
}
/// <summary> A string property that specifies the directory where the job JAR is located. </summary>
public string JobJarDirectory { get; set; }
/// <summary> A string property that represents the name of the job JAR. </summary>
public string JarName { get; set; }
/// <summary> A string property that specifies the entry class for the Flink job. If not specified, the entry point is auto-detected from the flink job jar package. </summary>
public string EntryClass { get; set; }
/// <summary> A string property representing additional JVM arguments for the Flink job. It should be space separated value. </summary>
public string Args { get; set; }
/// <summary> A string property that represents the name of the savepoint for the Flink job. </summary>
public string SavePointName { get; set; }
/// <summary> A string property that indicates the upgrade mode to be performed on the Flink job. It can have one of the following enum values => STATELESS_UPDATE, UPDATE, LAST_STATE_UPDATE. </summary>
public UpgradeMode UpgradeMode { get; set; }
}
}