-
Notifications
You must be signed in to change notification settings - Fork 4.5k
/
CdnOriginPatch.cs
106 lines (99 loc) · 6.95 KB
/
CdnOriginPatch.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
101
102
103
104
105
106
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// <auto-generated/>
#nullable disable
using System;
using System.Collections.Generic;
using Azure.Core;
namespace Azure.ResourceManager.Cdn.Models
{
/// <summary> Origin properties needed for origin update. </summary>
public partial class CdnOriginPatch
{
/// <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="CdnOriginPatch"/>. </summary>
public CdnOriginPatch()
{
}
/// <summary> Initializes a new instance of <see cref="CdnOriginPatch"/>. </summary>
/// <param name="hostName"> The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.This should be unique across all origins in an endpoint. </param>
/// <param name="httpPort"> The value of the HTTP port. Must be between 1 and 65535. </param>
/// <param name="httpsPort"> The value of the HTTPS port. Must be between 1 and 65535. </param>
/// <param name="originHostHeader"> The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint. </param>
/// <param name="priority"> Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5. </param>
/// <param name="weight"> Weight of the origin in given origin group for load balancing. Must be between 1 and 1000. </param>
/// <param name="enabled"> Origin is enabled for load balancing or not. </param>
/// <param name="privateLinkAlias"> The Alias of the Private Link resource. Populating this optional field indicates that this origin is 'Private'. </param>
/// <param name="privateLinkResourceId"> The Resource Id of the Private Link resource. Populating this optional field indicates that this backend is 'Private'. </param>
/// <param name="privateLinkLocation"> The location of the Private Link resource. Required only if 'privateLinkResourceId' is populated. </param>
/// <param name="privateLinkApprovalMessage"> A custom message to be included in the approval request to connect to the Private Link. </param>
/// <param name="serializedAdditionalRawData"> Keeps track of any properties unknown to the library. </param>
internal CdnOriginPatch(string hostName, int? httpPort, int? httpsPort, string originHostHeader, int? priority, int? weight, bool? enabled, string privateLinkAlias, ResourceIdentifier privateLinkResourceId, string privateLinkLocation, string privateLinkApprovalMessage, IDictionary<string, BinaryData> serializedAdditionalRawData)
{
HostName = hostName;
HttpPort = httpPort;
HttpsPort = httpsPort;
OriginHostHeader = originHostHeader;
Priority = priority;
Weight = weight;
Enabled = enabled;
PrivateLinkAlias = privateLinkAlias;
PrivateLinkResourceId = privateLinkResourceId;
PrivateLinkLocation = privateLinkLocation;
PrivateLinkApprovalMessage = privateLinkApprovalMessage;
_serializedAdditionalRawData = serializedAdditionalRawData;
}
/// <summary> The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.This should be unique across all origins in an endpoint. </summary>
public string HostName { get; set; }
/// <summary> The value of the HTTP port. Must be between 1 and 65535. </summary>
public int? HttpPort { get; set; }
/// <summary> The value of the HTTPS port. Must be between 1 and 65535. </summary>
public int? HttpsPort { get; set; }
/// <summary> The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint. </summary>
public string OriginHostHeader { get; set; }
/// <summary> Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5. </summary>
public int? Priority { get; set; }
/// <summary> Weight of the origin in given origin group for load balancing. Must be between 1 and 1000. </summary>
public int? Weight { get; set; }
/// <summary> Origin is enabled for load balancing or not. </summary>
public bool? Enabled { get; set; }
/// <summary> The Alias of the Private Link resource. Populating this optional field indicates that this origin is 'Private'. </summary>
public string PrivateLinkAlias { get; set; }
/// <summary> The Resource Id of the Private Link resource. Populating this optional field indicates that this backend is 'Private'. </summary>
public ResourceIdentifier PrivateLinkResourceId { get; set; }
/// <summary> The location of the Private Link resource. Required only if 'privateLinkResourceId' is populated. </summary>
public string PrivateLinkLocation { get; set; }
/// <summary> A custom message to be included in the approval request to connect to the Private Link. </summary>
public string PrivateLinkApprovalMessage { get; set; }
}
}