upd(all): pass context from http request to service bridge
This commit is contained in:
@@ -11,6 +11,6 @@ import (
|
||||
{foreach $calls as $call}
|
||||
func ({self}h *{name}Handlers) {call.name|capitalize}(w http.ResponseWriter, r *http.Request) {
|
||||
params := {name|capitalize}{call.name|capitalize}Request{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return {self}h.{name}.{call.name|capitalize}(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return {self}h.{name}.{call.name|capitalize}(r.Context(), params) })
|
||||
}
|
||||
{/foreach}
|
||||
|
||||
@@ -3,6 +3,7 @@ package {package}
|
||||
{load warning.tpl}
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@@ -14,7 +15,7 @@ type {name}Handlers struct {
|
||||
// Internal API interface
|
||||
type {name}API interface {
|
||||
{foreach $calls as $call}
|
||||
{call.name|capitalize}(*{name|expose}{call.name|capitalize}Request) (interface{}, error)
|
||||
{call.name|capitalize}(context.Context, *{name|expose}{call.name|capitalize}Request) (interface{}, error)
|
||||
{/foreach}
|
||||
|
||||
// Authenticate API requests
|
||||
|
||||
+4
-4
@@ -26,10 +26,10 @@ func (Field) New() *Field {
|
||||
return &Field{service: service.Field()}
|
||||
}
|
||||
|
||||
func (self *Field) List(_ *server.FieldListRequest) (interface{}, error) {
|
||||
return self.service.Find(context.TODO())
|
||||
func (self *Field) List(ctx context.Context,_ *server.FieldListRequest) (interface{}, error) {
|
||||
return self.service.Find(ctx)
|
||||
}
|
||||
|
||||
func (self *Field) Type(r *server.FieldTypeRequest) (interface{}, error) {
|
||||
return self.service.FindByName(context.TODO(), r.ID)
|
||||
func (self *Field) Type(ctx context.Context, r *server.FieldTypeRequest) (interface{}, error) {
|
||||
return self.service.FindByName(ctx, r.ID)
|
||||
}
|
||||
|
||||
+8
-8
@@ -32,29 +32,29 @@ func (Module) New() *Module {
|
||||
}
|
||||
}
|
||||
|
||||
func (c *Module) List(r *server.ModuleListRequest) (interface{}, error) {
|
||||
return c.service.Find(context.TODO())
|
||||
func (c *Module) List(ctx context.Context, r *server.ModuleListRequest) (interface{}, error) {
|
||||
return c.service.Find(ctx)
|
||||
}
|
||||
|
||||
func (c *Module) Edit(r *server.ModuleEditRequest) (interface{}, error) {
|
||||
func (c *Module) Edit(ctx context.Context, r *server.ModuleEditRequest) (interface{}, error) {
|
||||
m := types.Module{}.New()
|
||||
m.SetID(r.ID).SetName(r.Name)
|
||||
|
||||
if m.GetID() > 0 {
|
||||
return c.service.Update(context.TODO(), m)
|
||||
return c.service.Update(ctx, m)
|
||||
}
|
||||
|
||||
return c.service.Create(context.TODO(), m)
|
||||
return c.service.Create(ctx, m)
|
||||
}
|
||||
|
||||
func (*Module) ContentList(r *server.ModuleContentListRequest) (interface{}, error) {
|
||||
func (*Module) ContentList(ctx context.Context, r *server.ModuleContentListRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Module.content/edit")
|
||||
}
|
||||
|
||||
func (*Module) ContentEdit(r *server.ModuleContentEditRequest) (interface{}, error) {
|
||||
func (*Module) ContentEdit(ctx context.Context, r *server.ModuleContentEditRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Module.content/edit")
|
||||
}
|
||||
|
||||
func (*Module) ContentDelete(r *server.ModuleContentDeleteRequest) (interface{}, error) {
|
||||
func (*Module) ContentDelete(ctx context.Context, r *server.ModuleContentDeleteRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Module.content/delete")
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ package server
|
||||
*/
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@@ -26,8 +27,8 @@ type FieldHandlers struct {
|
||||
|
||||
// Internal API interface
|
||||
type FieldAPI interface {
|
||||
List(*FieldListRequest) (interface{}, error)
|
||||
Type(*FieldTypeRequest) (interface{}, error)
|
||||
List(context.Context, *FieldListRequest) (interface{}, error)
|
||||
Type(context.Context, *FieldTypeRequest) (interface{}, error)
|
||||
|
||||
// Authenticate API requests
|
||||
Authenticator() func(http.Handler) http.Handler
|
||||
|
||||
@@ -23,9 +23,9 @@ import (
|
||||
|
||||
func (fh *FieldHandlers) List(w http.ResponseWriter, r *http.Request) {
|
||||
params := FieldListRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return fh.Field.List(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return fh.Field.List(r.Context(), params) })
|
||||
}
|
||||
func (fh *FieldHandlers) Type(w http.ResponseWriter, r *http.Request) {
|
||||
params := FieldTypeRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return fh.Field.Type(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return fh.Field.Type(r.Context(), params) })
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ package server
|
||||
*/
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@@ -26,11 +27,11 @@ type ModuleHandlers struct {
|
||||
|
||||
// Internal API interface
|
||||
type ModuleAPI interface {
|
||||
List(*ModuleListRequest) (interface{}, error)
|
||||
Edit(*ModuleEditRequest) (interface{}, error)
|
||||
ContentList(*ModuleContentListRequest) (interface{}, error)
|
||||
ContentEdit(*ModuleContentEditRequest) (interface{}, error)
|
||||
ContentDelete(*ModuleContentDeleteRequest) (interface{}, error)
|
||||
List(context.Context, *ModuleListRequest) (interface{}, error)
|
||||
Edit(context.Context, *ModuleEditRequest) (interface{}, error)
|
||||
ContentList(context.Context, *ModuleContentListRequest) (interface{}, error)
|
||||
ContentEdit(context.Context, *ModuleContentEditRequest) (interface{}, error)
|
||||
ContentDelete(context.Context, *ModuleContentDeleteRequest) (interface{}, error)
|
||||
|
||||
// Authenticate API requests
|
||||
Authenticator() func(http.Handler) http.Handler
|
||||
|
||||
@@ -23,21 +23,21 @@ import (
|
||||
|
||||
func (mh *ModuleHandlers) List(w http.ResponseWriter, r *http.Request) {
|
||||
params := ModuleListRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.List(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.List(r.Context(), params) })
|
||||
}
|
||||
func (mh *ModuleHandlers) Edit(w http.ResponseWriter, r *http.Request) {
|
||||
params := ModuleEditRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.Edit(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.Edit(r.Context(), params) })
|
||||
}
|
||||
func (mh *ModuleHandlers) ContentList(w http.ResponseWriter, r *http.Request) {
|
||||
params := ModuleContentListRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.ContentList(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.ContentList(r.Context(), params) })
|
||||
}
|
||||
func (mh *ModuleHandlers) ContentEdit(w http.ResponseWriter, r *http.Request) {
|
||||
params := ModuleContentEditRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.ContentEdit(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.ContentEdit(r.Context(), params) })
|
||||
}
|
||||
func (mh *ModuleHandlers) ContentDelete(w http.ResponseWriter, r *http.Request) {
|
||||
params := ModuleContentDeleteRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.ContentDelete(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Module.ContentDelete(r.Context(), params) })
|
||||
}
|
||||
|
||||
+7
-5
@@ -1,6 +1,8 @@
|
||||
package rest
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/davecgh/go-spew/spew"
|
||||
"github.com/pkg/errors"
|
||||
"github.com/titpetric/factory"
|
||||
@@ -22,7 +24,7 @@ func (Channel) New() *Channel {
|
||||
return &Channel{}
|
||||
}
|
||||
|
||||
func (*Channel) Create(r *server.ChannelCreateRequest) (interface{}, error) {
|
||||
func (*Channel) Create(ctx context.Context, r *server.ChannelCreateRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -42,7 +44,7 @@ func (*Channel) Create(r *server.ChannelCreateRequest) (interface{}, error) {
|
||||
return c, db.Insert("channels", c)
|
||||
}
|
||||
|
||||
func (*Channel) Edit(r *server.ChannelEditRequest) (interface{}, error) {
|
||||
func (*Channel) Edit(ctx context.Context, r *server.ChannelEditRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -69,7 +71,7 @@ func (*Channel) Edit(r *server.ChannelEditRequest) (interface{}, error) {
|
||||
|
||||
}
|
||||
|
||||
func (*Channel) Delete(r *server.ChannelDeleteRequest) (interface{}, error) {
|
||||
func (*Channel) Delete(ctx context.Context, r *server.ChannelDeleteRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -92,11 +94,11 @@ func (*Channel) Delete(r *server.ChannelDeleteRequest) (interface{}, error) {
|
||||
}()
|
||||
}
|
||||
|
||||
func (s *Channel) Read(r *server.ChannelReadRequest) (interface{}, error) {
|
||||
func (s *Channel) Read(ctx context.Context, r *server.ChannelReadRequest) (interface{}, error) {
|
||||
return s.load(r.ID)
|
||||
}
|
||||
|
||||
func (*Channel) List(r *server.ChannelListRequest) (interface{}, error) {
|
||||
func (*Channel) List(ctx context.Context, r *server.ChannelListRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
||||
+8
-7
@@ -1,6 +1,7 @@
|
||||
package rest
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/crusttech/crust/sam/rest/server"
|
||||
@@ -15,30 +16,30 @@ func (Message) New() *Message {
|
||||
|
||||
var _ = errors.Wrap
|
||||
|
||||
func (*Message) Edit(r *server.MessageEditRequest) (interface{}, error) {
|
||||
func (*Message) Edit(ctx context.Context, r *server.MessageEditRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Message.edit")
|
||||
}
|
||||
|
||||
func (*Message) Attach(r *server.MessageAttachRequest) (interface{}, error) {
|
||||
func (*Message) Attach(ctx context.Context, r *server.MessageAttachRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Message.attach")
|
||||
}
|
||||
|
||||
func (*Message) Remove(r *server.MessageRemoveRequest) (interface{}, error) {
|
||||
func (*Message) Remove(ctx context.Context, r *server.MessageRemoveRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Message.remove")
|
||||
}
|
||||
|
||||
func (*Message) Read(r *server.MessageReadRequest) (interface{}, error) {
|
||||
func (*Message) Read(ctx context.Context, r *server.MessageReadRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Message.read")
|
||||
}
|
||||
|
||||
func (*Message) Search(r *server.MessageSearchRequest) (interface{}, error) {
|
||||
func (*Message) Search(ctx context.Context, r *server.MessageSearchRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Message.search")
|
||||
}
|
||||
|
||||
func (*Message) Pin(r *server.MessagePinRequest) (interface{}, error) {
|
||||
func (*Message) Pin(ctx context.Context, r *server.MessagePinRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Message.pin")
|
||||
}
|
||||
|
||||
func (*Message) Flag(r *server.MessageFlagRequest) (interface{}, error) {
|
||||
func (*Message) Flag(ctx context.Context, r *server.MessageFlagRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Message.flag")
|
||||
}
|
||||
|
||||
@@ -2,6 +2,8 @@ package rest
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"context"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
"github.com/titpetric/factory"
|
||||
|
||||
@@ -22,7 +24,7 @@ func (Organisation) New() *Organisation {
|
||||
return &Organisation{}
|
||||
}
|
||||
|
||||
func (*Organisation) Create(r *server.OrganisationCreateRequest) (interface{}, error) {
|
||||
func (*Organisation) Create(ctx context.Context, r *server.OrganisationCreateRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -35,7 +37,7 @@ func (*Organisation) Create(r *server.OrganisationCreateRequest) (interface{}, e
|
||||
return o, db.Insert("organisation", o)
|
||||
}
|
||||
|
||||
func (*Organisation) Edit(r *server.OrganisationEditRequest) (interface{}, error) {
|
||||
func (*Organisation) Edit(ctx context.Context, r *server.OrganisationEditRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -48,7 +50,7 @@ func (*Organisation) Edit(r *server.OrganisationEditRequest) (interface{}, error
|
||||
return o, db.Replace("organisation", o)
|
||||
}
|
||||
|
||||
func (*Organisation) Remove(r *server.OrganisationRemoveRequest) (interface{}, error) {
|
||||
func (*Organisation) Remove(ctx context.Context, r *server.OrganisationRemoveRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -65,7 +67,7 @@ func (*Organisation) Remove(r *server.OrganisationRemoveRequest) (interface{}, e
|
||||
}()
|
||||
}
|
||||
|
||||
func (*Organisation) Read(r *server.OrganisationReadRequest) (interface{}, error) {
|
||||
func (*Organisation) Read(ctx context.Context, r *server.OrganisationReadRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -77,7 +79,7 @@ func (*Organisation) Read(r *server.OrganisationReadRequest) (interface{}, error
|
||||
return o, db.Get(o, sqlOrganisationSelect+" AND id = ?", r.ID)
|
||||
}
|
||||
|
||||
func (*Organisation) List(r *server.OrganisationListRequest) (interface{}, error) {
|
||||
func (*Organisation) List(ctx context.Context, r *server.OrganisationListRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -91,7 +93,7 @@ func (*Organisation) List(r *server.OrganisationListRequest) (interface{}, error
|
||||
return res, err
|
||||
}
|
||||
|
||||
func (*Organisation) Archive(r *server.OrganisationArchiveRequest) (interface{}, error) {
|
||||
func (*Organisation) Archive(ctx context.Context, r *server.OrganisationArchiveRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
||||
@@ -16,6 +16,7 @@ package server
|
||||
*/
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@@ -26,11 +27,11 @@ type ChannelHandlers struct {
|
||||
|
||||
// Internal API interface
|
||||
type ChannelAPI interface {
|
||||
List(*ChannelListRequest) (interface{}, error)
|
||||
Create(*ChannelCreateRequest) (interface{}, error)
|
||||
Edit(*ChannelEditRequest) (interface{}, error)
|
||||
Read(*ChannelReadRequest) (interface{}, error)
|
||||
Delete(*ChannelDeleteRequest) (interface{}, error)
|
||||
List(context.Context, *ChannelListRequest) (interface{}, error)
|
||||
Create(context.Context, *ChannelCreateRequest) (interface{}, error)
|
||||
Edit(context.Context, *ChannelEditRequest) (interface{}, error)
|
||||
Read(context.Context, *ChannelReadRequest) (interface{}, error)
|
||||
Delete(context.Context, *ChannelDeleteRequest) (interface{}, error)
|
||||
|
||||
// Authenticate API requests
|
||||
Authenticator() func(http.Handler) http.Handler
|
||||
|
||||
@@ -23,21 +23,21 @@ import (
|
||||
|
||||
func (ch *ChannelHandlers) List(w http.ResponseWriter, r *http.Request) {
|
||||
params := ChannelListRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.List(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.List(r.Context(), params) })
|
||||
}
|
||||
func (ch *ChannelHandlers) Create(w http.ResponseWriter, r *http.Request) {
|
||||
params := ChannelCreateRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.Create(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.Create(r.Context(), params) })
|
||||
}
|
||||
func (ch *ChannelHandlers) Edit(w http.ResponseWriter, r *http.Request) {
|
||||
params := ChannelEditRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.Edit(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.Edit(r.Context(), params) })
|
||||
}
|
||||
func (ch *ChannelHandlers) Read(w http.ResponseWriter, r *http.Request) {
|
||||
params := ChannelReadRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.Read(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.Read(r.Context(), params) })
|
||||
}
|
||||
func (ch *ChannelHandlers) Delete(w http.ResponseWriter, r *http.Request) {
|
||||
params := ChannelDeleteRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.Delete(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return ch.Channel.Delete(r.Context(), params) })
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ package server
|
||||
*/
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@@ -26,13 +27,13 @@ type MessageHandlers struct {
|
||||
|
||||
// Internal API interface
|
||||
type MessageAPI interface {
|
||||
Edit(*MessageEditRequest) (interface{}, error)
|
||||
Attach(*MessageAttachRequest) (interface{}, error)
|
||||
Remove(*MessageRemoveRequest) (interface{}, error)
|
||||
Read(*MessageReadRequest) (interface{}, error)
|
||||
Search(*MessageSearchRequest) (interface{}, error)
|
||||
Pin(*MessagePinRequest) (interface{}, error)
|
||||
Flag(*MessageFlagRequest) (interface{}, error)
|
||||
Edit(context.Context, *MessageEditRequest) (interface{}, error)
|
||||
Attach(context.Context, *MessageAttachRequest) (interface{}, error)
|
||||
Remove(context.Context, *MessageRemoveRequest) (interface{}, error)
|
||||
Read(context.Context, *MessageReadRequest) (interface{}, error)
|
||||
Search(context.Context, *MessageSearchRequest) (interface{}, error)
|
||||
Pin(context.Context, *MessagePinRequest) (interface{}, error)
|
||||
Flag(context.Context, *MessageFlagRequest) (interface{}, error)
|
||||
|
||||
// Authenticate API requests
|
||||
Authenticator() func(http.Handler) http.Handler
|
||||
|
||||
@@ -23,29 +23,29 @@ import (
|
||||
|
||||
func (mh *MessageHandlers) Edit(w http.ResponseWriter, r *http.Request) {
|
||||
params := MessageEditRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Edit(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Edit(r.Context(), params) })
|
||||
}
|
||||
func (mh *MessageHandlers) Attach(w http.ResponseWriter, r *http.Request) {
|
||||
params := MessageAttachRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Attach(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Attach(r.Context(), params) })
|
||||
}
|
||||
func (mh *MessageHandlers) Remove(w http.ResponseWriter, r *http.Request) {
|
||||
params := MessageRemoveRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Remove(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Remove(r.Context(), params) })
|
||||
}
|
||||
func (mh *MessageHandlers) Read(w http.ResponseWriter, r *http.Request) {
|
||||
params := MessageReadRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Read(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Read(r.Context(), params) })
|
||||
}
|
||||
func (mh *MessageHandlers) Search(w http.ResponseWriter, r *http.Request) {
|
||||
params := MessageSearchRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Search(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Search(r.Context(), params) })
|
||||
}
|
||||
func (mh *MessageHandlers) Pin(w http.ResponseWriter, r *http.Request) {
|
||||
params := MessagePinRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Pin(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Pin(r.Context(), params) })
|
||||
}
|
||||
func (mh *MessageHandlers) Flag(w http.ResponseWriter, r *http.Request) {
|
||||
params := MessageFlagRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Flag(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return mh.Message.Flag(r.Context(), params) })
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ package server
|
||||
*/
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@@ -26,12 +27,12 @@ type OrganisationHandlers struct {
|
||||
|
||||
// Internal API interface
|
||||
type OrganisationAPI interface {
|
||||
List(*OrganisationListRequest) (interface{}, error)
|
||||
Create(*OrganisationCreateRequest) (interface{}, error)
|
||||
Edit(*OrganisationEditRequest) (interface{}, error)
|
||||
Remove(*OrganisationRemoveRequest) (interface{}, error)
|
||||
Read(*OrganisationReadRequest) (interface{}, error)
|
||||
Archive(*OrganisationArchiveRequest) (interface{}, error)
|
||||
List(context.Context, *OrganisationListRequest) (interface{}, error)
|
||||
Create(context.Context, *OrganisationCreateRequest) (interface{}, error)
|
||||
Edit(context.Context, *OrganisationEditRequest) (interface{}, error)
|
||||
Remove(context.Context, *OrganisationRemoveRequest) (interface{}, error)
|
||||
Read(context.Context, *OrganisationReadRequest) (interface{}, error)
|
||||
Archive(context.Context, *OrganisationArchiveRequest) (interface{}, error)
|
||||
|
||||
// Authenticate API requests
|
||||
Authenticator() func(http.Handler) http.Handler
|
||||
|
||||
@@ -23,25 +23,25 @@ import (
|
||||
|
||||
func (oh *OrganisationHandlers) List(w http.ResponseWriter, r *http.Request) {
|
||||
params := OrganisationListRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.List(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.List(r.Context(), params) })
|
||||
}
|
||||
func (oh *OrganisationHandlers) Create(w http.ResponseWriter, r *http.Request) {
|
||||
params := OrganisationCreateRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Create(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Create(r.Context(), params) })
|
||||
}
|
||||
func (oh *OrganisationHandlers) Edit(w http.ResponseWriter, r *http.Request) {
|
||||
params := OrganisationEditRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Edit(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Edit(r.Context(), params) })
|
||||
}
|
||||
func (oh *OrganisationHandlers) Remove(w http.ResponseWriter, r *http.Request) {
|
||||
params := OrganisationRemoveRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Remove(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Remove(r.Context(), params) })
|
||||
}
|
||||
func (oh *OrganisationHandlers) Read(w http.ResponseWriter, r *http.Request) {
|
||||
params := OrganisationReadRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Read(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Read(r.Context(), params) })
|
||||
}
|
||||
func (oh *OrganisationHandlers) Archive(w http.ResponseWriter, r *http.Request) {
|
||||
params := OrganisationArchiveRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Archive(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return oh.Organisation.Archive(r.Context(), params) })
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ package server
|
||||
*/
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@@ -26,14 +27,14 @@ type TeamHandlers struct {
|
||||
|
||||
// Internal API interface
|
||||
type TeamAPI interface {
|
||||
List(*TeamListRequest) (interface{}, error)
|
||||
Create(*TeamCreateRequest) (interface{}, error)
|
||||
Edit(*TeamEditRequest) (interface{}, error)
|
||||
Read(*TeamReadRequest) (interface{}, error)
|
||||
Remove(*TeamRemoveRequest) (interface{}, error)
|
||||
Archive(*TeamArchiveRequest) (interface{}, error)
|
||||
Move(*TeamMoveRequest) (interface{}, error)
|
||||
Merge(*TeamMergeRequest) (interface{}, error)
|
||||
List(context.Context, *TeamListRequest) (interface{}, error)
|
||||
Create(context.Context, *TeamCreateRequest) (interface{}, error)
|
||||
Edit(context.Context, *TeamEditRequest) (interface{}, error)
|
||||
Read(context.Context, *TeamReadRequest) (interface{}, error)
|
||||
Remove(context.Context, *TeamRemoveRequest) (interface{}, error)
|
||||
Archive(context.Context, *TeamArchiveRequest) (interface{}, error)
|
||||
Move(context.Context, *TeamMoveRequest) (interface{}, error)
|
||||
Merge(context.Context, *TeamMergeRequest) (interface{}, error)
|
||||
|
||||
// Authenticate API requests
|
||||
Authenticator() func(http.Handler) http.Handler
|
||||
|
||||
@@ -23,33 +23,33 @@ import (
|
||||
|
||||
func (th *TeamHandlers) List(w http.ResponseWriter, r *http.Request) {
|
||||
params := TeamListRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.List(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.List(r.Context(), params) })
|
||||
}
|
||||
func (th *TeamHandlers) Create(w http.ResponseWriter, r *http.Request) {
|
||||
params := TeamCreateRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Create(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Create(r.Context(), params) })
|
||||
}
|
||||
func (th *TeamHandlers) Edit(w http.ResponseWriter, r *http.Request) {
|
||||
params := TeamEditRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Edit(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Edit(r.Context(), params) })
|
||||
}
|
||||
func (th *TeamHandlers) Read(w http.ResponseWriter, r *http.Request) {
|
||||
params := TeamReadRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Read(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Read(r.Context(), params) })
|
||||
}
|
||||
func (th *TeamHandlers) Remove(w http.ResponseWriter, r *http.Request) {
|
||||
params := TeamRemoveRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Remove(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Remove(r.Context(), params) })
|
||||
}
|
||||
func (th *TeamHandlers) Archive(w http.ResponseWriter, r *http.Request) {
|
||||
params := TeamArchiveRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Archive(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Archive(r.Context(), params) })
|
||||
}
|
||||
func (th *TeamHandlers) Move(w http.ResponseWriter, r *http.Request) {
|
||||
params := TeamMoveRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Move(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Move(r.Context(), params) })
|
||||
}
|
||||
func (th *TeamHandlers) Merge(w http.ResponseWriter, r *http.Request) {
|
||||
params := TeamMergeRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Merge(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return th.Team.Merge(r.Context(), params) })
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ package server
|
||||
*/
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@@ -26,8 +27,8 @@ type UserHandlers struct {
|
||||
|
||||
// Internal API interface
|
||||
type UserAPI interface {
|
||||
Login(*UserLoginRequest) (interface{}, error)
|
||||
Search(*UserSearchRequest) (interface{}, error)
|
||||
Login(context.Context, *UserLoginRequest) (interface{}, error)
|
||||
Search(context.Context, *UserSearchRequest) (interface{}, error)
|
||||
|
||||
// Authenticate API requests
|
||||
Authenticator() func(http.Handler) http.Handler
|
||||
|
||||
@@ -23,9 +23,9 @@ import (
|
||||
|
||||
func (uh *UserHandlers) Login(w http.ResponseWriter, r *http.Request) {
|
||||
params := UserLoginRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return uh.User.Login(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return uh.User.Login(r.Context(), params) })
|
||||
}
|
||||
func (uh *UserHandlers) Search(w http.ResponseWriter, r *http.Request) {
|
||||
params := UserSearchRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return uh.User.Search(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return uh.User.Search(r.Context(), params) })
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ package server
|
||||
*/
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
@@ -26,7 +27,7 @@ type WebsocketHandlers struct {
|
||||
|
||||
// Internal API interface
|
||||
type WebsocketAPI interface {
|
||||
Client(*WebsocketClientRequest) (interface{}, error)
|
||||
Client(context.Context, *WebsocketClientRequest) (interface{}, error)
|
||||
|
||||
// Authenticate API requests
|
||||
Authenticator() func(http.Handler) http.Handler
|
||||
|
||||
@@ -23,5 +23,5 @@ import (
|
||||
|
||||
func (wh *WebsocketHandlers) Client(w http.ResponseWriter, r *http.Request) {
|
||||
params := WebsocketClientRequest{}.new()
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return wh.Websocket.Client(params) })
|
||||
resputil.JSON(w, params.Fill(r), func() (interface{}, error) { return wh.Websocket.Client(r.Context(), params) })
|
||||
}
|
||||
|
||||
+10
-8
@@ -2,6 +2,8 @@ package rest
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"context"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
"github.com/titpetric/factory"
|
||||
|
||||
@@ -22,7 +24,7 @@ func (Team) New() *Team {
|
||||
return &Team{}
|
||||
}
|
||||
|
||||
func (*Team) Create(r *server.TeamCreateRequest) (interface{}, error) {
|
||||
func (*Team) Create(ctx context.Context, r *server.TeamCreateRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -36,7 +38,7 @@ func (*Team) Create(r *server.TeamCreateRequest) (interface{}, error) {
|
||||
return t, db.Insert("team", t)
|
||||
}
|
||||
|
||||
func (*Team) Edit(r *server.TeamEditRequest) (interface{}, error) {
|
||||
func (*Team) Edit(ctx context.Context, r *server.TeamEditRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -50,7 +52,7 @@ func (*Team) Edit(r *server.TeamEditRequest) (interface{}, error) {
|
||||
return t, db.Replace("team", t)
|
||||
}
|
||||
|
||||
func (*Team) Remove(r *server.TeamRemoveRequest) (interface{}, error) {
|
||||
func (*Team) Remove(ctx context.Context, r *server.TeamRemoveRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -64,7 +66,7 @@ func (*Team) Remove(r *server.TeamRemoveRequest) (interface{}, error) {
|
||||
}()
|
||||
}
|
||||
|
||||
func (*Team) Read(r *server.TeamReadRequest) (interface{}, error) {
|
||||
func (*Team) Read(ctx context.Context, r *server.TeamReadRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -74,7 +76,7 @@ func (*Team) Read(r *server.TeamReadRequest) (interface{}, error) {
|
||||
return t, db.Get(t, sqlTeamSelect+" AND id = ?", r.ID)
|
||||
}
|
||||
|
||||
func (*Team) List(r *server.TeamListRequest) (interface{}, error) {
|
||||
func (*Team) List(ctx context.Context, r *server.TeamListRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -85,7 +87,7 @@ func (*Team) List(r *server.TeamListRequest) (interface{}, error) {
|
||||
return res, err
|
||||
}
|
||||
|
||||
func (*Team) Archive(r *server.TeamArchiveRequest) (interface{}, error) {
|
||||
func (*Team) Archive(ctx context.Context, r *server.TeamArchiveRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -101,10 +103,10 @@ func (*Team) Archive(r *server.TeamArchiveRequest) (interface{}, error) {
|
||||
}()
|
||||
}
|
||||
|
||||
func (*Team) Move(r *server.TeamMoveRequest) (interface{}, error) {
|
||||
func (*Team) Move(ctx context.Context, r *server.TeamMoveRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Team.move")
|
||||
}
|
||||
|
||||
func (*Team) Merge(r *server.TeamMergeRequest) (interface{}, error) {
|
||||
func (*Team) Merge(ctx context.Context, r *server.TeamMergeRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Team.merge")
|
||||
}
|
||||
|
||||
+7
-5
@@ -1,6 +1,8 @@
|
||||
package rest
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
"github.com/titpetric/factory"
|
||||
|
||||
@@ -35,7 +37,7 @@ func (User) New() *User {
|
||||
}
|
||||
|
||||
/*
|
||||
func (self *User) Read(r *teamReadRequest) (interface{}, error) {
|
||||
func (self *User) Read(ctx context.Context, r *teamReadRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -47,7 +49,7 @@ func (self *User) Read(r *teamReadRequest) (interface{}, error) {
|
||||
*/
|
||||
|
||||
// User lookup & login
|
||||
func (self *User) Login(r *server.UserLoginRequest) (interface{}, error) {
|
||||
func (self *User) Login(ctx context.Context, r *server.UserLoginRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -71,7 +73,7 @@ func (self *User) Login(r *server.UserLoginRequest) (interface{}, error) {
|
||||
}
|
||||
|
||||
// Searches the users table in the database to find users by matching (by-prefix) their.Username
|
||||
func (*User) Search(r *server.UserSearchRequest) (interface{}, error) {
|
||||
func (*User) Search(ctx context.Context, r *server.UserSearchRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -86,7 +88,7 @@ func (*User) Search(r *server.UserSearchRequest) (interface{}, error) {
|
||||
}
|
||||
|
||||
/*
|
||||
func (self *User) Remove(r *teamRemoveRequest) (interface{}, error) {
|
||||
func (self *User) Remove(ctx context.Context, r *teamRemoveRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -100,7 +102,7 @@ func (self *User) Remove(r *teamRemoveRequest) (interface{}, error) {
|
||||
}()
|
||||
}
|
||||
|
||||
func (self *User) Archive(r *teamArchiveRequest) (interface{}, error) {
|
||||
func (self *User) Archive(ctx context.Context, r *teamArchiveRequest) (interface{}, error) {
|
||||
db, err := factory.Database.Get()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package rest
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/crusttech/crust/sam/rest/server"
|
||||
@@ -15,6 +16,6 @@ func (Websocket) New() *Websocket {
|
||||
return &Websocket{}
|
||||
}
|
||||
|
||||
func (*Websocket) Client(r *server.WebsocketClientRequest) (interface{}, error) {
|
||||
func (*Websocket) Client(ctx context.Context, r *server.WebsocketClientRequest) (interface{}, error) {
|
||||
return nil, errors.New("Not implemented: Websocket.client")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user