mirror of
https://github.com/foomo/gotsrpc.git
synced 2026-04-28 16:44:26 +00:00
72 lines
1.7 KiB
Go
72 lines
1.7 KiB
Go
package server
|
|
|
|
import (
|
|
"errors"
|
|
"net/http"
|
|
|
|
pkgerrors "github.com/pkg/errors"
|
|
)
|
|
|
|
type Handler struct{}
|
|
|
|
func New() *Handler {
|
|
return &Handler{}
|
|
}
|
|
|
|
func (h *Handler) Error(w http.ResponseWriter, r *http.Request) (e error) {
|
|
return errors.New("error")
|
|
}
|
|
|
|
func (h *Handler) Errors(w http.ResponseWriter, r *http.Request) (e1 error, e2 error) {
|
|
return errors.New("error1"), errors.New("error2")
|
|
}
|
|
|
|
func (h *Handler) Scalar(w http.ResponseWriter, r *http.Request) (e *ScalarError) {
|
|
return new(ScalarOne)
|
|
}
|
|
|
|
func (h *Handler) MultiScalar(w http.ResponseWriter, r *http.Request) (e *MultiScalar) {
|
|
return &MultiScalar{
|
|
ScalarA: ScalarAOne,
|
|
}
|
|
}
|
|
|
|
func (h *Handler) Struct(w http.ResponseWriter, r *http.Request) (e *StructError) {
|
|
return &StructError{
|
|
Message: "my custom scalar",
|
|
Data: "hello world",
|
|
}
|
|
}
|
|
|
|
func (h *Handler) TypedError(w http.ResponseWriter, r *http.Request) (e error) {
|
|
return ErrTyped
|
|
}
|
|
|
|
func (h *Handler) StructError(w http.ResponseWriter, r *http.Request) (e error) {
|
|
return NewMyStructError("struct error")
|
|
}
|
|
|
|
func (h *Handler) ScalarError(w http.ResponseWriter, r *http.Request) (e error) {
|
|
return new(MyScalarErrorOne)
|
|
}
|
|
|
|
func (h *Handler) CustomError(w http.ResponseWriter, r *http.Request) (e error) {
|
|
return NewMyCustomError("custom error")
|
|
}
|
|
|
|
func (h *Handler) WrappedError(w http.ResponseWriter, r *http.Request) (e error) {
|
|
return pkgerrors.Wrap(errors.New("error"), "wrapped")
|
|
}
|
|
|
|
func (h *Handler) TypedWrappedError(w http.ResponseWriter, r *http.Request) (e error) {
|
|
return pkgerrors.Wrap(ErrTyped, "wrapped")
|
|
}
|
|
|
|
func (h *Handler) TypedScalarError(w http.ResponseWriter, r *http.Request) (e error) {
|
|
return ErrScalarTwo
|
|
}
|
|
|
|
func (h *Handler) TypedCustomError(w http.ResponseWriter, r *http.Request) (e error) {
|
|
return ErrCustom
|
|
}
|