// Code generated by go-swagger; DO NOT EDIT. {{ if .Copyright -}}// {{ comment .Copyright -}}{{ end }} package {{ .Package }} // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command import ( "net/http" "github.com/go-openapi/runtime" httptransport "github.com/go-openapi/runtime/client" "github.com/go-openapi/swag" "github.com/go-openapi/spec" "github.com/go-openapi/errors" "github.com/go-openapi/runtime" strfmt "github.com/go-openapi/strfmt" {{ range .DefaultImports }}{{ printf "%q" .}} {{ end }} {{ range $key, $value := .Imports }}{{ $key }} {{ printf "%q" $value }} {{ end }} ) // Default {{ humanize .Name }} HTTP client. var Default = NewHTTPClient(nil) const ( // DefaultHost is the default Host // found in Meta (info) section of spec file DefaultHost string = {{ printf "%#v" .Host }} // DefaultBasePath is the default BasePath // found in Meta (info) section of spec file DefaultBasePath string = {{ printf "%#v" .BasePath }} ) // DefaultSchemes are the default schemes found in Meta (info) section of spec file var DefaultSchemes = {{ printf "%#v" .Schemes }} // NewHTTPClient creates a new {{ humanize .Name }} HTTP client. func NewHTTPClient(formats strfmt.Registry) *{{ pascalize .Name }} { return NewHTTPClientWithConfig(formats, nil) } // NewHTTPClientWithConfig creates a new {{ humanize .Name }} HTTP client, // using a customizable transport config. func NewHTTPClientWithConfig(formats strfmt.Registry, cfg *TransportConfig) *{{ pascalize .Name }} { // ensure nullable parameters have default if cfg == nil { cfg = DefaultTransportConfig() } // create transport and client transport := httptransport.New(cfg.Host, cfg.BasePath, cfg.Schemes) return New(transport, formats) } // New creates a new {{ humanize .Name }} client func New(transport runtime.ClientTransport, formats strfmt.Registry) *{{ pascalize .Name }} { // ensure nullable parameters have default if formats == nil { formats = strfmt.Default } cli := new({{ pascalize .Name }}) cli.Transport = transport {{ range .OperationGroups }} cli.{{ pascalize .Name }} = {{ .Name }}.New(transport, formats) {{ end }} return cli } // DefaultTransportConfig creates a TransportConfig with the // default settings taken from the meta section of the spec file. func DefaultTransportConfig() *TransportConfig { return &TransportConfig { Host: DefaultHost, BasePath: DefaultBasePath, Schemes: DefaultSchemes, } } // TransportConfig contains the transport related info, // found in the meta section of the spec file. type TransportConfig struct { Host string BasePath string Schemes []string } // WithHost overrides the default host, // provided by the meta section of the spec file. func (cfg *TransportConfig) WithHost(host string) *TransportConfig { cfg.Host = host return cfg } // WithBasePath overrides the default basePath, // provided by the meta section of the spec file. func (cfg *TransportConfig) WithBasePath(basePath string) *TransportConfig { cfg.BasePath = basePath return cfg } // WithSchemes overrides the default schemes, // provided by the meta section of the spec file. func (cfg *TransportConfig) WithSchemes(schemes []string) *TransportConfig { cfg.Schemes = schemes return cfg } // {{ pascalize .Name }} is a client for {{ humanize .Name }} type {{ pascalize .Name }} struct { {{ range .OperationGroups }} {{ pascalize .Name }} {{ .Name }}.ClientIface {{ end }} Transport runtime.ClientTransport } // SetTransport changes the transport on the client and all its subresources func (c *{{pascalize .Name}}) SetTransport(transport runtime.ClientTransport) { c.Transport = transport {{ range .OperationGroups }} c.{{ pascalize .Name }} = operations.NewClient(transport, nil) {{ end }} }