Help us shape the future of Go! Take the 2026 Go Developer Survey

util

package
v0.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 18, 2021 License: GPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrNotFound indicates an invalid API endpoint was provided
	ErrNotFound = errors.New("API endpoint not found")
	// ErrMethodNotAllowed indicates the user tried to use an API with an invalid request method
	ErrMethodNotAllowed = errors.New("method not allowed on API endpoint")
	// ErrTokenRequired indicates the user didn't pass an IAM token in the request
	ErrTokenRequired = errors.New("token required for this endpoint")
	// ErrAdminRequired indicates that an admin user is required
	ErrAdminRequired = errors.New("only admin users can make use of this endpoint")

	// ErrGenericNotFound indicates that a resource was not found
	ErrGenericNotFound = errors.New("not found")
	// ErrExists indicates that a resource already exists
	ErrExists = errors.New("already exists")
	// ErrUsed indicates that the requested resource is already in use by a webspace
	ErrUsed = errors.New("used by a webspace")
	// ErrNotRunning indicates that a webspace is not running
	ErrNotRunning = errors.New("not running")
	// ErrRunning indicates that a webspace is already running
	ErrRunning = errors.New("already running")
	// ErrDomainUnverified indicates that the request domain could not be verified
	ErrDomainUnverified = errors.New("verification failed")
	// ErrDefaultDomain indicates an attempt to remove the default domain
	ErrDefaultDomain = errors.New("cannot remove the default domain")
	// ErrTooManyPorts indicates that too many port forwards are configured
	ErrTooManyPorts = errors.New("port forward limit reached")
	// ErrBadPort indicates that the provided port is invalid
	ErrBadPort = errors.New("invalid port")
	// ErrInterface indicates the default interface is missing
	ErrInterface = errors.New("default network interface not present")
	// ErrAddress indicates the interface didn't have an IPv4 address
	ErrAddress = errors.New("IPv4 address not found")
	// ErrBadValue indicates an invalid value for a config option
	ErrBadValue = errors.New("invalid value for configuration option")
	// ErrUIDMismatch indicates the user ID didn't match that of the User object
	ErrUIDMismatch = errors.New("user id doesn't match provided value")
	// ErrTraefikProvider indicates an invalid Traefik config provider name was given
	ErrTraefikProvider = errors.New("invalid Traefik provider")
	// ErrWebsocket indicates the endpoint supports websocket communication only
	ErrWebsocket = errors.New("this endpoint supports websocket communication only")
	// ErrSSHKey indicates the user requested SSH be set up, but their account does not provide a key
	ErrSSHKey = errors.New("user has no SSH public key")
)

Functions

func ErrToStatus

func ErrToStatus(err error) int

ErrToStatus converts an error to a HTTP status code

func IsSHA256

func IsSHA256(s string) bool

IsSHA256 determines if a string represents an SHA256 hash

func JSONErrResponse

func JSONErrResponse(w http.ResponseWriter, err error, statusCode int)

JSONErrResponse Sends an `error` as a JSON object with a `message` property

func JSONResponse

func JSONResponse(w http.ResponseWriter, v interface{}, statusCode int)

JSONResponse Sends a JSON payload in response to a HTTP request

func ParseJSONBody

func ParseJSONBody(v interface{}, w http.ResponseWriter, r *http.Request) error

ParseJSONBody attempts to parse the request body as JSON

func WSCloseError added in v0.2.0

func WSCloseError(conn *websocket.Conn, err error)

WSCloseError closes a websocket with an error message

Types

type WebsocketIO added in v0.2.0

type WebsocketIO struct {
	Conn  *websocket.Conn
	Mutex sync.Mutex
	// contains filtered or unexported fields
}

WebsocketIO is a wrapper implementing ReadWriteCloser on top of websocket

func NewWebsocketIO added in v0.2.0

func NewWebsocketIO(c *websocket.Conn, textHandler func(string, *WebsocketIO)) *WebsocketIO

NewWebsocketIO creates a new websocket ReadWriteCloser wrapper

func (*WebsocketIO) Close added in v0.2.0

func (w *WebsocketIO) Close() error

Close sends a control message indicating the stream is finished, but it does not actually close the socket.

func (*WebsocketIO) Read added in v0.2.0

func (w *WebsocketIO) Read(p []byte) (n int, err error)

func (*WebsocketIO) Write added in v0.2.0

func (w *WebsocketIO) Write(p []byte) (n int, err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL