|
| 1 | +package attachednetworkconnections |
| 2 | + |
| 3 | +import ( |
| 4 | + "encoding/json" |
| 5 | + "fmt" |
| 6 | + "strings" |
| 7 | +) |
| 8 | + |
| 9 | +// Copyright (c) Microsoft Corporation. All rights reserved. |
| 10 | +// Licensed under the MIT License. See NOTICE.txt in the project root for license information. |
| 11 | + |
| 12 | +type DomainJoinType string |
| 13 | + |
| 14 | +const ( |
| 15 | + DomainJoinTypeAzureADJoin DomainJoinType = "AzureADJoin" |
| 16 | + DomainJoinTypeHybridAzureADJoin DomainJoinType = "HybridAzureADJoin" |
| 17 | + DomainJoinTypeNone DomainJoinType = "None" |
| 18 | +) |
| 19 | + |
| 20 | +func PossibleValuesForDomainJoinType() []string { |
| 21 | + return []string{ |
| 22 | + string(DomainJoinTypeAzureADJoin), |
| 23 | + string(DomainJoinTypeHybridAzureADJoin), |
| 24 | + string(DomainJoinTypeNone), |
| 25 | + } |
| 26 | +} |
| 27 | + |
| 28 | +func (s *DomainJoinType) UnmarshalJSON(bytes []byte) error { |
| 29 | + var decoded string |
| 30 | + if err := json.Unmarshal(bytes, &decoded); err != nil { |
| 31 | + return fmt.Errorf("unmarshaling: %+v", err) |
| 32 | + } |
| 33 | + out, err := parseDomainJoinType(decoded) |
| 34 | + if err != nil { |
| 35 | + return fmt.Errorf("parsing %q: %+v", decoded, err) |
| 36 | + } |
| 37 | + *s = *out |
| 38 | + return nil |
| 39 | +} |
| 40 | + |
| 41 | +func parseDomainJoinType(input string) (*DomainJoinType, error) { |
| 42 | + vals := map[string]DomainJoinType{ |
| 43 | + "azureadjoin": DomainJoinTypeAzureADJoin, |
| 44 | + "hybridazureadjoin": DomainJoinTypeHybridAzureADJoin, |
| 45 | + "none": DomainJoinTypeNone, |
| 46 | + } |
| 47 | + if v, ok := vals[strings.ToLower(input)]; ok { |
| 48 | + return &v, nil |
| 49 | + } |
| 50 | + |
| 51 | + // otherwise presume it's an undefined value and best-effort it |
| 52 | + out := DomainJoinType(input) |
| 53 | + return &out, nil |
| 54 | +} |
| 55 | + |
| 56 | +type HealthCheckStatus string |
| 57 | + |
| 58 | +const ( |
| 59 | + HealthCheckStatusFailed HealthCheckStatus = "Failed" |
| 60 | + HealthCheckStatusInformational HealthCheckStatus = "Informational" |
| 61 | + HealthCheckStatusPassed HealthCheckStatus = "Passed" |
| 62 | + HealthCheckStatusPending HealthCheckStatus = "Pending" |
| 63 | + HealthCheckStatusRunning HealthCheckStatus = "Running" |
| 64 | + HealthCheckStatusUnknown HealthCheckStatus = "Unknown" |
| 65 | + HealthCheckStatusWarning HealthCheckStatus = "Warning" |
| 66 | +) |
| 67 | + |
| 68 | +func PossibleValuesForHealthCheckStatus() []string { |
| 69 | + return []string{ |
| 70 | + string(HealthCheckStatusFailed), |
| 71 | + string(HealthCheckStatusInformational), |
| 72 | + string(HealthCheckStatusPassed), |
| 73 | + string(HealthCheckStatusPending), |
| 74 | + string(HealthCheckStatusRunning), |
| 75 | + string(HealthCheckStatusUnknown), |
| 76 | + string(HealthCheckStatusWarning), |
| 77 | + } |
| 78 | +} |
| 79 | + |
| 80 | +func (s *HealthCheckStatus) UnmarshalJSON(bytes []byte) error { |
| 81 | + var decoded string |
| 82 | + if err := json.Unmarshal(bytes, &decoded); err != nil { |
| 83 | + return fmt.Errorf("unmarshaling: %+v", err) |
| 84 | + } |
| 85 | + out, err := parseHealthCheckStatus(decoded) |
| 86 | + if err != nil { |
| 87 | + return fmt.Errorf("parsing %q: %+v", decoded, err) |
| 88 | + } |
| 89 | + *s = *out |
| 90 | + return nil |
| 91 | +} |
| 92 | + |
| 93 | +func parseHealthCheckStatus(input string) (*HealthCheckStatus, error) { |
| 94 | + vals := map[string]HealthCheckStatus{ |
| 95 | + "failed": HealthCheckStatusFailed, |
| 96 | + "informational": HealthCheckStatusInformational, |
| 97 | + "passed": HealthCheckStatusPassed, |
| 98 | + "pending": HealthCheckStatusPending, |
| 99 | + "running": HealthCheckStatusRunning, |
| 100 | + "unknown": HealthCheckStatusUnknown, |
| 101 | + "warning": HealthCheckStatusWarning, |
| 102 | + } |
| 103 | + if v, ok := vals[strings.ToLower(input)]; ok { |
| 104 | + return &v, nil |
| 105 | + } |
| 106 | + |
| 107 | + // otherwise presume it's an undefined value and best-effort it |
| 108 | + out := HealthCheckStatus(input) |
| 109 | + return &out, nil |
| 110 | +} |
| 111 | + |
| 112 | +type ProvisioningState string |
| 113 | + |
| 114 | +const ( |
| 115 | + ProvisioningStateAccepted ProvisioningState = "Accepted" |
| 116 | + ProvisioningStateCanceled ProvisioningState = "Canceled" |
| 117 | + ProvisioningStateCreated ProvisioningState = "Created" |
| 118 | + ProvisioningStateCreating ProvisioningState = "Creating" |
| 119 | + ProvisioningStateDeleted ProvisioningState = "Deleted" |
| 120 | + ProvisioningStateDeleting ProvisioningState = "Deleting" |
| 121 | + ProvisioningStateFailed ProvisioningState = "Failed" |
| 122 | + ProvisioningStateMovingResources ProvisioningState = "MovingResources" |
| 123 | + ProvisioningStateNotSpecified ProvisioningState = "NotSpecified" |
| 124 | + ProvisioningStateRolloutInProgress ProvisioningState = "RolloutInProgress" |
| 125 | + ProvisioningStateRunning ProvisioningState = "Running" |
| 126 | + ProvisioningStateStorageProvisioningFailed ProvisioningState = "StorageProvisioningFailed" |
| 127 | + ProvisioningStateSucceeded ProvisioningState = "Succeeded" |
| 128 | + ProvisioningStateTransientFailure ProvisioningState = "TransientFailure" |
| 129 | + ProvisioningStateUpdated ProvisioningState = "Updated" |
| 130 | + ProvisioningStateUpdating ProvisioningState = "Updating" |
| 131 | +) |
| 132 | + |
| 133 | +func PossibleValuesForProvisioningState() []string { |
| 134 | + return []string{ |
| 135 | + string(ProvisioningStateAccepted), |
| 136 | + string(ProvisioningStateCanceled), |
| 137 | + string(ProvisioningStateCreated), |
| 138 | + string(ProvisioningStateCreating), |
| 139 | + string(ProvisioningStateDeleted), |
| 140 | + string(ProvisioningStateDeleting), |
| 141 | + string(ProvisioningStateFailed), |
| 142 | + string(ProvisioningStateMovingResources), |
| 143 | + string(ProvisioningStateNotSpecified), |
| 144 | + string(ProvisioningStateRolloutInProgress), |
| 145 | + string(ProvisioningStateRunning), |
| 146 | + string(ProvisioningStateStorageProvisioningFailed), |
| 147 | + string(ProvisioningStateSucceeded), |
| 148 | + string(ProvisioningStateTransientFailure), |
| 149 | + string(ProvisioningStateUpdated), |
| 150 | + string(ProvisioningStateUpdating), |
| 151 | + } |
| 152 | +} |
| 153 | + |
| 154 | +func (s *ProvisioningState) UnmarshalJSON(bytes []byte) error { |
| 155 | + var decoded string |
| 156 | + if err := json.Unmarshal(bytes, &decoded); err != nil { |
| 157 | + return fmt.Errorf("unmarshaling: %+v", err) |
| 158 | + } |
| 159 | + out, err := parseProvisioningState(decoded) |
| 160 | + if err != nil { |
| 161 | + return fmt.Errorf("parsing %q: %+v", decoded, err) |
| 162 | + } |
| 163 | + *s = *out |
| 164 | + return nil |
| 165 | +} |
| 166 | + |
| 167 | +func parseProvisioningState(input string) (*ProvisioningState, error) { |
| 168 | + vals := map[string]ProvisioningState{ |
| 169 | + "accepted": ProvisioningStateAccepted, |
| 170 | + "canceled": ProvisioningStateCanceled, |
| 171 | + "created": ProvisioningStateCreated, |
| 172 | + "creating": ProvisioningStateCreating, |
| 173 | + "deleted": ProvisioningStateDeleted, |
| 174 | + "deleting": ProvisioningStateDeleting, |
| 175 | + "failed": ProvisioningStateFailed, |
| 176 | + "movingresources": ProvisioningStateMovingResources, |
| 177 | + "notspecified": ProvisioningStateNotSpecified, |
| 178 | + "rolloutinprogress": ProvisioningStateRolloutInProgress, |
| 179 | + "running": ProvisioningStateRunning, |
| 180 | + "storageprovisioningfailed": ProvisioningStateStorageProvisioningFailed, |
| 181 | + "succeeded": ProvisioningStateSucceeded, |
| 182 | + "transientfailure": ProvisioningStateTransientFailure, |
| 183 | + "updated": ProvisioningStateUpdated, |
| 184 | + "updating": ProvisioningStateUpdating, |
| 185 | + } |
| 186 | + if v, ok := vals[strings.ToLower(input)]; ok { |
| 187 | + return &v, nil |
| 188 | + } |
| 189 | + |
| 190 | + // otherwise presume it's an undefined value and best-effort it |
| 191 | + out := ProvisioningState(input) |
| 192 | + return &out, nil |
| 193 | +} |
0 commit comments