diff --git a/apis/openapi3.json b/apis/openapi3.json index f5d210f..db7f410 100644 --- a/apis/openapi3.json +++ b/apis/openapi3.json @@ -842,7 +842,12 @@ "$ref": "#/components/schemas/ImportTaskStatus" }, "analysisResult": { - "$ref": "#/components/schemas/AnalysisResult" + "allOf": [ + { + "$ref": "#/components/schemas/AnalysisResult" + } + ], + "nullable": true }, "analysisProgressInPercent": { "type": "integer", @@ -856,7 +861,12 @@ "nullable": true }, "importResult": { - "$ref": "#/components/schemas/ImportResult" + "allOf": [ + { + "$ref": "#/components/schemas/ImportResult" + } + ], + "nullable": true } }, "additionalProperties": false, @@ -930,4 +940,4 @@ "description": "Provides endpoints for managing import tasks and their associated operations." } ] -} \ No newline at end of file +} diff --git a/hack/apis-mock/internal/gen/oas_json_gen.go b/hack/apis-mock/internal/gen/oas_json_gen.go index a028b30..fd551f4 100644 --- a/hack/apis-mock/internal/gen/oas_json_gen.go +++ b/hack/apis-mock/internal/gen/oas_json_gen.go @@ -1798,88 +1798,104 @@ func (s *ImportTaskStatusResponse) UnmarshalJSON(data []byte) error { return s.Decode(d) } -// Encode encodes AnalysisResult as json. -func (o OptAnalysisResult) Encode(e *jx.Encoder) { +// Encode encodes float64 as json. +func (o OptFloat64) Encode(e *jx.Encoder) { if !o.Set { return } - e.Str(string(o.Value)) + e.Float64(float64(o.Value)) } -// Decode decodes AnalysisResult from json. -func (o *OptAnalysisResult) Decode(d *jx.Decoder) error { +// Decode decodes float64 from json. +func (o *OptFloat64) Decode(d *jx.Decoder) error { if o == nil { - return errors.New("invalid: unable to decode OptAnalysisResult to nil") + return errors.New("invalid: unable to decode OptFloat64 to nil") } o.Set = true - if err := o.Value.Decode(d); err != nil { + v, err := d.Float64() + if err != nil { return err } + o.Value = float64(v) return nil } // MarshalJSON implements stdjson.Marshaler. -func (s OptAnalysisResult) MarshalJSON() ([]byte, error) { +func (s OptFloat64) MarshalJSON() ([]byte, error) { e := jx.Encoder{} s.Encode(&e) return e.Bytes(), nil } // UnmarshalJSON implements stdjson.Unmarshaler. -func (s *OptAnalysisResult) UnmarshalJSON(data []byte) error { +func (s *OptFloat64) UnmarshalJSON(data []byte) error { d := jx.DecodeBytes(data) return s.Decode(d) } -// Encode encodes float64 as json. -func (o OptFloat64) Encode(e *jx.Encoder) { +// Encode encodes ImportResult as json. +func (o OptImportResult) Encode(e *jx.Encoder) { if !o.Set { return } - e.Float64(float64(o.Value)) + e.Str(string(o.Value)) } -// Decode decodes float64 from json. -func (o *OptFloat64) Decode(d *jx.Decoder) error { +// Decode decodes ImportResult from json. +func (o *OptImportResult) Decode(d *jx.Decoder) error { if o == nil { - return errors.New("invalid: unable to decode OptFloat64 to nil") + return errors.New("invalid: unable to decode OptImportResult to nil") } o.Set = true - v, err := d.Float64() - if err != nil { + if err := o.Value.Decode(d); err != nil { return err } - o.Value = float64(v) return nil } // MarshalJSON implements stdjson.Marshaler. -func (s OptFloat64) MarshalJSON() ([]byte, error) { +func (s OptImportResult) MarshalJSON() ([]byte, error) { e := jx.Encoder{} s.Encode(&e) return e.Bytes(), nil } // UnmarshalJSON implements stdjson.Unmarshaler. -func (s *OptFloat64) UnmarshalJSON(data []byte) error { +func (s *OptImportResult) UnmarshalJSON(data []byte) error { d := jx.DecodeBytes(data) return s.Decode(d) } -// Encode encodes ImportResult as json. -func (o OptImportResult) Encode(e *jx.Encoder) { +// Encode encodes AnalysisResult as json. +func (o OptNilAnalysisResult) Encode(e *jx.Encoder) { if !o.Set { return } + if o.Null { + e.Null() + return + } e.Str(string(o.Value)) } -// Decode decodes ImportResult from json. -func (o *OptImportResult) Decode(d *jx.Decoder) error { +// Decode decodes AnalysisResult from json. +func (o *OptNilAnalysisResult) Decode(d *jx.Decoder) error { if o == nil { - return errors.New("invalid: unable to decode OptImportResult to nil") + return errors.New("invalid: unable to decode OptNilAnalysisResult to nil") + } + if d.Next() == jx.Null { + if err := d.Null(); err != nil { + return err + } + + var v AnalysisResult + o.Value = v + o.Set = true + o.Null = true + return nil } o.Set = true + o.Null = false if err := o.Value.Decode(d); err != nil { return err } @@ -1887,14 +1903,14 @@ func (o *OptImportResult) Decode(d *jx.Decoder) error { } // MarshalJSON implements stdjson.Marshaler. -func (s OptImportResult) MarshalJSON() ([]byte, error) { +func (s OptNilAnalysisResult) MarshalJSON() ([]byte, error) { e := jx.Encoder{} s.Encode(&e) return e.Bytes(), nil } // UnmarshalJSON implements stdjson.Unmarshaler. -func (s *OptImportResult) UnmarshalJSON(data []byte) error { +func (s *OptNilAnalysisResult) UnmarshalJSON(data []byte) error { d := jx.DecodeBytes(data) return s.Decode(d) } @@ -1960,6 +1976,55 @@ func (s *OptNilHealthCheckResultArray) UnmarshalJSON(data []byte) error { return s.Decode(d) } +// Encode encodes ImportResult as json. +func (o OptNilImportResult) Encode(e *jx.Encoder) { + if !o.Set { + return + } + if o.Null { + e.Null() + return + } + e.Str(string(o.Value)) +} + +// Decode decodes ImportResult from json. +func (o *OptNilImportResult) Decode(d *jx.Decoder) error { + if o == nil { + return errors.New("invalid: unable to decode OptNilImportResult to nil") + } + if d.Next() == jx.Null { + if err := d.Null(); err != nil { + return err + } + + var v ImportResult + o.Value = v + o.Set = true + o.Null = true + return nil + } + o.Set = true + o.Null = false + if err := o.Value.Decode(d); err != nil { + return err + } + return nil +} + +// MarshalJSON implements stdjson.Marshaler. +func (s OptNilImportResult) MarshalJSON() ([]byte, error) { + e := jx.Encoder{} + s.Encode(&e) + return e.Bytes(), nil +} + +// UnmarshalJSON implements stdjson.Unmarshaler. +func (s *OptNilImportResult) UnmarshalJSON(data []byte) error { + d := jx.DecodeBytes(data) + return s.Decode(d) +} + // Encode encodes int32 as json. func (o OptNilInt32) Encode(e *jx.Encoder) { if !o.Set { diff --git a/hack/apis-mock/internal/gen/oas_schemas_gen.go b/hack/apis-mock/internal/gen/oas_schemas_gen.go index 268bd3e..d1ca608 100644 --- a/hack/apis-mock/internal/gen/oas_schemas_gen.go +++ b/hack/apis-mock/internal/gen/oas_schemas_gen.go @@ -748,13 +748,13 @@ func (s *ImportTaskStatus) UnmarshalText(data []byte) error { // Response containing the status of an import task (analysis phase). // Ref: #/components/schemas/ImportTaskStatusResponse type ImportTaskStatusResponse struct { - Status ImportTaskStatus `json:"status"` - AnalysisResult OptAnalysisResult `json:"analysisResult"` + Status ImportTaskStatus `json:"status"` + AnalysisResult OptNilAnalysisResult `json:"analysisResult"` // During the analysis, this indicates the progress in percent. AnalysisProgressInPercent OptNilInt32 `json:"analysisProgressInPercent"` // If there was an error during the analysis, this contains the error message. - AnalysisErrorMessage OptNilString `json:"analysisErrorMessage"` - ImportResult OptImportResult `json:"importResult"` + AnalysisErrorMessage OptNilString `json:"analysisErrorMessage"` + ImportResult OptNilImportResult `json:"importResult"` } // GetStatus returns the value of Status. @@ -763,7 +763,7 @@ func (s *ImportTaskStatusResponse) GetStatus() ImportTaskStatus { } // GetAnalysisResult returns the value of AnalysisResult. -func (s *ImportTaskStatusResponse) GetAnalysisResult() OptAnalysisResult { +func (s *ImportTaskStatusResponse) GetAnalysisResult() OptNilAnalysisResult { return s.AnalysisResult } @@ -778,7 +778,7 @@ func (s *ImportTaskStatusResponse) GetAnalysisErrorMessage() OptNilString { } // GetImportResult returns the value of ImportResult. -func (s *ImportTaskStatusResponse) GetImportResult() OptImportResult { +func (s *ImportTaskStatusResponse) GetImportResult() OptNilImportResult { return s.ImportResult } @@ -788,7 +788,7 @@ func (s *ImportTaskStatusResponse) SetStatus(val ImportTaskStatus) { } // SetAnalysisResult sets the value of AnalysisResult. -func (s *ImportTaskStatusResponse) SetAnalysisResult(val OptAnalysisResult) { +func (s *ImportTaskStatusResponse) SetAnalysisResult(val OptNilAnalysisResult) { s.AnalysisResult = val } @@ -803,7 +803,7 @@ func (s *ImportTaskStatusResponse) SetAnalysisErrorMessage(val OptNilString) { } // SetImportResult sets the value of ImportResult. -func (s *ImportTaskStatusResponse) SetImportResult(val OptImportResult) { +func (s *ImportTaskStatusResponse) SetImportResult(val OptNilImportResult) { s.ImportResult = val } @@ -901,52 +901,6 @@ func (o OptAPIImporttasksPostReq) Or(d APIImporttasksPostReq) APIImporttasksPost return d } -// NewOptAnalysisResult returns new OptAnalysisResult with value set to v. -func NewOptAnalysisResult(v AnalysisResult) OptAnalysisResult { - return OptAnalysisResult{ - Value: v, - Set: true, - } -} - -// OptAnalysisResult is optional AnalysisResult. -type OptAnalysisResult struct { - Value AnalysisResult - Set bool -} - -// IsSet returns true if OptAnalysisResult was set. -func (o OptAnalysisResult) IsSet() bool { return o.Set } - -// Reset unsets value. -func (o *OptAnalysisResult) Reset() { - var v AnalysisResult - o.Value = v - o.Set = false -} - -// SetTo sets value to v. -func (o *OptAnalysisResult) SetTo(v AnalysisResult) { - o.Set = true - o.Value = v -} - -// Get returns value and boolean that denotes whether value was set. -func (o OptAnalysisResult) Get() (v AnalysisResult, ok bool) { - if !o.Set { - return v, false - } - return o.Value, true -} - -// Or returns value if set, or given parameter if does not. -func (o OptAnalysisResult) Or(d AnalysisResult) AnalysisResult { - if v, ok := o.Get(); ok { - return v - } - return d -} - // NewOptFloat64 returns new OptFloat64 with value set to v. func NewOptFloat64(v float64) OptFloat64 { return OptFloat64{ @@ -1085,6 +1039,69 @@ func (o OptImportResult) Or(d ImportResult) ImportResult { return d } +// NewOptNilAnalysisResult returns new OptNilAnalysisResult with value set to v. +func NewOptNilAnalysisResult(v AnalysisResult) OptNilAnalysisResult { + return OptNilAnalysisResult{ + Value: v, + Set: true, + } +} + +// OptNilAnalysisResult is optional nullable AnalysisResult. +type OptNilAnalysisResult struct { + Value AnalysisResult + Set bool + Null bool +} + +// IsSet returns true if OptNilAnalysisResult was set. +func (o OptNilAnalysisResult) IsSet() bool { return o.Set } + +// Reset unsets value. +func (o *OptNilAnalysisResult) Reset() { + var v AnalysisResult + o.Value = v + o.Set = false + o.Null = false +} + +// SetTo sets value to v. +func (o *OptNilAnalysisResult) SetTo(v AnalysisResult) { + o.Set = true + o.Null = false + o.Value = v +} + +// IsNull returns true if value is Null. +func (o OptNilAnalysisResult) IsNull() bool { return o.Null } + +// SetToNull sets value to null. +func (o *OptNilAnalysisResult) SetToNull() { + o.Set = true + o.Null = true + var v AnalysisResult + o.Value = v +} + +// Get returns value and boolean that denotes whether value was set. +func (o OptNilAnalysisResult) Get() (v AnalysisResult, ok bool) { + if o.Null { + return v, false + } + if !o.Set { + return v, false + } + return o.Value, true +} + +// Or returns value if set, or given parameter if does not. +func (o OptNilAnalysisResult) Or(d AnalysisResult) AnalysisResult { + if v, ok := o.Get(); ok { + return v + } + return d +} + // NewOptNilHealthCheckResultArray returns new OptNilHealthCheckResultArray with value set to v. func NewOptNilHealthCheckResultArray(v []HealthCheckResult) OptNilHealthCheckResultArray { return OptNilHealthCheckResultArray{ @@ -1148,6 +1165,69 @@ func (o OptNilHealthCheckResultArray) Or(d []HealthCheckResult) []HealthCheckRes return d } +// NewOptNilImportResult returns new OptNilImportResult with value set to v. +func NewOptNilImportResult(v ImportResult) OptNilImportResult { + return OptNilImportResult{ + Value: v, + Set: true, + } +} + +// OptNilImportResult is optional nullable ImportResult. +type OptNilImportResult struct { + Value ImportResult + Set bool + Null bool +} + +// IsSet returns true if OptNilImportResult was set. +func (o OptNilImportResult) IsSet() bool { return o.Set } + +// Reset unsets value. +func (o *OptNilImportResult) Reset() { + var v ImportResult + o.Value = v + o.Set = false + o.Null = false +} + +// SetTo sets value to v. +func (o *OptNilImportResult) SetTo(v ImportResult) { + o.Set = true + o.Null = false + o.Value = v +} + +// IsNull returns true if value is Null. +func (o OptNilImportResult) IsNull() bool { return o.Null } + +// SetToNull sets value to null. +func (o *OptNilImportResult) SetToNull() { + o.Set = true + o.Null = true + var v ImportResult + o.Value = v +} + +// Get returns value and boolean that denotes whether value was set. +func (o OptNilImportResult) Get() (v ImportResult, ok bool) { + if o.Null { + return v, false + } + if !o.Set { + return v, false + } + return o.Value, true +} + +// Or returns value if set, or given parameter if does not. +func (o OptNilImportResult) Or(d ImportResult) ImportResult { + if v, ok := o.Get(); ok { + return v + } + return d +} + // NewOptNilInt32 returns new OptNilInt32 with value set to v. func NewOptNilInt32(v int32) OptNilInt32 { return OptNilInt32{ diff --git a/hack/apis-mock/internal/mock/server.go b/hack/apis-mock/internal/mock/server.go index dac8267..9ea8596 100644 --- a/hack/apis-mock/internal/mock/server.go +++ b/hack/apis-mock/internal/mock/server.go @@ -260,10 +260,10 @@ func taskStatusResponse(task *taskState) *gen.ImportTaskStatusResponse { res := &gen.ImportTaskStatusResponse{Status: task.status} if task.analysisDone { - res.AnalysisResult = gen.NewOptAnalysisResult(task.analysisResult) + res.AnalysisResult = gen.NewOptNilAnalysisResult(task.analysisResult) } if task.importDone { - res.ImportResult = gen.NewOptImportResult(task.importResult) + res.ImportResult = gen.NewOptNilImportResult(task.importResult) } return res diff --git a/hack/apis-mock/internal/mock/server_test.go b/hack/apis-mock/internal/mock/server_test.go index 2d83ec8..baa6436 100644 --- a/hack/apis-mock/internal/mock/server_test.go +++ b/hack/apis-mock/internal/mock/server_test.go @@ -29,7 +29,7 @@ func TestTaskStatusDrivesAnalysisAndImportLifecycle(t *testing.T) { status = getTaskStatus(t, ctx, h, taskID) assert.DeepEqual(t, status, &gen.ImportTaskStatusResponse{ Status: gen.ImportTaskStatusAnalysiert, - AnalysisResult: gen.NewOptAnalysisResult(gen.AnalysisResultAlleNeu), + AnalysisResult: gen.NewOptNilAnalysisResult(gen.AnalysisResultAlleNeu), }) runID := createRun(t, ctx, h, taskID, "METS.xml", "") @@ -41,7 +41,7 @@ func TestTaskStatusDrivesAnalysisAndImportLifecycle(t *testing.T) { status = getTaskStatus(t, ctx, h, taskID) assert.DeepEqual(t, status, &gen.ImportTaskStatusResponse{ Status: gen.ImportTaskStatusWirdImportiert, - AnalysisResult: gen.NewOptAnalysisResult(gen.AnalysisResultAlleNeu), + AnalysisResult: gen.NewOptNilAnalysisResult(gen.AnalysisResultAlleNeu), }) runStatus = getImportRunStatus(t, ctx, h, taskID, runID) @@ -52,8 +52,8 @@ func TestTaskStatusDrivesAnalysisAndImportLifecycle(t *testing.T) { status = getTaskStatus(t, ctx, h, taskID) assert.DeepEqual(t, status, &gen.ImportTaskStatusResponse{ Status: gen.ImportTaskStatusImportiert, - AnalysisResult: gen.NewOptAnalysisResult(gen.AnalysisResultAlleNeu), - ImportResult: gen.NewOptImportResult(gen.ImportResultErfolgreich), + AnalysisResult: gen.NewOptNilAnalysisResult(gen.AnalysisResultAlleNeu), + ImportResult: gen.NewOptNilImportResult(gen.ImportResultErfolgreich), }) runStatus = getImportRunStatus(t, ctx, h, taskID, runID) @@ -73,7 +73,7 @@ func TestConflictTaskCanBeCancelled(t *testing.T) { status := getTaskStatus(t, ctx, h, taskID) assert.DeepEqual(t, status, &gen.ImportTaskStatusResponse{ Status: gen.ImportTaskStatusAnalysiert, - AnalysisResult: gen.NewOptAnalysisResult(gen.AnalysisResultKonflikte), + AnalysisResult: gen.NewOptNilAnalysisResult(gen.AnalysisResultKonflikte), }) cancelRes, err := h.APIImporttasksIDCancelPost( @@ -87,7 +87,7 @@ func TestConflictTaskCanBeCancelled(t *testing.T) { status = getTaskStatus(t, ctx, h, taskID) assert.DeepEqual(t, status, &gen.ImportTaskStatusResponse{ Status: gen.ImportTaskStatusAbgebrochen, - AnalysisResult: gen.NewOptAnalysisResult(gen.AnalysisResultKonflikte), + AnalysisResult: gen.NewOptNilAnalysisResult(gen.AnalysisResultKonflikte), }) runRes, err := h.APIImporttasksIDImportrunsPost( @@ -119,8 +119,8 @@ func TestImportFailureIsSurfacedThroughTaskStatus(t *testing.T) { status := getTaskStatus(t, ctx, h, taskID) assert.DeepEqual(t, status, &gen.ImportTaskStatusResponse{ Status: gen.ImportTaskStatusImportiert, - AnalysisResult: gen.NewOptAnalysisResult(gen.AnalysisResultAlleNeu), - ImportResult: gen.NewOptImportResult(gen.ImportResultFehler), + AnalysisResult: gen.NewOptNilAnalysisResult(gen.AnalysisResultAlleNeu), + ImportResult: gen.NewOptNilImportResult(gen.ImportResultFehler), }) runStatus := getImportRunStatus(t, ctx, h, taskID, runID) diff --git a/internal/apis/client.go b/internal/apis/client.go index f7e7aa3..d4a7044 100644 --- a/internal/apis/client.go +++ b/internal/apis/client.go @@ -23,7 +23,7 @@ func NewClient( ) (Client, error) { if httpClient == nil { timeout := config.Timeout - if timeout <= 0 { + if timeout < 0 { timeout = DefaultTimeout } diff --git a/internal/apis/gen/oas_json_gen.go b/internal/apis/gen/oas_json_gen.go index a028b30..fd551f4 100644 --- a/internal/apis/gen/oas_json_gen.go +++ b/internal/apis/gen/oas_json_gen.go @@ -1798,88 +1798,104 @@ func (s *ImportTaskStatusResponse) UnmarshalJSON(data []byte) error { return s.Decode(d) } -// Encode encodes AnalysisResult as json. -func (o OptAnalysisResult) Encode(e *jx.Encoder) { +// Encode encodes float64 as json. +func (o OptFloat64) Encode(e *jx.Encoder) { if !o.Set { return } - e.Str(string(o.Value)) + e.Float64(float64(o.Value)) } -// Decode decodes AnalysisResult from json. -func (o *OptAnalysisResult) Decode(d *jx.Decoder) error { +// Decode decodes float64 from json. +func (o *OptFloat64) Decode(d *jx.Decoder) error { if o == nil { - return errors.New("invalid: unable to decode OptAnalysisResult to nil") + return errors.New("invalid: unable to decode OptFloat64 to nil") } o.Set = true - if err := o.Value.Decode(d); err != nil { + v, err := d.Float64() + if err != nil { return err } + o.Value = float64(v) return nil } // MarshalJSON implements stdjson.Marshaler. -func (s OptAnalysisResult) MarshalJSON() ([]byte, error) { +func (s OptFloat64) MarshalJSON() ([]byte, error) { e := jx.Encoder{} s.Encode(&e) return e.Bytes(), nil } // UnmarshalJSON implements stdjson.Unmarshaler. -func (s *OptAnalysisResult) UnmarshalJSON(data []byte) error { +func (s *OptFloat64) UnmarshalJSON(data []byte) error { d := jx.DecodeBytes(data) return s.Decode(d) } -// Encode encodes float64 as json. -func (o OptFloat64) Encode(e *jx.Encoder) { +// Encode encodes ImportResult as json. +func (o OptImportResult) Encode(e *jx.Encoder) { if !o.Set { return } - e.Float64(float64(o.Value)) + e.Str(string(o.Value)) } -// Decode decodes float64 from json. -func (o *OptFloat64) Decode(d *jx.Decoder) error { +// Decode decodes ImportResult from json. +func (o *OptImportResult) Decode(d *jx.Decoder) error { if o == nil { - return errors.New("invalid: unable to decode OptFloat64 to nil") + return errors.New("invalid: unable to decode OptImportResult to nil") } o.Set = true - v, err := d.Float64() - if err != nil { + if err := o.Value.Decode(d); err != nil { return err } - o.Value = float64(v) return nil } // MarshalJSON implements stdjson.Marshaler. -func (s OptFloat64) MarshalJSON() ([]byte, error) { +func (s OptImportResult) MarshalJSON() ([]byte, error) { e := jx.Encoder{} s.Encode(&e) return e.Bytes(), nil } // UnmarshalJSON implements stdjson.Unmarshaler. -func (s *OptFloat64) UnmarshalJSON(data []byte) error { +func (s *OptImportResult) UnmarshalJSON(data []byte) error { d := jx.DecodeBytes(data) return s.Decode(d) } -// Encode encodes ImportResult as json. -func (o OptImportResult) Encode(e *jx.Encoder) { +// Encode encodes AnalysisResult as json. +func (o OptNilAnalysisResult) Encode(e *jx.Encoder) { if !o.Set { return } + if o.Null { + e.Null() + return + } e.Str(string(o.Value)) } -// Decode decodes ImportResult from json. -func (o *OptImportResult) Decode(d *jx.Decoder) error { +// Decode decodes AnalysisResult from json. +func (o *OptNilAnalysisResult) Decode(d *jx.Decoder) error { if o == nil { - return errors.New("invalid: unable to decode OptImportResult to nil") + return errors.New("invalid: unable to decode OptNilAnalysisResult to nil") + } + if d.Next() == jx.Null { + if err := d.Null(); err != nil { + return err + } + + var v AnalysisResult + o.Value = v + o.Set = true + o.Null = true + return nil } o.Set = true + o.Null = false if err := o.Value.Decode(d); err != nil { return err } @@ -1887,14 +1903,14 @@ func (o *OptImportResult) Decode(d *jx.Decoder) error { } // MarshalJSON implements stdjson.Marshaler. -func (s OptImportResult) MarshalJSON() ([]byte, error) { +func (s OptNilAnalysisResult) MarshalJSON() ([]byte, error) { e := jx.Encoder{} s.Encode(&e) return e.Bytes(), nil } // UnmarshalJSON implements stdjson.Unmarshaler. -func (s *OptImportResult) UnmarshalJSON(data []byte) error { +func (s *OptNilAnalysisResult) UnmarshalJSON(data []byte) error { d := jx.DecodeBytes(data) return s.Decode(d) } @@ -1960,6 +1976,55 @@ func (s *OptNilHealthCheckResultArray) UnmarshalJSON(data []byte) error { return s.Decode(d) } +// Encode encodes ImportResult as json. +func (o OptNilImportResult) Encode(e *jx.Encoder) { + if !o.Set { + return + } + if o.Null { + e.Null() + return + } + e.Str(string(o.Value)) +} + +// Decode decodes ImportResult from json. +func (o *OptNilImportResult) Decode(d *jx.Decoder) error { + if o == nil { + return errors.New("invalid: unable to decode OptNilImportResult to nil") + } + if d.Next() == jx.Null { + if err := d.Null(); err != nil { + return err + } + + var v ImportResult + o.Value = v + o.Set = true + o.Null = true + return nil + } + o.Set = true + o.Null = false + if err := o.Value.Decode(d); err != nil { + return err + } + return nil +} + +// MarshalJSON implements stdjson.Marshaler. +func (s OptNilImportResult) MarshalJSON() ([]byte, error) { + e := jx.Encoder{} + s.Encode(&e) + return e.Bytes(), nil +} + +// UnmarshalJSON implements stdjson.Unmarshaler. +func (s *OptNilImportResult) UnmarshalJSON(data []byte) error { + d := jx.DecodeBytes(data) + return s.Decode(d) +} + // Encode encodes int32 as json. func (o OptNilInt32) Encode(e *jx.Encoder) { if !o.Set { diff --git a/internal/apis/gen/oas_schemas_gen.go b/internal/apis/gen/oas_schemas_gen.go index 268bd3e..d1ca608 100644 --- a/internal/apis/gen/oas_schemas_gen.go +++ b/internal/apis/gen/oas_schemas_gen.go @@ -748,13 +748,13 @@ func (s *ImportTaskStatus) UnmarshalText(data []byte) error { // Response containing the status of an import task (analysis phase). // Ref: #/components/schemas/ImportTaskStatusResponse type ImportTaskStatusResponse struct { - Status ImportTaskStatus `json:"status"` - AnalysisResult OptAnalysisResult `json:"analysisResult"` + Status ImportTaskStatus `json:"status"` + AnalysisResult OptNilAnalysisResult `json:"analysisResult"` // During the analysis, this indicates the progress in percent. AnalysisProgressInPercent OptNilInt32 `json:"analysisProgressInPercent"` // If there was an error during the analysis, this contains the error message. - AnalysisErrorMessage OptNilString `json:"analysisErrorMessage"` - ImportResult OptImportResult `json:"importResult"` + AnalysisErrorMessage OptNilString `json:"analysisErrorMessage"` + ImportResult OptNilImportResult `json:"importResult"` } // GetStatus returns the value of Status. @@ -763,7 +763,7 @@ func (s *ImportTaskStatusResponse) GetStatus() ImportTaskStatus { } // GetAnalysisResult returns the value of AnalysisResult. -func (s *ImportTaskStatusResponse) GetAnalysisResult() OptAnalysisResult { +func (s *ImportTaskStatusResponse) GetAnalysisResult() OptNilAnalysisResult { return s.AnalysisResult } @@ -778,7 +778,7 @@ func (s *ImportTaskStatusResponse) GetAnalysisErrorMessage() OptNilString { } // GetImportResult returns the value of ImportResult. -func (s *ImportTaskStatusResponse) GetImportResult() OptImportResult { +func (s *ImportTaskStatusResponse) GetImportResult() OptNilImportResult { return s.ImportResult } @@ -788,7 +788,7 @@ func (s *ImportTaskStatusResponse) SetStatus(val ImportTaskStatus) { } // SetAnalysisResult sets the value of AnalysisResult. -func (s *ImportTaskStatusResponse) SetAnalysisResult(val OptAnalysisResult) { +func (s *ImportTaskStatusResponse) SetAnalysisResult(val OptNilAnalysisResult) { s.AnalysisResult = val } @@ -803,7 +803,7 @@ func (s *ImportTaskStatusResponse) SetAnalysisErrorMessage(val OptNilString) { } // SetImportResult sets the value of ImportResult. -func (s *ImportTaskStatusResponse) SetImportResult(val OptImportResult) { +func (s *ImportTaskStatusResponse) SetImportResult(val OptNilImportResult) { s.ImportResult = val } @@ -901,52 +901,6 @@ func (o OptAPIImporttasksPostReq) Or(d APIImporttasksPostReq) APIImporttasksPost return d } -// NewOptAnalysisResult returns new OptAnalysisResult with value set to v. -func NewOptAnalysisResult(v AnalysisResult) OptAnalysisResult { - return OptAnalysisResult{ - Value: v, - Set: true, - } -} - -// OptAnalysisResult is optional AnalysisResult. -type OptAnalysisResult struct { - Value AnalysisResult - Set bool -} - -// IsSet returns true if OptAnalysisResult was set. -func (o OptAnalysisResult) IsSet() bool { return o.Set } - -// Reset unsets value. -func (o *OptAnalysisResult) Reset() { - var v AnalysisResult - o.Value = v - o.Set = false -} - -// SetTo sets value to v. -func (o *OptAnalysisResult) SetTo(v AnalysisResult) { - o.Set = true - o.Value = v -} - -// Get returns value and boolean that denotes whether value was set. -func (o OptAnalysisResult) Get() (v AnalysisResult, ok bool) { - if !o.Set { - return v, false - } - return o.Value, true -} - -// Or returns value if set, or given parameter if does not. -func (o OptAnalysisResult) Or(d AnalysisResult) AnalysisResult { - if v, ok := o.Get(); ok { - return v - } - return d -} - // NewOptFloat64 returns new OptFloat64 with value set to v. func NewOptFloat64(v float64) OptFloat64 { return OptFloat64{ @@ -1085,6 +1039,69 @@ func (o OptImportResult) Or(d ImportResult) ImportResult { return d } +// NewOptNilAnalysisResult returns new OptNilAnalysisResult with value set to v. +func NewOptNilAnalysisResult(v AnalysisResult) OptNilAnalysisResult { + return OptNilAnalysisResult{ + Value: v, + Set: true, + } +} + +// OptNilAnalysisResult is optional nullable AnalysisResult. +type OptNilAnalysisResult struct { + Value AnalysisResult + Set bool + Null bool +} + +// IsSet returns true if OptNilAnalysisResult was set. +func (o OptNilAnalysisResult) IsSet() bool { return o.Set } + +// Reset unsets value. +func (o *OptNilAnalysisResult) Reset() { + var v AnalysisResult + o.Value = v + o.Set = false + o.Null = false +} + +// SetTo sets value to v. +func (o *OptNilAnalysisResult) SetTo(v AnalysisResult) { + o.Set = true + o.Null = false + o.Value = v +} + +// IsNull returns true if value is Null. +func (o OptNilAnalysisResult) IsNull() bool { return o.Null } + +// SetToNull sets value to null. +func (o *OptNilAnalysisResult) SetToNull() { + o.Set = true + o.Null = true + var v AnalysisResult + o.Value = v +} + +// Get returns value and boolean that denotes whether value was set. +func (o OptNilAnalysisResult) Get() (v AnalysisResult, ok bool) { + if o.Null { + return v, false + } + if !o.Set { + return v, false + } + return o.Value, true +} + +// Or returns value if set, or given parameter if does not. +func (o OptNilAnalysisResult) Or(d AnalysisResult) AnalysisResult { + if v, ok := o.Get(); ok { + return v + } + return d +} + // NewOptNilHealthCheckResultArray returns new OptNilHealthCheckResultArray with value set to v. func NewOptNilHealthCheckResultArray(v []HealthCheckResult) OptNilHealthCheckResultArray { return OptNilHealthCheckResultArray{ @@ -1148,6 +1165,69 @@ func (o OptNilHealthCheckResultArray) Or(d []HealthCheckResult) []HealthCheckRes return d } +// NewOptNilImportResult returns new OptNilImportResult with value set to v. +func NewOptNilImportResult(v ImportResult) OptNilImportResult { + return OptNilImportResult{ + Value: v, + Set: true, + } +} + +// OptNilImportResult is optional nullable ImportResult. +type OptNilImportResult struct { + Value ImportResult + Set bool + Null bool +} + +// IsSet returns true if OptNilImportResult was set. +func (o OptNilImportResult) IsSet() bool { return o.Set } + +// Reset unsets value. +func (o *OptNilImportResult) Reset() { + var v ImportResult + o.Value = v + o.Set = false + o.Null = false +} + +// SetTo sets value to v. +func (o *OptNilImportResult) SetTo(v ImportResult) { + o.Set = true + o.Null = false + o.Value = v +} + +// IsNull returns true if value is Null. +func (o OptNilImportResult) IsNull() bool { return o.Null } + +// SetToNull sets value to null. +func (o *OptNilImportResult) SetToNull() { + o.Set = true + o.Null = true + var v ImportResult + o.Value = v +} + +// Get returns value and boolean that denotes whether value was set. +func (o OptNilImportResult) Get() (v ImportResult, ok bool) { + if o.Null { + return v, false + } + if !o.Set { + return v, false + } + return o.Value, true +} + +// Or returns value if set, or given parameter if does not. +func (o OptNilImportResult) Or(d ImportResult) ImportResult { + if v, ok := o.Get(); ok { + return v + } + return d +} + // NewOptNilInt32 returns new OptNilInt32 with value set to v. func NewOptNilInt32(v int32) OptNilInt32 { return OptNilInt32{ diff --git a/internal/apis/poll_import_task_status_activity_test.go b/internal/apis/poll_import_task_status_activity_test.go index 10cb66b..1f430f5 100644 --- a/internal/apis/poll_import_task_status_activity_test.go +++ b/internal/apis/poll_import_task_status_activity_test.go @@ -49,7 +49,7 @@ func TestPollImportTaskStatusActivity(t *testing.T) { ).Return( &apisgen.ImportTaskStatusResponse{ Status: apisgen.ImportTaskStatusAnalysiert, - AnalysisResult: apisgen.NewOptAnalysisResult(apisgen.AnalysisResultAlleNeu), + AnalysisResult: apisgen.NewOptNilAnalysisResult(apisgen.AnalysisResultAlleNeu), }, nil, ) @@ -66,7 +66,7 @@ func TestPollImportTaskStatusActivity(t *testing.T) { ).Return( &apisgen.ImportTaskStatusResponse{ Status: apisgen.ImportTaskStatusAnalysiert, - AnalysisResult: apisgen.NewOptAnalysisResult(apisgen.AnalysisResultKonflikte), + AnalysisResult: apisgen.NewOptNilAnalysisResult(apisgen.AnalysisResultKonflikte), }, nil, ) @@ -83,7 +83,7 @@ func TestPollImportTaskStatusActivity(t *testing.T) { ).Return( &apisgen.ImportTaskStatusResponse{ Status: apisgen.ImportTaskStatusAnalysiert, - AnalysisResult: apisgen.NewOptAnalysisResult(apisgen.AnalysisResultFehler), + AnalysisResult: apisgen.NewOptNilAnalysisResult(apisgen.AnalysisResultFehler), }, nil, )