2022-02-06 22:33:02 +03:00
|
|
|
package geezer
|
|
|
|
|
|
|
|
import (
|
2022-02-08 02:14:57 +03:00
|
|
|
"context"
|
2022-02-06 22:33:02 +03:00
|
|
|
"encoding/json"
|
|
|
|
|
|
|
|
"github.com/neonxp/geezer/render"
|
|
|
|
)
|
|
|
|
|
|
|
|
type Service interface {
|
2022-02-08 02:14:57 +03:00
|
|
|
Find(ctx context.Context, params Params) (render.Renderer, error)
|
|
|
|
Get(ctx context.Context, id string, params Params) (render.Renderer, error)
|
|
|
|
Create(ctx context.Context, data Data, params Params) (render.Renderer, error)
|
|
|
|
Update(ctx context.Context, id string, data Data, params Params) (render.Renderer, error)
|
|
|
|
Patch(ctx context.Context, id string, data Data, params Params) (render.Renderer, error)
|
|
|
|
Remove(ctx context.Context, id string, params Params) error
|
|
|
|
Setup(app AppKernel, path string) error
|
2022-02-06 22:33:02 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
type Method int
|
|
|
|
|
|
|
|
const (
|
|
|
|
MethodFind Method = iota
|
|
|
|
MethodGet
|
|
|
|
MethodCreate
|
|
|
|
MethodUpdate
|
|
|
|
MethodPatch
|
|
|
|
MethodRemove
|
|
|
|
)
|
|
|
|
|
|
|
|
type Data json.RawMessage
|