-
Notifications
You must be signed in to change notification settings - Fork 80
/
schema.go
147 lines (130 loc) · 6.06 KB
/
schema.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
// 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.
// Identity Domains API
//
// Use the Identity Domains API to manage resources within an identity domain, for example, users, dynamic resource groups, groups, and identity providers. For information about managing resources within identity domains, see Identity and Access Management (with identity domains) (https://docs.oracle.com/iaas/Content/Identity/home.htm). This REST API is SCIM compliant.
// Use the table of contents and search tool to explore the Identity Domains API.
//
package identitydomains
import (
"fmt"
"github.com/oracle/oci-go-sdk/v65/common"
"strings"
)
// Schema SCIM schema
type Schema struct {
// REQUIRED. The schemas attribute is an array of Strings which allows introspection of the supported schema version for a SCIM representation as well any schema extensions supported by that representation. Each String value must be a unique URI. This specification defines URIs for User, Group, and a standard \"enterprise\" extension. All representations of SCIM schema MUST include a non-zero value array with value(s) of the URIs supported by that representation. Duplicate values MUST NOT be included. Value order is not specified and MUST not impact behavior.
// **SCIM++ Properties:**
// - caseExact: false
// - idcsSearchable: false
// - multiValued: true
// - mutability: readWrite
// - required: true
// - returned: default
// - type: string
// - uniqueness: none
Schemas []string `mandatory:"true" json:"schemas"`
// Specifies if the attributes in this schema can be used for mapping with external identity sources such as AD or LDAP
// **SCIM++ Properties:**
// - caseExact: false
// - multiValued: false
// - mutability: readOnly
// - required: true
// - returned: default
// - type: boolean
// - uniqueness: none
IdcsMappable *bool `mandatory:"true" json:"idcsMappable"`
// Contains the canonical name of the other attribute sharing the same idcsTargetAttributeName
// **Added In:** 2209122038
// **SCIM++ Properties:**
// - caseExact: false
// - idcsSearchable: false
// - multiValued: false
// - mutability: readWrite
// - required: false
// - returned: always
// - type: string
// - uniqueness: none
IdcsMapsToSameTargetAttributeNameAs *string `mandatory:"false" json:"idcsMapsToSameTargetAttributeNameAs"`
// An identifier for the Resource as defined by the Service Consumer. The externalId may simplify identification of the Resource between Service Consumer and Service Provider by allowing the Consumer to refer to the Resource with its own identifier, obviating the need to store a local mapping between the local identifier of the Resource and the identifier used by the Service Provider. Each Resource MAY include a non-empty externalId value. The value of the externalId attribute is always issued by the Service Consumer and can never be specified by the Service Provider. The Service Provider MUST always interpret the externalId as scoped to the Service Consumer's tenant.
// **SCIM++ Properties:**
// - caseExact: false
// - multiValued: false
// - mutability: readWrite
// - required: false
// - returned: default
// - type: string
// - uniqueness: none
ExternalId *string `mandatory:"false" json:"externalId"`
// Schema's human-readable name
// **SCIM++ Properties:**
// - caseExact: false
// - multiValued: false
// - mutability: readWrite
// - required: false
// - returned: default
// - type: string
// - uniqueness: none
Name *string `mandatory:"false" json:"name"`
// Resource types defs this resource refers to
// **SCIM++ Properties:**
// - caseExact: false
// - multiValued: true
// - mutability: readWrite
// - required: false
// - returned: default
// - type: string
// - uniqueness: none
IdcsResourceTypes []string `mandatory:"false" json:"idcsResourceTypes"`
// Schema's human-readable description
// **SCIM++ Properties:**
// - caseExact: false
// - multiValued: false
// - mutability: readWrite
// - required: false
// - returned: default
// - type: string
// - uniqueness: none
Description *string `mandatory:"false" json:"description"`
// Specifies whether the attribute is cacheable. True by default for all attributes. If attribute with idcsAttributeCachable = false, is present \"attributesToGet\" while executing GET/SEARCH on cacheable resource, Cache is missed and data is fetched from Data Provider.
// **Added In:** 17.3.4
// **SCIM++ Properties:**
// - multiValued: false
// - mutability: readWrite
// - required: false
// - returned: default
// - type: boolean
IdcsAttributeCacheable *bool `mandatory:"false" json:"idcsAttributeCacheable"`
// Specifies whether the dataprovider mapping from resource schema should override from common schema with the same name.
// **Added In:** 2102181953
// **SCIM++ Properties:**
// - multiValued: false
// - mutability: readWrite
// - required: false
// - returned: default
// - type: boolean
IdcsOverrideCommonAttribute *bool `mandatory:"false" json:"idcsOverrideCommonAttribute"`
// A complex type that specifies the set of Resource attributes
// **SCIM++ Properties:**
// - idcsCompositeKey: []
// - multiValued: true
// - mutability: readWrite
// - required: false
// - returned: default
// - type: complex
Attributes []SchemaAttributes `mandatory:"false" json:"attributes"`
}
func (m Schema) 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 Schema) ValidateEnumValue() (bool, error) {
errMessage := []string{}
if len(errMessage) > 0 {
return true, fmt.Errorf(strings.Join(errMessage, "\n"))
}
return false, nil
}