-
Notifications
You must be signed in to change notification settings - Fork 40
/
model_diskproperties.go
81 lines (71 loc) · 4.34 KB
/
model_diskproperties.go
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
package disks
import (
"time"
"github.com/hashicorp/go-azure-helpers/lang/dates"
)
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See NOTICE.txt in the project root for license information.
type DiskProperties struct {
BurstingEnabled *bool `json:"burstingEnabled,omitempty"`
BurstingEnabledTime *string `json:"burstingEnabledTime,omitempty"`
CompletionPercent *float64 `json:"completionPercent,omitempty"`
CreationData CreationData `json:"creationData"`
DataAccessAuthMode *DataAccessAuthMode `json:"dataAccessAuthMode,omitempty"`
DiskAccessId *string `json:"diskAccessId,omitempty"`
DiskIOPSReadOnly *int64 `json:"diskIOPSReadOnly,omitempty"`
DiskIOPSReadWrite *int64 `json:"diskIOPSReadWrite,omitempty"`
DiskMBpsReadOnly *int64 `json:"diskMBpsReadOnly,omitempty"`
DiskMBpsReadWrite *int64 `json:"diskMBpsReadWrite,omitempty"`
DiskSizeBytes *int64 `json:"diskSizeBytes,omitempty"`
DiskSizeGB *int64 `json:"diskSizeGB,omitempty"`
DiskState *DiskState `json:"diskState,omitempty"`
Encryption *Encryption `json:"encryption,omitempty"`
EncryptionSettingsCollection *EncryptionSettingsCollection `json:"encryptionSettingsCollection,omitempty"`
HyperVGeneration *HyperVGeneration `json:"hyperVGeneration,omitempty"`
LastOwnershipUpdateTime *string `json:"LastOwnershipUpdateTime,omitempty"`
MaxShares *int64 `json:"maxShares,omitempty"`
NetworkAccessPolicy *NetworkAccessPolicy `json:"networkAccessPolicy,omitempty"`
OptimizedForFrequentAttach *bool `json:"optimizedForFrequentAttach,omitempty"`
OsType *OperatingSystemTypes `json:"osType,omitempty"`
PropertyUpdatesInProgress *PropertyUpdatesInProgress `json:"propertyUpdatesInProgress,omitempty"`
ProvisioningState *string `json:"provisioningState,omitempty"`
PublicNetworkAccess *PublicNetworkAccess `json:"publicNetworkAccess,omitempty"`
PurchasePlan *PurchasePlan `json:"purchasePlan,omitempty"`
SecurityProfile *DiskSecurityProfile `json:"securityProfile,omitempty"`
ShareInfo *[]ShareInfoElement `json:"shareInfo,omitempty"`
SupportedCapabilities *SupportedCapabilities `json:"supportedCapabilities,omitempty"`
SupportsHibernation *bool `json:"supportsHibernation,omitempty"`
Tier *string `json:"tier,omitempty"`
TimeCreated *string `json:"timeCreated,omitempty"`
UniqueId *string `json:"uniqueId,omitempty"`
}
func (o *DiskProperties) GetBurstingEnabledTimeAsTime() (*time.Time, error) {
if o.BurstingEnabledTime == nil {
return nil, nil
}
return dates.ParseAsFormat(o.BurstingEnabledTime, "2006-01-02T15:04:05Z07:00")
}
func (o *DiskProperties) SetBurstingEnabledTimeAsTime(input time.Time) {
formatted := input.Format("2006-01-02T15:04:05Z07:00")
o.BurstingEnabledTime = &formatted
}
func (o *DiskProperties) GetLastOwnershipUpdateTimeAsTime() (*time.Time, error) {
if o.LastOwnershipUpdateTime == nil {
return nil, nil
}
return dates.ParseAsFormat(o.LastOwnershipUpdateTime, "2006-01-02T15:04:05Z07:00")
}
func (o *DiskProperties) SetLastOwnershipUpdateTimeAsTime(input time.Time) {
formatted := input.Format("2006-01-02T15:04:05Z07:00")
o.LastOwnershipUpdateTime = &formatted
}
func (o *DiskProperties) GetTimeCreatedAsTime() (*time.Time, error) {
if o.TimeCreated == nil {
return nil, nil
}
return dates.ParseAsFormat(o.TimeCreated, "2006-01-02T15:04:05Z07:00")
}
func (o *DiskProperties) SetTimeCreatedAsTime(input time.Time) {
formatted := input.Format("2006-01-02T15:04:05Z07:00")
o.TimeCreated = &formatted
}