2022-07-19 14:48:28 +00:00
// 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"
"strconv"
"github.com/go-openapi/errors"
"github.com/go-openapi/strfmt"
"github.com/go-openapi/swag"
)
2022-07-20 15:16:30 +00:00
// ContainerPutInfo Request body to create container. To specify container name use appropriate property (name provided in attributes will be ignored).
2022-07-19 14:48:28 +00:00
// Example: {"attributes":[{"key":"Custom-Attribute","value":"value"}],"basicAcl":"public-read-write","containerName":"container","placementPolicy":"REP 3"}
//
// swagger:model ContainerPutInfo
type ContainerPutInfo struct {
// attributes
Attributes [ ] * Attribute ` json:"attributes" `
// basic Acl
BasicACL string ` json:"basicAcl,omitempty" `
// container name
ContainerName string ` json:"containerName,omitempty" `
// placement policy
PlacementPolicy string ` json:"placementPolicy,omitempty" `
}
// Validate validates this container put info
func ( m * ContainerPutInfo ) Validate ( formats strfmt . Registry ) error {
var res [ ] error
if err := m . validateAttributes ( formats ) ; err != nil {
res = append ( res , err )
}
if len ( res ) > 0 {
return errors . CompositeValidationError ( res ... )
}
return nil
}
func ( m * ContainerPutInfo ) validateAttributes ( formats strfmt . Registry ) error {
if swag . IsZero ( m . Attributes ) { // not required
return nil
}
for i := 0 ; i < len ( m . Attributes ) ; i ++ {
if swag . IsZero ( m . Attributes [ i ] ) { // not required
continue
}
if m . Attributes [ i ] != nil {
if err := m . Attributes [ i ] . Validate ( formats ) ; err != nil {
if ve , ok := err . ( * errors . Validation ) ; ok {
return ve . ValidateName ( "attributes" + "." + strconv . Itoa ( i ) )
} else if ce , ok := err . ( * errors . CompositeError ) ; ok {
return ce . ValidateName ( "attributes" + "." + strconv . Itoa ( i ) )
}
return err
}
}
}
return nil
}
// ContextValidate validate this container put info based on the context it is used
func ( m * ContainerPutInfo ) ContextValidate ( ctx context . Context , formats strfmt . Registry ) error {
var res [ ] error
if err := m . contextValidateAttributes ( ctx , formats ) ; err != nil {
res = append ( res , err )
}
if len ( res ) > 0 {
return errors . CompositeValidationError ( res ... )
}
return nil
}
func ( m * ContainerPutInfo ) contextValidateAttributes ( ctx context . Context , formats strfmt . Registry ) error {
for i := 0 ; i < len ( m . Attributes ) ; i ++ {
if m . Attributes [ i ] != nil {
if err := m . Attributes [ i ] . ContextValidate ( ctx , formats ) ; err != nil {
if ve , ok := err . ( * errors . Validation ) ; ok {
return ve . ValidateName ( "attributes" + "." + strconv . Itoa ( i ) )
} else if ce , ok := err . ( * errors . CompositeError ) ; ok {
return ce . ValidateName ( "attributes" + "." + strconv . Itoa ( i ) )
}
return err
}
}
}
return nil
}
// MarshalBinary interface implementation
func ( m * ContainerPutInfo ) MarshalBinary ( ) ( [ ] byte , error ) {
if m == nil {
return nil , nil
}
return swag . WriteJSON ( m )
}
// UnmarshalBinary interface implementation
func ( m * ContainerPutInfo ) UnmarshalBinary ( b [ ] byte ) error {
var res ContainerPutInfo
if err := swag . ReadJSON ( b , & res ) ; err != nil {
return err
}
* m = res
return nil
}