Files
ngrok-api-go/endpoint_basic_auth_module/client.go
T
ngrok-release-bot 7d8bf2fec5 cut new release
2021-05-14 22:17:22 +00:00

93 lines
2.0 KiB
Go

// Code generated by apic. DO NOT EDIT.
package endpoint_basic_auth_module
import (
"bytes"
"context"
"net/url"
"text/template"
"github.com/ngrok/ngrok-api-go"
)
type Client struct {
apiClient *ngrok.Client
}
func NewClient(apiClient *ngrok.Client) *Client {
return &Client{apiClient: apiClient}
}
func (c *Client) Replace(
ctx context.Context,
id string,
) (*ngrok.EndpointBasicAuth, error) {
arg := &ngrok.EndpointBasicAuthReplace{ID: id}
var res ngrok.EndpointBasicAuth
var path bytes.Buffer
if err := template.Must(template.New("replace_path").Parse("/endpoint_configurations/{{ .ID }}/basic_auth")).Execute(&path, arg); err != nil {
panic(err)
}
arg.ID = ""
var (
apiURL = &url.URL{Path: path.String()}
bodyArg interface{}
)
apiURL.Path = path.String()
bodyArg = arg.Module
if err := c.apiClient.Do(ctx, "PUT", apiURL, bodyArg, &res); err != nil {
return nil, err
}
return &res, nil
}
func (c *Client) Get(
ctx context.Context,
id string,
) (*ngrok.EndpointBasicAuth, error) {
arg := &ngrok.Item{ID: id}
var res ngrok.EndpointBasicAuth
var path bytes.Buffer
if err := template.Must(template.New("get_path").Parse("/endpoint_configurations/{{ .ID }}/basic_auth")).Execute(&path, arg); err != nil {
panic(err)
}
arg.ID = ""
var (
apiURL = &url.URL{Path: path.String()}
bodyArg interface{}
)
apiURL.Path = path.String()
if err := c.apiClient.Do(ctx, "GET", apiURL, bodyArg, &res); err != nil {
return nil, err
}
return &res, nil
}
func (c *Client) Delete(
ctx context.Context,
id string,
) error {
arg := &ngrok.Item{ID: id}
var path bytes.Buffer
if err := template.Must(template.New("delete_path").Parse("/endpoint_configurations/{{ .ID }}/basic_auth")).Execute(&path, arg); err != nil {
panic(err)
}
arg.ID = ""
var (
apiURL = &url.URL{Path: path.String()}
bodyArg interface{}
)
apiURL.Path = path.String()
if err := c.apiClient.Do(ctx, "DELETE", apiURL, bodyArg, nil); err != nil {
return err
}
return nil
}