Skip to content

Commit 99f7709

Browse files
CLOUDP-292068: More functions
1 parent 17fb0c8 commit 99f7709

File tree

1 file changed

+36
-25
lines changed

1 file changed

+36
-25
lines changed

tools/cli/internal/openapi/filter/extension.go

Lines changed: 36 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -53,27 +53,13 @@ func (f *ExtensionFilter) Apply() error {
5353
updateExtensionToDateString(operation.Extensions)
5454
deleteIpaExceptionExtension(operation.Extensions)
5555

56-
for _, parameter := range operation.Parameters {
57-
if parameter.Value == nil || parameter.Value.Schema == nil {
58-
continue
59-
}
60-
deleteIpaExceptionExtension(parameter.Value.Schema.Extensions)
61-
if parameter.Value.Schema.Value == nil {
62-
continue
63-
}
64-
deleteIpaExceptionExtension(parameter.Value.Schema.Value.Extensions)
56+
if operation.Parameters != nil {
57+
updateExtensionsForOperationParameters(operation.Parameters)
6558
}
6659

67-
latestVersionMatch := apiversion.FindLatestContentVersionMatched(operation, f.metadata.targetVersion)
60+
updateExtensionsForRequestBody(operation.RequestBody)
6861

69-
if operation.RequestBody != nil {
70-
deleteIpaExceptionExtension(operation.RequestBody.Extensions)
71-
_, contentsInVersion := getVersionsInContentType(operation.RequestBody.Value.Content)
72-
for _, content := range contentsInVersion {
73-
deleteIpaExceptionExtension(content.Extensions)
74-
updateExtensionsForSchema(content.Schema)
75-
}
76-
}
62+
latestVersionMatch := apiversion.FindLatestContentVersionMatched(operation, f.metadata.targetVersion)
7763

7864
for _, response := range operation.Responses.Map() {
7965
if response == nil {
@@ -115,20 +101,28 @@ func (f *ExtensionFilter) Apply() error {
115101
return nil
116102
}
117103

118-
func updateExtensionToDateString(extensions map[string]any) {
119-
if extensions == nil {
104+
func updateExtensionsForRequestBody(requestBody *openapi3.RequestBodyRef) {
105+
if requestBody == nil {
120106
return
121107
}
108+
deleteIpaExceptionExtension(requestBody.Extensions)
109+
_, contentsInVersion := getVersionsInContentType(requestBody.Value.Content)
110+
for _, content := range contentsInVersion {
111+
deleteIpaExceptionExtension(content.Extensions)
112+
updateExtensionsForSchema(content.Schema)
113+
}
114+
}
122115

123-
for k, v := range extensions {
124-
if k != sunsetExtension && k != xGenExtension {
116+
func updateExtensionsForOperationParameters(parameters openapi3.Parameters) {
117+
for _, parameter := range parameters {
118+
if parameter.Value == nil || parameter.Value.Schema == nil {
125119
continue
126120
}
127-
date, err := time.Parse(format, v.(string))
128-
if err != nil {
121+
deleteIpaExceptionExtension(parameter.Value.Schema.Extensions)
122+
if parameter.Value.Schema.Value == nil {
129123
continue
130124
}
131-
extensions[k] = date.Format("2006-01-02")
125+
deleteIpaExceptionExtension(parameter.Value.Schema.Value.Extensions)
132126
}
133127
}
134128

@@ -203,6 +197,23 @@ func deleteIpaExceptionExtension(extensions map[string]any) {
203197
delete(extensions, ipaExceptionExtension)
204198
}
205199

200+
func updateExtensionToDateString(extensions map[string]any) {
201+
if extensions == nil {
202+
return
203+
}
204+
205+
for k, v := range extensions {
206+
if k != sunsetExtension && k != xGenExtension {
207+
continue
208+
}
209+
date, err := time.Parse(format, v.(string))
210+
if err != nil {
211+
continue
212+
}
213+
extensions[k] = date.Format("2006-01-02")
214+
}
215+
}
216+
206217
func (f *ExtensionFilter) updateToDateString(content openapi3.Content) {
207218
for _, mediaType := range content {
208219
if mediaType.Extensions == nil {

0 commit comments

Comments
 (0)