-
Notifications
You must be signed in to change notification settings - Fork 4.5k
/
OrbitalContactProfileData.cs
81 lines (74 loc) · 5.45 KB
/
OrbitalContactProfileData.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
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// <auto-generated/>
#nullable disable
using System;
using System.Collections.Generic;
using Azure;
using Azure.Core;
using Azure.ResourceManager.Models;
using Azure.ResourceManager.Orbital.Models;
namespace Azure.ResourceManager.Orbital
{
/// <summary>
/// A class representing the OrbitalContactProfile data model.
/// Customer creates a Contact Profile Resource, which will contain all of the configurations required for scheduling a contact.
/// </summary>
public partial class OrbitalContactProfileData : TrackedResourceData
{
/// <summary> Initializes a new instance of OrbitalContactProfileData. </summary>
/// <param name="location"> The location. </param>
public OrbitalContactProfileData(AzureLocation location) : base(location)
{
Links = new ChangeTrackingList<OrbitalContactProfileLink>();
}
/// <summary> Initializes a new instance of OrbitalContactProfileData. </summary>
/// <param name="id"> The id. </param>
/// <param name="name"> The name. </param>
/// <param name="resourceType"> The resourceType. </param>
/// <param name="systemData"> The systemData. </param>
/// <param name="tags"> The tags. </param>
/// <param name="location"> The location. </param>
/// <param name="etag"> A unique read-only string that changes whenever the resource is updated. </param>
/// <param name="provisioningState"> The current state of the resource's creation, deletion, or modification. </param>
/// <param name="minimumViableContactDuration"> Minimum viable contact duration in ISO 8601 format. Used for listing the available contacts with a spacecraft at a given ground station. </param>
/// <param name="minimumElevationDegrees"> Minimum viable elevation for the contact in decimal degrees. Used for listing the available contacts with a spacecraft at a given ground station. </param>
/// <param name="autoTrackingConfiguration"> Auto-tracking configuration. </param>
/// <param name="eventHubUri"> ARM resource identifier of the Event Hub used for telemetry. Requires granting Orbital Resource Provider the rights to send telemetry into the hub. </param>
/// <param name="networkConfiguration"> Network configuration of customer virtual network. </param>
/// <param name="links"> Links of the Contact Profile. Describes RF links, modem processing, and IP endpoints. </param>
internal OrbitalContactProfileData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, IDictionary<string, string> tags, AzureLocation location, ETag? etag, OrbitalProvisioningState? provisioningState, TimeSpan? minimumViableContactDuration, float? minimumElevationDegrees, AutoTrackingConfiguration? autoTrackingConfiguration, Uri eventHubUri, ContactProfilesPropertiesNetworkConfiguration networkConfiguration, IList<OrbitalContactProfileLink> links) : base(id, name, resourceType, systemData, tags, location)
{
ETag = etag;
ProvisioningState = provisioningState;
MinimumViableContactDuration = minimumViableContactDuration;
MinimumElevationDegrees = minimumElevationDegrees;
AutoTrackingConfiguration = autoTrackingConfiguration;
EventHubUri = eventHubUri;
NetworkConfiguration = networkConfiguration;
Links = links;
}
/// <summary> A unique read-only string that changes whenever the resource is updated. </summary>
public ETag? ETag { get; }
/// <summary> The current state of the resource's creation, deletion, or modification. </summary>
public OrbitalProvisioningState? ProvisioningState { get; set; }
/// <summary> Minimum viable contact duration in ISO 8601 format. Used for listing the available contacts with a spacecraft at a given ground station. </summary>
public TimeSpan? MinimumViableContactDuration { get; set; }
/// <summary> Minimum viable elevation for the contact in decimal degrees. Used for listing the available contacts with a spacecraft at a given ground station. </summary>
public float? MinimumElevationDegrees { get; set; }
/// <summary> Auto-tracking configuration. </summary>
public AutoTrackingConfiguration? AutoTrackingConfiguration { get; set; }
/// <summary> ARM resource identifier of the Event Hub used for telemetry. Requires granting Orbital Resource Provider the rights to send telemetry into the hub. </summary>
public Uri EventHubUri { get; set; }
/// <summary> Network configuration of customer virtual network. </summary>
internal ContactProfilesPropertiesNetworkConfiguration NetworkConfiguration { get; set; }
/// <summary> ARM resource identifier of the subnet delegated to the Microsoft.Orbital/orbitalGateways. Needs to be at least a class C subnet, and should not have any IP created in it. </summary>
public ResourceIdentifier NetworkSubnetId
{
get => NetworkConfiguration is null ? default : NetworkConfiguration.NetworkSubnetId;
set => NetworkConfiguration = new ContactProfilesPropertiesNetworkConfiguration(value);
}
/// <summary> Links of the Contact Profile. Describes RF links, modem processing, and IP endpoints. </summary>
public IList<OrbitalContactProfileLink> Links { get; }
}
}