// Code generated by go-swagger; DO NOT EDIT. // (c) 2012-2020 by Taxnexus, Inc. // All rights reserved worldwide. // Proprietary product; unlicensed use is not allowed package topics import ( "context" "net/http" "time" "code.tnxs.net/vernonkeenan/lib/api/research/research_models" "github.com/go-openapi/errors" "github.com/go-openapi/runtime" cr "github.com/go-openapi/runtime/client" "github.com/go-openapi/strfmt" ) // NewPostTopicsParams creates a new PostTopicsParams object, // with the default timeout for this client. // // Default values are not hydrated, since defaults are normally applied by the API server side. // // To enforce default values in parameter, use SetDefaults or WithDefaults. func NewPostTopicsParams() *PostTopicsParams { return NewPostTopicsParamsWithTimeout(cr.DefaultTimeout) } // NewPostTopicsParamsWithTimeout creates a new PostTopicsParams object // with the ability to set a timeout on a request. func NewPostTopicsParamsWithTimeout(timeout time.Duration) *PostTopicsParams { return &PostTopicsParams{ inner: innerParams{ timeout: timeout, }, } } // NewPostTopicsParamsWithContext creates a new PostTopicsParams object // with the ability to set a context for a request. // // Deprecated: use the operation call with context to pass the context instead of [PostTopicsParams]. func NewPostTopicsParamsWithContext(ctx context.Context) *PostTopicsParams { return &PostTopicsParams{ inner: innerParams{ ctx: ctx, }, } } // NewPostTopicsParamsWithHTTPClient creates a new PostTopicsParams object // with the ability to set a custom HTTPClient for a request. func NewPostTopicsParamsWithHTTPClient(client *http.Client) *PostTopicsParams { return &PostTopicsParams{ HTTPClient: client, } } /* PostTopicsParams contains all the parameters to send to the API endpoint for the post topics operation. Typically these are written to a http.Request. */ type PostTopicsParams struct { // TopicRequest. // // An array of new Topic records TopicRequest *research_models.TopicRequest HTTPClient *http.Client inner innerParams } // WithDefaults hydrates default values in the post topics params (not the query body). // // All values with no default are reset to their zero value. func (o *PostTopicsParams) WithDefaults() *PostTopicsParams { o.SetDefaults() return o } // SetDefaults hydrates default values in the post topics params (not the query body). // // All values with no default are reset to their zero value. func (o *PostTopicsParams) SetDefaults() { // no default values defined for this parameter } // WithTimeout adds the timeout to the post topics params. func (o *PostTopicsParams) WithTimeout(timeout time.Duration) *PostTopicsParams { o.SetTimeout(timeout) return o } // SetTimeout adds the timeout to the post topics params. func (o *PostTopicsParams) SetTimeout(timeout time.Duration) { o.inner.timeout = timeout } // WithContext adds the context to the post topics params. // // Deprecated: use the operation call with context to pass the context instead of [PostTopicsParams]. func (o *PostTopicsParams) WithContext(ctx context.Context) *PostTopicsParams { o.SetContext(ctx) return o } // SetContext adds the context to the post topics params. // // Deprecated: use the operation call with context to pass the context instead of [PostTopicsParams]. func (o *PostTopicsParams) SetContext(ctx context.Context) { o.inner.ctx = ctx } // WithHTTPClient adds the HTTPClient to the post topics params. func (o *PostTopicsParams) WithHTTPClient(client *http.Client) *PostTopicsParams { o.SetHTTPClient(client) return o } // SetHTTPClient adds the HTTPClient to the post topics params. func (o *PostTopicsParams) SetHTTPClient(client *http.Client) { o.HTTPClient = client } // WithTopicRequest adds the topicRequest to the post topics params. func (o *PostTopicsParams) WithTopicRequest(topicRequest *research_models.TopicRequest) *PostTopicsParams { o.SetTopicRequest(topicRequest) return o } // SetTopicRequest adds the topicRequest to the post topics params. func (o *PostTopicsParams) SetTopicRequest(topicRequest *research_models.TopicRequest) { o.TopicRequest = topicRequest } // WriteToRequest writes these params to a [runtime.ClientRequest]. func (o *PostTopicsParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { if err := r.SetTimeout(o.inner.timeout); err != nil { return err } var res []error if o.TopicRequest != nil { if err := r.SetBodyParam(o.TopicRequest); err != nil { return err } } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil }