/
patch_summary.go
210 lines (173 loc) · 8.86 KB
/
patch_summary.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
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
// Copyright (c) 2016, 2018, 2024, Oracle and/or its affiliates. All rights reserved.
// This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
// Code generated. DO NOT EDIT.
// Database Service API
//
// The API for the Database Service. Use this API to manage resources such as databases and DB Systems. For more information, see Overview of the Database Service (https://docs.cloud.oracle.com/iaas/Content/Database/Concepts/databaseoverview.htm).
//
package database
import (
"fmt"
"github.com/oracle/oci-go-sdk/v65/common"
"strings"
)
// PatchSummary A Patch for a DB system or DB Home.
// To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized,
// talk to an administrator. If you're an administrator who needs to write policies to give users access,
// see Getting Started with Policies (https://docs.cloud.oracle.com/Content/Identity/Concepts/policygetstarted.htm).
type PatchSummary struct {
// The OCID (https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the patch.
Id *string `mandatory:"true" json:"id"`
// The text describing this patch package.
Description *string `mandatory:"true" json:"description"`
// The date and time that the patch was released.
TimeReleased *common.SDKTime `mandatory:"true" json:"timeReleased"`
// The version of this patch package.
Version *string `mandatory:"true" json:"version"`
// Action that is currently being performed or was completed last.
LastAction PatchSummaryLastActionEnum `mandatory:"false" json:"lastAction,omitempty"`
// Actions that can possibly be performed using this patch.
AvailableActions []PatchSummaryAvailableActionsEnum `mandatory:"false" json:"availableActions,omitempty"`
// A descriptive text associated with the lifecycleState.
// Typically can contain additional displayable text.
LifecycleDetails *string `mandatory:"false" json:"lifecycleDetails"`
// The current state of the patch as a result of lastAction.
LifecycleState PatchSummaryLifecycleStateEnum `mandatory:"false" json:"lifecycleState,omitempty"`
}
func (m PatchSummary) String() string {
return common.PointerString(m)
}
// ValidateEnumValue returns an error when providing an unsupported enum value
// This function is being called during constructing API request process
// Not recommended for calling this function directly
func (m PatchSummary) ValidateEnumValue() (bool, error) {
errMessage := []string{}
if _, ok := GetMappingPatchSummaryLastActionEnum(string(m.LastAction)); !ok && m.LastAction != "" {
errMessage = append(errMessage, fmt.Sprintf("unsupported enum value for LastAction: %s. Supported values are: %s.", m.LastAction, strings.Join(GetPatchSummaryLastActionEnumStringValues(), ",")))
}
for _, val := range m.AvailableActions {
if _, ok := GetMappingPatchSummaryAvailableActionsEnum(string(val)); !ok && val != "" {
errMessage = append(errMessage, fmt.Sprintf("unsupported enum value for AvailableActions: %s. Supported values are: %s.", val, strings.Join(GetPatchSummaryAvailableActionsEnumStringValues(), ",")))
}
}
if _, ok := GetMappingPatchSummaryLifecycleStateEnum(string(m.LifecycleState)); !ok && m.LifecycleState != "" {
errMessage = append(errMessage, fmt.Sprintf("unsupported enum value for LifecycleState: %s. Supported values are: %s.", m.LifecycleState, strings.Join(GetPatchSummaryLifecycleStateEnumStringValues(), ",")))
}
if len(errMessage) > 0 {
return true, fmt.Errorf(strings.Join(errMessage, "\n"))
}
return false, nil
}
// PatchSummaryLastActionEnum Enum with underlying type: string
type PatchSummaryLastActionEnum string
// Set of constants representing the allowable values for PatchSummaryLastActionEnum
const (
PatchSummaryLastActionApply PatchSummaryLastActionEnum = "APPLY"
PatchSummaryLastActionPrecheck PatchSummaryLastActionEnum = "PRECHECK"
)
var mappingPatchSummaryLastActionEnum = map[string]PatchSummaryLastActionEnum{
"APPLY": PatchSummaryLastActionApply,
"PRECHECK": PatchSummaryLastActionPrecheck,
}
var mappingPatchSummaryLastActionEnumLowerCase = map[string]PatchSummaryLastActionEnum{
"apply": PatchSummaryLastActionApply,
"precheck": PatchSummaryLastActionPrecheck,
}
// GetPatchSummaryLastActionEnumValues Enumerates the set of values for PatchSummaryLastActionEnum
func GetPatchSummaryLastActionEnumValues() []PatchSummaryLastActionEnum {
values := make([]PatchSummaryLastActionEnum, 0)
for _, v := range mappingPatchSummaryLastActionEnum {
values = append(values, v)
}
return values
}
// GetPatchSummaryLastActionEnumStringValues Enumerates the set of values in String for PatchSummaryLastActionEnum
func GetPatchSummaryLastActionEnumStringValues() []string {
return []string{
"APPLY",
"PRECHECK",
}
}
// GetMappingPatchSummaryLastActionEnum performs case Insensitive comparison on enum value and return the desired enum
func GetMappingPatchSummaryLastActionEnum(val string) (PatchSummaryLastActionEnum, bool) {
enum, ok := mappingPatchSummaryLastActionEnumLowerCase[strings.ToLower(val)]
return enum, ok
}
// PatchSummaryAvailableActionsEnum Enum with underlying type: string
type PatchSummaryAvailableActionsEnum string
// Set of constants representing the allowable values for PatchSummaryAvailableActionsEnum
const (
PatchSummaryAvailableActionsApply PatchSummaryAvailableActionsEnum = "APPLY"
PatchSummaryAvailableActionsPrecheck PatchSummaryAvailableActionsEnum = "PRECHECK"
)
var mappingPatchSummaryAvailableActionsEnum = map[string]PatchSummaryAvailableActionsEnum{
"APPLY": PatchSummaryAvailableActionsApply,
"PRECHECK": PatchSummaryAvailableActionsPrecheck,
}
var mappingPatchSummaryAvailableActionsEnumLowerCase = map[string]PatchSummaryAvailableActionsEnum{
"apply": PatchSummaryAvailableActionsApply,
"precheck": PatchSummaryAvailableActionsPrecheck,
}
// GetPatchSummaryAvailableActionsEnumValues Enumerates the set of values for PatchSummaryAvailableActionsEnum
func GetPatchSummaryAvailableActionsEnumValues() []PatchSummaryAvailableActionsEnum {
values := make([]PatchSummaryAvailableActionsEnum, 0)
for _, v := range mappingPatchSummaryAvailableActionsEnum {
values = append(values, v)
}
return values
}
// GetPatchSummaryAvailableActionsEnumStringValues Enumerates the set of values in String for PatchSummaryAvailableActionsEnum
func GetPatchSummaryAvailableActionsEnumStringValues() []string {
return []string{
"APPLY",
"PRECHECK",
}
}
// GetMappingPatchSummaryAvailableActionsEnum performs case Insensitive comparison on enum value and return the desired enum
func GetMappingPatchSummaryAvailableActionsEnum(val string) (PatchSummaryAvailableActionsEnum, bool) {
enum, ok := mappingPatchSummaryAvailableActionsEnumLowerCase[strings.ToLower(val)]
return enum, ok
}
// PatchSummaryLifecycleStateEnum Enum with underlying type: string
type PatchSummaryLifecycleStateEnum string
// Set of constants representing the allowable values for PatchSummaryLifecycleStateEnum
const (
PatchSummaryLifecycleStateAvailable PatchSummaryLifecycleStateEnum = "AVAILABLE"
PatchSummaryLifecycleStateSuccess PatchSummaryLifecycleStateEnum = "SUCCESS"
PatchSummaryLifecycleStateInProgress PatchSummaryLifecycleStateEnum = "IN_PROGRESS"
PatchSummaryLifecycleStateFailed PatchSummaryLifecycleStateEnum = "FAILED"
)
var mappingPatchSummaryLifecycleStateEnum = map[string]PatchSummaryLifecycleStateEnum{
"AVAILABLE": PatchSummaryLifecycleStateAvailable,
"SUCCESS": PatchSummaryLifecycleStateSuccess,
"IN_PROGRESS": PatchSummaryLifecycleStateInProgress,
"FAILED": PatchSummaryLifecycleStateFailed,
}
var mappingPatchSummaryLifecycleStateEnumLowerCase = map[string]PatchSummaryLifecycleStateEnum{
"available": PatchSummaryLifecycleStateAvailable,
"success": PatchSummaryLifecycleStateSuccess,
"in_progress": PatchSummaryLifecycleStateInProgress,
"failed": PatchSummaryLifecycleStateFailed,
}
// GetPatchSummaryLifecycleStateEnumValues Enumerates the set of values for PatchSummaryLifecycleStateEnum
func GetPatchSummaryLifecycleStateEnumValues() []PatchSummaryLifecycleStateEnum {
values := make([]PatchSummaryLifecycleStateEnum, 0)
for _, v := range mappingPatchSummaryLifecycleStateEnum {
values = append(values, v)
}
return values
}
// GetPatchSummaryLifecycleStateEnumStringValues Enumerates the set of values in String for PatchSummaryLifecycleStateEnum
func GetPatchSummaryLifecycleStateEnumStringValues() []string {
return []string{
"AVAILABLE",
"SUCCESS",
"IN_PROGRESS",
"FAILED",
}
}
// GetMappingPatchSummaryLifecycleStateEnum performs case Insensitive comparison on enum value and return the desired enum
func GetMappingPatchSummaryLifecycleStateEnum(val string) (PatchSummaryLifecycleStateEnum, bool) {
enum, ok := mappingPatchSummaryLifecycleStateEnumLowerCase[strings.ToLower(val)]
return enum, ok
}