mirror of
https://github.com/ngrok/ngrok-api-go.git
synced 2026-05-17 16:50:37 +00:00
99 lines
1.9 KiB
Go
99 lines
1.9 KiB
Go
// Code generated by apic. DO NOT EDIT.
|
|
|
|
package oauth
|
|
|
|
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,
|
|
arg *ngrok.EndpointOAuthReplace,
|
|
) (*ngrok.EndpointOAuth, error) {
|
|
if arg == nil {
|
|
arg = new(ngrok.EndpointOAuthReplace)
|
|
}
|
|
var res ngrok.EndpointOAuth
|
|
var path bytes.Buffer
|
|
if err := template.Must(template.New("replace_path").Parse("/endpoint_configurations/{{ .ID }}/oauth")).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.EndpointOAuth, error) {
|
|
arg := &ngrok.Item{ID: id}
|
|
|
|
var res ngrok.EndpointOAuth
|
|
var path bytes.Buffer
|
|
if err := template.Must(template.New("get_path").Parse("/endpoint_configurations/{{ .ID }}/oauth")).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 }}/oauth")).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
|
|
}
|