// 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 ( "context" "github.com/go-openapi/errors" "github.com/go-openapi/strfmt" "github.com/go-openapi/swag" ) // RemediationComponentsMetrics RemediationComponentsMetrics // // swagger:model RemediationComponentsMetrics type RemediationComponentsMetrics struct { BaseMetrics // last pull date LastPull int64 `json:"last_pull,omitempty"` // name of the remediation component Name string `json:"name,omitempty"` // type of the remediation component Type string `json:"type,omitempty"` } // UnmarshalJSON unmarshals this object from a JSON structure func (m *RemediationComponentsMetrics) UnmarshalJSON(raw []byte) error { // AO0 var aO0 BaseMetrics if err := swag.ReadJSON(raw, &aO0); err != nil { return err } m.BaseMetrics = aO0 // AO1 var dataAO1 struct { LastPull int64 `json:"last_pull,omitempty"` Name string `json:"name,omitempty"` Type string `json:"type,omitempty"` } if err := swag.ReadJSON(raw, &dataAO1); err != nil { return err } m.LastPull = dataAO1.LastPull m.Name = dataAO1.Name m.Type = dataAO1.Type return nil } // MarshalJSON marshals this object to a JSON structure func (m RemediationComponentsMetrics) MarshalJSON() ([]byte, error) { _parts := make([][]byte, 0, 2) aO0, err := swag.WriteJSON(m.BaseMetrics) if err != nil { return nil, err } _parts = append(_parts, aO0) var dataAO1 struct { LastPull int64 `json:"last_pull,omitempty"` Name string `json:"name,omitempty"` Type string `json:"type,omitempty"` } dataAO1.LastPull = m.LastPull dataAO1.Name = m.Name dataAO1.Type = m.Type jsonDataAO1, errAO1 := swag.WriteJSON(dataAO1) if errAO1 != nil { return nil, errAO1 } _parts = append(_parts, jsonDataAO1) return swag.ConcatJSON(_parts...), nil } // Validate validates this remediation components metrics func (m *RemediationComponentsMetrics) Validate(formats strfmt.Registry) error { var res []error // validation for a type composition with BaseMetrics if err := m.BaseMetrics.Validate(formats); err != nil { res = append(res, err) } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil } // ContextValidate validate this remediation components metrics based on the context it is used func (m *RemediationComponentsMetrics) ContextValidate(ctx context.Context, formats strfmt.Registry) error { var res []error // validation for a type composition with BaseMetrics if err := m.BaseMetrics.ContextValidate(ctx, formats); err != nil { res = append(res, err) } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil } // MarshalBinary interface implementation func (m *RemediationComponentsMetrics) MarshalBinary() ([]byte, error) { if m == nil { return nil, nil } return swag.WriteJSON(m) } // UnmarshalBinary interface implementation func (m *RemediationComponentsMetrics) UnmarshalBinary(b []byte) error { var res RemediationComponentsMetrics if err := swag.ReadJSON(b, &res); err != nil { return err } *m = res return nil }