-
Notifications
You must be signed in to change notification settings - Fork 10
/
certificate_issued_to.go
150 lines (123 loc) · 4.4 KB
/
certificate_issued_to.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
// Code generated by go-swagger; DO NOT EDIT.
package models
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
import (
"bytes"
"context"
"encoding/json"
"io"
"github.com/go-openapi/errors"
"github.com/go-openapi/runtime"
"github.com/go-openapi/strfmt"
"github.com/go-openapi/validate"
)
// CertificateIssuedTo CertificateIssuedTo
//
// Holding body of the Certificate.
//
// swagger:discriminator CertificateIssuedTo Holding body of the Certificate.
type CertificateIssuedTo interface {
runtime.Validatable
runtime.ContextValidatable
// A human-friendly name used as an identifier for the holding body.
// Example: vmware.com
CommonName() string
SetCommonName(string)
// Name of the organisation.
// Example: VMware Inc.
Organization() string
SetOrganization(string)
// Unique ID given to the issued organization.
// Example: 2.7896956101890133e+38
SerialNumber() string
SetSerialNumber(string)
// AdditionalProperties in base type shoud be handled just like regular properties
// At this moment, the base type property is pushed down to the subtype
}
type certificateIssuedTo struct {
commonNameField string
organizationField string
serialNumberField string
}
// CommonName gets the common name of this polymorphic type
func (m *certificateIssuedTo) CommonName() string {
return m.commonNameField
}
// SetCommonName sets the common name of this polymorphic type
func (m *certificateIssuedTo) SetCommonName(val string) {
m.commonNameField = val
}
// Organization gets the organization of this polymorphic type
func (m *certificateIssuedTo) Organization() string {
return m.organizationField
}
// SetOrganization sets the organization of this polymorphic type
func (m *certificateIssuedTo) SetOrganization(val string) {
m.organizationField = val
}
// SerialNumber gets the serial number of this polymorphic type
func (m *certificateIssuedTo) SerialNumber() string {
return m.serialNumberField
}
// SetSerialNumber sets the serial number of this polymorphic type
func (m *certificateIssuedTo) SetSerialNumber(val string) {
m.serialNumberField = val
}
// UnmarshalCertificateIssuedToSlice unmarshals polymorphic slices of CertificateIssuedTo
func UnmarshalCertificateIssuedToSlice(reader io.Reader, consumer runtime.Consumer) ([]CertificateIssuedTo, error) {
var elements []json.RawMessage
if err := consumer.Consume(reader, &elements); err != nil {
return nil, err
}
var result []CertificateIssuedTo
for _, element := range elements {
obj, err := unmarshalCertificateIssuedTo(element, consumer)
if err != nil {
return nil, err
}
result = append(result, obj)
}
return result, nil
}
// UnmarshalCertificateIssuedTo unmarshals polymorphic CertificateIssuedTo
func UnmarshalCertificateIssuedTo(reader io.Reader, consumer runtime.Consumer) (CertificateIssuedTo, error) {
// we need to read this twice, so first into a buffer
data, err := io.ReadAll(reader)
if err != nil {
return nil, err
}
return unmarshalCertificateIssuedTo(data, consumer)
}
func unmarshalCertificateIssuedTo(data []byte, consumer runtime.Consumer) (CertificateIssuedTo, error) {
buf := bytes.NewBuffer(data)
buf2 := bytes.NewBuffer(data)
// the first time this is read is to fetch the value of the Holding body of the Certificate. property.
var getType struct {
HoldingBodyOfTheCertificate string `json:"Holding body of the Certificate."`
}
if err := consumer.Consume(buf, &getType); err != nil {
return nil, err
}
if err := validate.RequiredString("Holding body of the Certificate.", "body", getType.HoldingBodyOfTheCertificate); err != nil {
return nil, err
}
// The value of Holding body of the Certificate. is used to determine which type to create and unmarshal the data into
switch getType.HoldingBodyOfTheCertificate {
case "CertificateIssuedTo":
var result certificateIssuedTo
if err := consumer.Consume(buf2, &result); err != nil {
return nil, err
}
return &result, nil
}
return nil, errors.New(422, "invalid Holding body of the Certificate. value: %q", getType.HoldingBodyOfTheCertificate)
}
// Validate validates this certificate issued to
func (m *certificateIssuedTo) Validate(formats strfmt.Registry) error {
return nil
}
// ContextValidate validates this certificate issued to based on context it is used
func (m *certificateIssuedTo) ContextValidate(ctx context.Context, formats strfmt.Registry) error {
return nil
}