gtslib/client/notifications/notifications_parameters.go
decentral1se e4ade9c758
All checks were successful
continuous-integration/drone/push Build is passing
feat: init
2024-07-31 22:47:18 +02:00

370 lines
8.9 KiB
Go

// Code generated by go-swagger; DO NOT EDIT.
package notifications
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
import (
"context"
"net/http"
"time"
"github.com/go-openapi/errors"
"github.com/go-openapi/runtime"
cr "github.com/go-openapi/runtime/client"
"github.com/go-openapi/strfmt"
"github.com/go-openapi/swag"
)
// NewNotificationsParams creates a new NotificationsParams 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 NewNotificationsParams() *NotificationsParams {
return &NotificationsParams{
timeout: cr.DefaultTimeout,
}
}
// NewNotificationsParamsWithTimeout creates a new NotificationsParams object
// with the ability to set a timeout on a request.
func NewNotificationsParamsWithTimeout(timeout time.Duration) *NotificationsParams {
return &NotificationsParams{
timeout: timeout,
}
}
// NewNotificationsParamsWithContext creates a new NotificationsParams object
// with the ability to set a context for a request.
func NewNotificationsParamsWithContext(ctx context.Context) *NotificationsParams {
return &NotificationsParams{
Context: ctx,
}
}
// NewNotificationsParamsWithHTTPClient creates a new NotificationsParams object
// with the ability to set a custom HTTPClient for a request.
func NewNotificationsParamsWithHTTPClient(client *http.Client) *NotificationsParams {
return &NotificationsParams{
HTTPClient: client,
}
}
/*
NotificationsParams contains all the parameters to send to the API endpoint
for the notifications operation.
Typically these are written to a http.Request.
*/
type NotificationsParams struct {
/* ExcludeTypes.
Types of notifications to exclude.
*/
ExcludeTypes []string
/* Limit.
Number of notifications to return.
Default: 20
*/
Limit *int64
/* MaxID.
Return only notifications *OLDER* than the given max notification ID. The notification with the specified ID will not be included in the response.
*/
MaxID *string
/* MinID.
Return only notifications *immediately newer* than the given since notification ID. The notification with the specified ID will not be included in the response.
*/
MinID *string
/* SinceID.
Return only notifications *newer* than the given since notification ID. The notification with the specified ID will not be included in the response.
*/
SinceID *string
/* Types.
Types of notifications to include. If not provided, all notification types will be included.
*/
Types []string
timeout time.Duration
Context context.Context
HTTPClient *http.Client
}
// WithDefaults hydrates default values in the notifications params (not the query body).
//
// All values with no default are reset to their zero value.
func (o *NotificationsParams) WithDefaults() *NotificationsParams {
o.SetDefaults()
return o
}
// SetDefaults hydrates default values in the notifications params (not the query body).
//
// All values with no default are reset to their zero value.
func (o *NotificationsParams) SetDefaults() {
var (
limitDefault = int64(20)
)
val := NotificationsParams{
Limit: &limitDefault,
}
val.timeout = o.timeout
val.Context = o.Context
val.HTTPClient = o.HTTPClient
*o = val
}
// WithTimeout adds the timeout to the notifications params
func (o *NotificationsParams) WithTimeout(timeout time.Duration) *NotificationsParams {
o.SetTimeout(timeout)
return o
}
// SetTimeout adds the timeout to the notifications params
func (o *NotificationsParams) SetTimeout(timeout time.Duration) {
o.timeout = timeout
}
// WithContext adds the context to the notifications params
func (o *NotificationsParams) WithContext(ctx context.Context) *NotificationsParams {
o.SetContext(ctx)
return o
}
// SetContext adds the context to the notifications params
func (o *NotificationsParams) SetContext(ctx context.Context) {
o.Context = ctx
}
// WithHTTPClient adds the HTTPClient to the notifications params
func (o *NotificationsParams) WithHTTPClient(client *http.Client) *NotificationsParams {
o.SetHTTPClient(client)
return o
}
// SetHTTPClient adds the HTTPClient to the notifications params
func (o *NotificationsParams) SetHTTPClient(client *http.Client) {
o.HTTPClient = client
}
// WithExcludeTypes adds the excludeTypes to the notifications params
func (o *NotificationsParams) WithExcludeTypes(excludeTypes []string) *NotificationsParams {
o.SetExcludeTypes(excludeTypes)
return o
}
// SetExcludeTypes adds the excludeTypes to the notifications params
func (o *NotificationsParams) SetExcludeTypes(excludeTypes []string) {
o.ExcludeTypes = excludeTypes
}
// WithLimit adds the limit to the notifications params
func (o *NotificationsParams) WithLimit(limit *int64) *NotificationsParams {
o.SetLimit(limit)
return o
}
// SetLimit adds the limit to the notifications params
func (o *NotificationsParams) SetLimit(limit *int64) {
o.Limit = limit
}
// WithMaxID adds the maxID to the notifications params
func (o *NotificationsParams) WithMaxID(maxID *string) *NotificationsParams {
o.SetMaxID(maxID)
return o
}
// SetMaxID adds the maxId to the notifications params
func (o *NotificationsParams) SetMaxID(maxID *string) {
o.MaxID = maxID
}
// WithMinID adds the minID to the notifications params
func (o *NotificationsParams) WithMinID(minID *string) *NotificationsParams {
o.SetMinID(minID)
return o
}
// SetMinID adds the minId to the notifications params
func (o *NotificationsParams) SetMinID(minID *string) {
o.MinID = minID
}
// WithSinceID adds the sinceID to the notifications params
func (o *NotificationsParams) WithSinceID(sinceID *string) *NotificationsParams {
o.SetSinceID(sinceID)
return o
}
// SetSinceID adds the sinceId to the notifications params
func (o *NotificationsParams) SetSinceID(sinceID *string) {
o.SinceID = sinceID
}
// WithTypes adds the types to the notifications params
func (o *NotificationsParams) WithTypes(types []string) *NotificationsParams {
o.SetTypes(types)
return o
}
// SetTypes adds the types to the notifications params
func (o *NotificationsParams) SetTypes(types []string) {
o.Types = types
}
// WriteToRequest writes these params to a swagger request
func (o *NotificationsParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
if err := r.SetTimeout(o.timeout); err != nil {
return err
}
var res []error
if o.ExcludeTypes != nil {
// binding items for exclude_types[]
joinedExcludeTypes := o.bindParamExcludeTypes(reg)
// query array param exclude_types[]
if err := r.SetQueryParam("exclude_types[]", joinedExcludeTypes...); err != nil {
return err
}
}
if o.Limit != nil {
// query param limit
var qrLimit int64
if o.Limit != nil {
qrLimit = *o.Limit
}
qLimit := swag.FormatInt64(qrLimit)
if qLimit != "" {
if err := r.SetQueryParam("limit", qLimit); err != nil {
return err
}
}
}
if o.MaxID != nil {
// query param max_id
var qrMaxID string
if o.MaxID != nil {
qrMaxID = *o.MaxID
}
qMaxID := qrMaxID
if qMaxID != "" {
if err := r.SetQueryParam("max_id", qMaxID); err != nil {
return err
}
}
}
if o.MinID != nil {
// query param min_id
var qrMinID string
if o.MinID != nil {
qrMinID = *o.MinID
}
qMinID := qrMinID
if qMinID != "" {
if err := r.SetQueryParam("min_id", qMinID); err != nil {
return err
}
}
}
if o.SinceID != nil {
// query param since_id
var qrSinceID string
if o.SinceID != nil {
qrSinceID = *o.SinceID
}
qSinceID := qrSinceID
if qSinceID != "" {
if err := r.SetQueryParam("since_id", qSinceID); err != nil {
return err
}
}
}
if o.Types != nil {
// binding items for types[]
joinedTypes := o.bindParamTypes(reg)
// query array param types[]
if err := r.SetQueryParam("types[]", joinedTypes...); err != nil {
return err
}
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}
// bindParamNotifications binds the parameter exclude_types[]
func (o *NotificationsParams) bindParamExcludeTypes(formats strfmt.Registry) []string {
excludeTypesIR := o.ExcludeTypes
var excludeTypesIC []string
for _, excludeTypesIIR := range excludeTypesIR { // explode []string
excludeTypesIIV := excludeTypesIIR // string as string
excludeTypesIC = append(excludeTypesIC, excludeTypesIIV)
}
// items.CollectionFormat: ""
excludeTypesIS := swag.JoinByFormat(excludeTypesIC, "")
return excludeTypesIS
}
// bindParamNotifications binds the parameter types[]
func (o *NotificationsParams) bindParamTypes(formats strfmt.Registry) []string {
typesIR := o.Types
var typesIC []string
for _, typesIIR := range typesIR { // explode []string
typesIIV := typesIIR // string as string
typesIC = append(typesIC, typesIIV)
}
// items.CollectionFormat: ""
typesIS := swag.JoinByFormat(typesIC, "")
return typesIS
}