-
Notifications
You must be signed in to change notification settings - Fork 3
/
model_approval_scheme.go
121 lines (99 loc) · 3.23 KB
/
model_approval_scheme.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
/*
Identity Security Cloud Beta API
Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. These APIs are in beta and are subject to change. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs.
API version: 3.1.0-beta
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package api_beta
import (
"encoding/json"
"fmt"
)
// ApprovalScheme Describes the individual or group that is responsible for an approval step.
type ApprovalScheme string
// List of ApprovalScheme
const (
APPROVALSCHEME_APP_OWNER ApprovalScheme = "APP_OWNER"
APPROVALSCHEME_SOURCE_OWNER ApprovalScheme = "SOURCE_OWNER"
APPROVALSCHEME_MANAGER ApprovalScheme = "MANAGER"
APPROVALSCHEME_ROLE_OWNER ApprovalScheme = "ROLE_OWNER"
APPROVALSCHEME_ACCESS_PROFILE_OWNER ApprovalScheme = "ACCESS_PROFILE_OWNER"
APPROVALSCHEME_ENTITLEMENT_OWNER ApprovalScheme = "ENTITLEMENT_OWNER"
APPROVALSCHEME_GOVERNANCE_GROUP ApprovalScheme = "GOVERNANCE_GROUP"
)
// All allowed values of ApprovalScheme enum
var AllowedApprovalSchemeEnumValues = []ApprovalScheme{
"APP_OWNER",
"SOURCE_OWNER",
"MANAGER",
"ROLE_OWNER",
"ACCESS_PROFILE_OWNER",
"ENTITLEMENT_OWNER",
"GOVERNANCE_GROUP",
}
func (v *ApprovalScheme) UnmarshalJSON(src []byte) error {
var value string
err := json.Unmarshal(src, &value)
if err != nil {
return err
}
enumTypeValue := ApprovalScheme(value)
for _, existing := range AllowedApprovalSchemeEnumValues {
if existing == enumTypeValue {
*v = enumTypeValue
return nil
}
}
return fmt.Errorf("%+v is not a valid ApprovalScheme", value)
}
// NewApprovalSchemeFromValue returns a pointer to a valid ApprovalScheme
// for the value passed as argument, or an error if the value passed is not allowed by the enum
func NewApprovalSchemeFromValue(v string) (*ApprovalScheme, error) {
ev := ApprovalScheme(v)
if ev.IsValid() {
return &ev, nil
} else {
return nil, fmt.Errorf("invalid value '%v' for ApprovalScheme: valid values are %v", v, AllowedApprovalSchemeEnumValues)
}
}
// IsValid return true if the value is valid for the enum, false otherwise
func (v ApprovalScheme) IsValid() bool {
for _, existing := range AllowedApprovalSchemeEnumValues {
if existing == v {
return true
}
}
return false
}
// Ptr returns reference to ApprovalScheme value
func (v ApprovalScheme) Ptr() *ApprovalScheme {
return &v
}
type NullableApprovalScheme struct {
value *ApprovalScheme
isSet bool
}
func (v NullableApprovalScheme) Get() *ApprovalScheme {
return v.value
}
func (v *NullableApprovalScheme) Set(val *ApprovalScheme) {
v.value = val
v.isSet = true
}
func (v NullableApprovalScheme) IsSet() bool {
return v.isSet
}
func (v *NullableApprovalScheme) Unset() {
v.value = nil
v.isSet = false
}
func NewNullableApprovalScheme(val *ApprovalScheme) *NullableApprovalScheme {
return &NullableApprovalScheme{value: val, isSet: true}
}
func (v NullableApprovalScheme) MarshalJSON() ([]byte, error) {
return json.Marshal(v.value)
}
func (v *NullableApprovalScheme) UnmarshalJSON(src []byte) error {
v.isSet = true
return json.Unmarshal(src, &v.value)
}