// Code generated by go-swagger; DO NOT EDIT.

package types

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	strfmt "github.com/go-openapi/strfmt"
	"github.com/go-openapi/swag"
)

// ContainerLogsOptions The parameters to filter the log.
// swagger:model ContainerLogsOptions
type ContainerLogsOptions struct {

	// Show extra details provided to logs
	Details bool `json:"Details,omitempty"`

	// Return logs as a stream
	Follow bool `json:"Follow,omitempty"`

	// Return logs from `stderr`
	ShowStderr bool `json:"ShowStderr,omitempty"`

	// Return logs from `stdout`
	ShowStdout bool `json:"ShowStdout,omitempty"`

	// Only return logs after this time, as a UNIX timestamp
	Since string `json:"Since,omitempty"`

	// Only reture this number of log lines from the end of the logs. Specify as an integer or `all` to output all log lines.
	Tail string `json:"Tail,omitempty"`

	// Add timestamps to every log line
	Timestamps bool `json:"Timestamps,omitempty"`

	// Only reture logs before this time, as a UNIX timestamp
	Until string `json:"Until,omitempty"`
}

// Validate validates this container logs options
func (m *ContainerLogsOptions) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *ContainerLogsOptions) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *ContainerLogsOptions) UnmarshalBinary(b []byte) error {
	var res ContainerLogsOptions
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}
