3
0

Unify trigger endpoint names

This commit is contained in:
Denis Arh 2020-01-08 15:55:37 +01:00
parent 1195534dcd
commit 1e096d1abc
39 changed files with 228 additions and 212 deletions

View File

@ -169,7 +169,7 @@
}
},
{
"name": "fireTrigger",
"name": "triggerScript",
"method": "POST",
"title": "Fire compose:namespace trigger",
"path": "/{namespaceID}/trigger",
@ -464,7 +464,7 @@
}
},
{
"name": "fireTrigger",
"name": "triggerScript",
"method": "POST",
"title": "Fire compose:page trigger",
"path": "/{pageID}/trigger",
@ -676,7 +676,7 @@
}
},
{
"name": "fireTrigger",
"name": "triggerScript",
"method": "POST",
"title": "Fire compose:module trigger",
"path": "/{moduleID}/trigger",
@ -1016,7 +1016,7 @@
}
},
{
"name": "trigger",
"name": "triggerScript",
"method": "POST",
"title": "Fire compose:record trigger",
"path": "/{recordID}/trigger",
@ -1643,7 +1643,7 @@
}
},
{
"name": "trigger",
"name": "triggerScript",
"method": "POST",
"title": "Triggers execution of a specific script on a system service level",
"path": "/trigger",

View File

@ -38,7 +38,7 @@
}
},
{
"Name": "trigger",
"Name": "triggerScript",
"Method": "POST",
"Title": "Triggers execution of a specific script on a system service level",
"Path": "/trigger",

View File

@ -186,7 +186,7 @@
}
},
{
"Name": "fireTrigger",
"Name": "triggerScript",
"Method": "POST",
"Title": "Fire compose:module trigger",
"Path": "/{moduleID}/trigger",

View File

@ -169,7 +169,7 @@
}
},
{
"Name": "fireTrigger",
"Name": "triggerScript",
"Method": "POST",
"Title": "Fire compose:namespace trigger",
"Path": "/{namespaceID}/trigger",

View File

@ -269,7 +269,7 @@
}
},
{
"Name": "fireTrigger",
"Name": "triggerScript",
"Method": "POST",
"Title": "Fire compose:page trigger",
"Path": "/{pageID}/trigger",

View File

@ -314,7 +314,7 @@
}
},
{
"Name": "trigger",
"Name": "triggerScript",
"Method": "POST",
"Title": "Fire compose:record trigger",
"Path": "/{recordID}/trigger",

View File

@ -718,7 +718,7 @@
}
},
{
"name": "fireTrigger",
"name": "triggerScript",
"method": "POST",
"title": "Fire system:role trigger",
"path": "/{roleID}/trigger",
@ -1095,7 +1095,7 @@
}
},
{
"name": "fireTrigger",
"name": "triggerScript",
"method": "POST",
"title": "Fire system:user trigger",
"path": "/{userID}/trigger",
@ -1304,7 +1304,7 @@
}
},
{
"name": "fireTrigger",
"name": "triggerScript",
"method": "POST",
"title": "Fire system:application trigger",
"path": "/{applicationID}/trigger",
@ -1718,7 +1718,7 @@
}
},
{
"name": "trigger",
"name": "triggerScript",
"method": "POST",
"title": "Triggers execution of a specific script on a system service level",
"path": "/trigger",

View File

@ -184,7 +184,7 @@
}
},
{
"Name": "fireTrigger",
"Name": "triggerScript",
"Method": "POST",
"Title": "Fire system:application trigger",
"Path": "/{applicationID}/trigger",

View File

@ -38,7 +38,7 @@
}
},
{
"Name": "trigger",
"Name": "triggerScript",
"Method": "POST",
"Title": "Triggers execution of a specific script on a system service level",
"Path": "/trigger",

View File

@ -310,7 +310,7 @@
}
},
{
"Name": "fireTrigger",
"Name": "triggerScript",
"Method": "POST",
"Title": "Fire system:role trigger",
"Path": "/{roleID}/trigger",

View File

@ -352,7 +352,7 @@
}
},
{
"Name": "fireTrigger",
"Name": "triggerScript",
"Method": "POST",
"Title": "Fire system:user trigger",
"Path": "/{userID}/trigger",

View File

@ -34,6 +34,6 @@ func (ctrl *Automation) List(ctx context.Context, r *request.AutomationList) (in
)
}
func (ctrl *Automation) Trigger(ctx context.Context, r *request.AutomationTrigger) (interface{}, error) {
func (ctrl *Automation) TriggerScript(ctx context.Context, r *request.AutomationTriggerScript) (interface{}, error) {
return resputil.OK(), corredor.Service().ExecOnManual(ctx, r.Script, event.ComposeOnManual())
}

View File

@ -30,13 +30,13 @@ import (
// Internal API interface
type AutomationAPI interface {
List(context.Context, *request.AutomationList) (interface{}, error)
Trigger(context.Context, *request.AutomationTrigger) (interface{}, error)
TriggerScript(context.Context, *request.AutomationTriggerScript) (interface{}, error)
}
// HTTP API interface
type Automation struct {
List func(http.ResponseWriter, *http.Request)
Trigger func(http.ResponseWriter, *http.Request)
List func(http.ResponseWriter, *http.Request)
TriggerScript func(http.ResponseWriter, *http.Request)
}
func NewAutomation(h AutomationAPI) *Automation {
@ -61,22 +61,22 @@ func NewAutomation(h AutomationAPI) *Automation {
resputil.JSON(w, value)
}
},
Trigger: func(w http.ResponseWriter, r *http.Request) {
TriggerScript: func(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
params := request.NewAutomationTrigger()
params := request.NewAutomationTriggerScript()
if err := params.Fill(r); err != nil {
logger.LogParamError("Automation.Trigger", r, err)
logger.LogParamError("Automation.TriggerScript", r, err)
resputil.JSON(w, err)
return
}
value, err := h.Trigger(r.Context(), params)
value, err := h.TriggerScript(r.Context(), params)
if err != nil {
logger.LogControllerError("Automation.Trigger", r, err, params.Auditable())
logger.LogControllerError("Automation.TriggerScript", r, err, params.Auditable())
resputil.JSON(w, err)
return
}
logger.LogControllerCall("Automation.Trigger", r, params.Auditable())
logger.LogControllerCall("Automation.TriggerScript", r, params.Auditable())
if !serveHTTP(value, w, r) {
resputil.JSON(w, value)
}
@ -88,6 +88,6 @@ func (h Automation) MountRoutes(r chi.Router, middlewares ...func(http.Handler)
r.Group(func(r chi.Router) {
r.Use(middlewares...)
r.Get("/automation/", h.List)
r.Post("/automation/trigger", h.Trigger)
r.Post("/automation/trigger", h.TriggerScript)
})
}

View File

@ -34,17 +34,17 @@ type ModuleAPI interface {
Read(context.Context, *request.ModuleRead) (interface{}, error)
Update(context.Context, *request.ModuleUpdate) (interface{}, error)
Delete(context.Context, *request.ModuleDelete) (interface{}, error)
FireTrigger(context.Context, *request.ModuleFireTrigger) (interface{}, error)
TriggerScript(context.Context, *request.ModuleTriggerScript) (interface{}, error)
}
// HTTP API interface
type Module struct {
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
FireTrigger func(http.ResponseWriter, *http.Request)
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
TriggerScript func(http.ResponseWriter, *http.Request)
}
func NewModule(h ModuleAPI) *Module {
@ -149,22 +149,22 @@ func NewModule(h ModuleAPI) *Module {
resputil.JSON(w, value)
}
},
FireTrigger: func(w http.ResponseWriter, r *http.Request) {
TriggerScript: func(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
params := request.NewModuleFireTrigger()
params := request.NewModuleTriggerScript()
if err := params.Fill(r); err != nil {
logger.LogParamError("Module.FireTrigger", r, err)
logger.LogParamError("Module.TriggerScript", r, err)
resputil.JSON(w, err)
return
}
value, err := h.FireTrigger(r.Context(), params)
value, err := h.TriggerScript(r.Context(), params)
if err != nil {
logger.LogControllerError("Module.FireTrigger", r, err, params.Auditable())
logger.LogControllerError("Module.TriggerScript", r, err, params.Auditable())
resputil.JSON(w, err)
return
}
logger.LogControllerCall("Module.FireTrigger", r, params.Auditable())
logger.LogControllerCall("Module.TriggerScript", r, params.Auditable())
if !serveHTTP(value, w, r) {
resputil.JSON(w, value)
}
@ -180,6 +180,6 @@ func (h Module) MountRoutes(r chi.Router, middlewares ...func(http.Handler) http
r.Get("/namespace/{namespaceID}/module/{moduleID}", h.Read)
r.Post("/namespace/{namespaceID}/module/{moduleID}", h.Update)
r.Delete("/namespace/{namespaceID}/module/{moduleID}", h.Delete)
r.Post("/namespace/{namespaceID}/module/{moduleID}/trigger", h.FireTrigger)
r.Post("/namespace/{namespaceID}/module/{moduleID}/trigger", h.TriggerScript)
})
}

View File

@ -34,17 +34,17 @@ type NamespaceAPI interface {
Read(context.Context, *request.NamespaceRead) (interface{}, error)
Update(context.Context, *request.NamespaceUpdate) (interface{}, error)
Delete(context.Context, *request.NamespaceDelete) (interface{}, error)
FireTrigger(context.Context, *request.NamespaceFireTrigger) (interface{}, error)
TriggerScript(context.Context, *request.NamespaceTriggerScript) (interface{}, error)
}
// HTTP API interface
type Namespace struct {
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
FireTrigger func(http.ResponseWriter, *http.Request)
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
TriggerScript func(http.ResponseWriter, *http.Request)
}
func NewNamespace(h NamespaceAPI) *Namespace {
@ -149,22 +149,22 @@ func NewNamespace(h NamespaceAPI) *Namespace {
resputil.JSON(w, value)
}
},
FireTrigger: func(w http.ResponseWriter, r *http.Request) {
TriggerScript: func(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
params := request.NewNamespaceFireTrigger()
params := request.NewNamespaceTriggerScript()
if err := params.Fill(r); err != nil {
logger.LogParamError("Namespace.FireTrigger", r, err)
logger.LogParamError("Namespace.TriggerScript", r, err)
resputil.JSON(w, err)
return
}
value, err := h.FireTrigger(r.Context(), params)
value, err := h.TriggerScript(r.Context(), params)
if err != nil {
logger.LogControllerError("Namespace.FireTrigger", r, err, params.Auditable())
logger.LogControllerError("Namespace.TriggerScript", r, err, params.Auditable())
resputil.JSON(w, err)
return
}
logger.LogControllerCall("Namespace.FireTrigger", r, params.Auditable())
logger.LogControllerCall("Namespace.TriggerScript", r, params.Auditable())
if !serveHTTP(value, w, r) {
resputil.JSON(w, value)
}
@ -180,6 +180,6 @@ func (h Namespace) MountRoutes(r chi.Router, middlewares ...func(http.Handler) h
r.Get("/namespace/{namespaceID}", h.Read)
r.Post("/namespace/{namespaceID}", h.Update)
r.Delete("/namespace/{namespaceID}", h.Delete)
r.Post("/namespace/{namespaceID}/trigger", h.FireTrigger)
r.Post("/namespace/{namespaceID}/trigger", h.TriggerScript)
})
}

View File

@ -37,20 +37,20 @@ type PageAPI interface {
Reorder(context.Context, *request.PageReorder) (interface{}, error)
Delete(context.Context, *request.PageDelete) (interface{}, error)
Upload(context.Context, *request.PageUpload) (interface{}, error)
FireTrigger(context.Context, *request.PageFireTrigger) (interface{}, error)
TriggerScript(context.Context, *request.PageTriggerScript) (interface{}, error)
}
// HTTP API interface
type Page struct {
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Tree func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Reorder func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
Upload func(http.ResponseWriter, *http.Request)
FireTrigger func(http.ResponseWriter, *http.Request)
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Tree func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Reorder func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
Upload func(http.ResponseWriter, *http.Request)
TriggerScript func(http.ResponseWriter, *http.Request)
}
func NewPage(h PageAPI) *Page {
@ -215,22 +215,22 @@ func NewPage(h PageAPI) *Page {
resputil.JSON(w, value)
}
},
FireTrigger: func(w http.ResponseWriter, r *http.Request) {
TriggerScript: func(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
params := request.NewPageFireTrigger()
params := request.NewPageTriggerScript()
if err := params.Fill(r); err != nil {
logger.LogParamError("Page.FireTrigger", r, err)
logger.LogParamError("Page.TriggerScript", r, err)
resputil.JSON(w, err)
return
}
value, err := h.FireTrigger(r.Context(), params)
value, err := h.TriggerScript(r.Context(), params)
if err != nil {
logger.LogControllerError("Page.FireTrigger", r, err, params.Auditable())
logger.LogControllerError("Page.TriggerScript", r, err, params.Auditable())
resputil.JSON(w, err)
return
}
logger.LogControllerCall("Page.FireTrigger", r, params.Auditable())
logger.LogControllerCall("Page.TriggerScript", r, params.Auditable())
if !serveHTTP(value, w, r) {
resputil.JSON(w, value)
}
@ -249,6 +249,6 @@ func (h Page) MountRoutes(r chi.Router, middlewares ...func(http.Handler) http.H
r.Post("/namespace/{namespaceID}/page/{selfID}/reorder", h.Reorder)
r.Delete("/namespace/{namespaceID}/page/{pageID}", h.Delete)
r.Post("/namespace/{namespaceID}/page/{pageID}/attachment", h.Upload)
r.Post("/namespace/{namespaceID}/page/{pageID}/trigger", h.FireTrigger)
r.Post("/namespace/{namespaceID}/page/{pageID}/trigger", h.TriggerScript)
})
}

View File

@ -41,7 +41,7 @@ type RecordAPI interface {
Update(context.Context, *request.RecordUpdate) (interface{}, error)
Delete(context.Context, *request.RecordDelete) (interface{}, error)
Upload(context.Context, *request.RecordUpload) (interface{}, error)
Trigger(context.Context, *request.RecordTrigger) (interface{}, error)
TriggerScript(context.Context, *request.RecordTriggerScript) (interface{}, error)
}
// HTTP API interface
@ -58,7 +58,7 @@ type Record struct {
Update func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
Upload func(http.ResponseWriter, *http.Request)
Trigger func(http.ResponseWriter, *http.Request)
TriggerScript func(http.ResponseWriter, *http.Request)
}
func NewRecord(h RecordAPI) *Record {
@ -303,22 +303,22 @@ func NewRecord(h RecordAPI) *Record {
resputil.JSON(w, value)
}
},
Trigger: func(w http.ResponseWriter, r *http.Request) {
TriggerScript: func(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
params := request.NewRecordTrigger()
params := request.NewRecordTriggerScript()
if err := params.Fill(r); err != nil {
logger.LogParamError("Record.Trigger", r, err)
logger.LogParamError("Record.TriggerScript", r, err)
resputil.JSON(w, err)
return
}
value, err := h.Trigger(r.Context(), params)
value, err := h.TriggerScript(r.Context(), params)
if err != nil {
logger.LogControllerError("Record.Trigger", r, err, params.Auditable())
logger.LogControllerError("Record.TriggerScript", r, err, params.Auditable())
resputil.JSON(w, err)
return
}
logger.LogControllerCall("Record.Trigger", r, params.Auditable())
logger.LogControllerCall("Record.TriggerScript", r, params.Auditable())
if !serveHTTP(value, w, r) {
resputil.JSON(w, value)
}
@ -341,6 +341,6 @@ func (h Record) MountRoutes(r chi.Router, middlewares ...func(http.Handler) http
r.Post("/namespace/{namespaceID}/module/{moduleID}/record/{recordID}", h.Update)
r.Delete("/namespace/{namespaceID}/module/{moduleID}/record/{recordID}", h.Delete)
r.Post("/namespace/{namespaceID}/module/{moduleID}/record/attachment", h.Upload)
r.Post("/namespace/{namespaceID}/module/{moduleID}/record/{recordID}/trigger", h.Trigger)
r.Post("/namespace/{namespaceID}/module/{moduleID}/record/{recordID}/trigger", h.TriggerScript)
})
}

View File

@ -136,7 +136,7 @@ func (ctrl *Module) Delete(ctx context.Context, r *request.ModuleDelete) (interf
return resputil.OK(), ctrl.module.With(ctx).DeleteByID(r.NamespaceID, r.ModuleID)
}
func (ctrl *Module) FireTrigger(ctx context.Context, r *request.ModuleFireTrigger) (rsp interface{}, err error) {
func (ctrl *Module) TriggerScript(ctx context.Context, r *request.ModuleTriggerScript) (rsp interface{}, err error) {
var (
module *types.Module
namespace *types.Namespace

View File

@ -124,7 +124,7 @@ func (ctrl Namespace) Delete(ctx context.Context, r *request.NamespaceDelete) (i
return resputil.OK(), ctrl.namespace.With(ctx).DeleteByID(r.NamespaceID)
}
func (ctrl *Namespace) FireTrigger(ctx context.Context, r *request.NamespaceFireTrigger) (rsp interface{}, err error) {
func (ctrl *Namespace) TriggerScript(ctx context.Context, r *request.NamespaceTriggerScript) (rsp interface{}, err error) {
var (
namespace *types.Namespace
)

View File

@ -157,7 +157,7 @@ func (ctrl *Page) Upload(ctx context.Context, r *request.PageUpload) (interface{
return makeAttachmentPayload(ctx, a, err)
}
func (ctrl *Page) FireTrigger(ctx context.Context, r *request.PageFireTrigger) (rsp interface{}, err error) {
func (ctrl *Page) TriggerScript(ctx context.Context, r *request.PageTriggerScript) (rsp interface{}, err error) {
var (
page *types.Page
namespace *types.Namespace

View File

@ -376,7 +376,7 @@ func (ctrl Record) Exec(ctx context.Context, r *request.RecordExec) (interface{}
return nil, nil
}
func (ctrl *Record) Trigger(ctx context.Context, r *request.RecordTrigger) (rsp interface{}, err error) {
func (ctrl *Record) TriggerScript(ctx context.Context, r *request.RecordTriggerScript) (rsp interface{}, err error) {
var (
record *types.Record
module *types.Module
@ -395,7 +395,19 @@ func (ctrl *Record) Trigger(ctx context.Context, r *request.RecordTrigger) (rsp
return
}
return resputil.OK(), corredor.Service().ExecOnManual(ctx, r.Script, event.RecordOnManual(record, nil, module, namespace))
err = corredor.Service().ExecOnManual(
ctx,
r.Script,
event.RecordOnManual(
record,
nil,
module,
namespace,
),
)
// Script can return modified record and we'll pass it on to the caller
return ctrl.makePayload(ctx, module, record, err)
}
func (ctrl Record) makePayload(ctx context.Context, m *types.Module, r *types.Record, err error) (*recordPayload, error) {

View File

@ -104,16 +104,16 @@ func (r *AutomationList) Fill(req *http.Request) (err error) {
var _ RequestFiller = NewAutomationList()
// Automation trigger request parameters
type AutomationTrigger struct {
// Automation triggerScript request parameters
type AutomationTriggerScript struct {
Script string
}
func NewAutomationTrigger() *AutomationTrigger {
return &AutomationTrigger{}
func NewAutomationTriggerScript() *AutomationTriggerScript {
return &AutomationTriggerScript{}
}
func (r AutomationTrigger) Auditable() map[string]interface{} {
func (r AutomationTriggerScript) Auditable() map[string]interface{} {
var out = map[string]interface{}{}
out["script"] = r.Script
@ -121,7 +121,7 @@ func (r AutomationTrigger) Auditable() map[string]interface{} {
return out
}
func (r *AutomationTrigger) Fill(req *http.Request) (err error) {
func (r *AutomationTriggerScript) Fill(req *http.Request) (err error) {
if strings.ToLower(req.Header.Get("content-type")) == "application/json" {
err = json.NewDecoder(req.Body).Decode(r)
@ -155,4 +155,4 @@ func (r *AutomationTrigger) Fill(req *http.Request) (err error) {
return err
}
var _ RequestFiller = NewAutomationTrigger()
var _ RequestFiller = NewAutomationTriggerScript()

View File

@ -376,18 +376,18 @@ func (r *ModuleDelete) Fill(req *http.Request) (err error) {
var _ RequestFiller = NewModuleDelete()
// Module fireTrigger request parameters
type ModuleFireTrigger struct {
// Module triggerScript request parameters
type ModuleTriggerScript struct {
ModuleID uint64 `json:",string"`
NamespaceID uint64 `json:",string"`
Script string
}
func NewModuleFireTrigger() *ModuleFireTrigger {
return &ModuleFireTrigger{}
func NewModuleTriggerScript() *ModuleTriggerScript {
return &ModuleTriggerScript{}
}
func (r ModuleFireTrigger) Auditable() map[string]interface{} {
func (r ModuleTriggerScript) Auditable() map[string]interface{} {
var out = map[string]interface{}{}
out["moduleID"] = r.ModuleID
@ -397,7 +397,7 @@ func (r ModuleFireTrigger) Auditable() map[string]interface{} {
return out
}
func (r *ModuleFireTrigger) Fill(req *http.Request) (err error) {
func (r *ModuleTriggerScript) Fill(req *http.Request) (err error) {
if strings.ToLower(req.Header.Get("content-type")) == "application/json" {
err = json.NewDecoder(req.Body).Decode(r)
@ -433,4 +433,4 @@ func (r *ModuleFireTrigger) Fill(req *http.Request) (err error) {
return err
}
var _ RequestFiller = NewModuleFireTrigger()
var _ RequestFiller = NewModuleTriggerScript()

View File

@ -361,17 +361,17 @@ func (r *NamespaceDelete) Fill(req *http.Request) (err error) {
var _ RequestFiller = NewNamespaceDelete()
// Namespace fireTrigger request parameters
type NamespaceFireTrigger struct {
// Namespace triggerScript request parameters
type NamespaceTriggerScript struct {
NamespaceID uint64 `json:",string"`
Script string
}
func NewNamespaceFireTrigger() *NamespaceFireTrigger {
return &NamespaceFireTrigger{}
func NewNamespaceTriggerScript() *NamespaceTriggerScript {
return &NamespaceTriggerScript{}
}
func (r NamespaceFireTrigger) Auditable() map[string]interface{} {
func (r NamespaceTriggerScript) Auditable() map[string]interface{} {
var out = map[string]interface{}{}
out["namespaceID"] = r.NamespaceID
@ -380,7 +380,7 @@ func (r NamespaceFireTrigger) Auditable() map[string]interface{} {
return out
}
func (r *NamespaceFireTrigger) Fill(req *http.Request) (err error) {
func (r *NamespaceTriggerScript) Fill(req *http.Request) (err error) {
if strings.ToLower(req.Header.Get("content-type")) == "application/json" {
err = json.NewDecoder(req.Body).Decode(r)
@ -415,4 +415,4 @@ func (r *NamespaceFireTrigger) Fill(req *http.Request) (err error) {
return err
}
var _ RequestFiller = NewNamespaceFireTrigger()
var _ RequestFiller = NewNamespaceTriggerScript()

View File

@ -573,18 +573,18 @@ func (r *PageUpload) Fill(req *http.Request) (err error) {
var _ RequestFiller = NewPageUpload()
// Page fireTrigger request parameters
type PageFireTrigger struct {
// Page triggerScript request parameters
type PageTriggerScript struct {
PageID uint64 `json:",string"`
NamespaceID uint64 `json:",string"`
Script string
}
func NewPageFireTrigger() *PageFireTrigger {
return &PageFireTrigger{}
func NewPageTriggerScript() *PageTriggerScript {
return &PageTriggerScript{}
}
func (r PageFireTrigger) Auditable() map[string]interface{} {
func (r PageTriggerScript) Auditable() map[string]interface{} {
var out = map[string]interface{}{}
out["pageID"] = r.PageID
@ -594,7 +594,7 @@ func (r PageFireTrigger) Auditable() map[string]interface{} {
return out
}
func (r *PageFireTrigger) Fill(req *http.Request) (err error) {
func (r *PageTriggerScript) Fill(req *http.Request) (err error) {
if strings.ToLower(req.Header.Get("content-type")) == "application/json" {
err = json.NewDecoder(req.Body).Decode(r)
@ -630,4 +630,4 @@ func (r *PageFireTrigger) Fill(req *http.Request) (err error) {
return err
}
var _ RequestFiller = NewPageFireTrigger()
var _ RequestFiller = NewPageTriggerScript()

View File

@ -795,19 +795,19 @@ func (r *RecordUpload) Fill(req *http.Request) (err error) {
var _ RequestFiller = NewRecordUpload()
// Record trigger request parameters
type RecordTrigger struct {
// Record triggerScript request parameters
type RecordTriggerScript struct {
RecordID uint64 `json:",string"`
NamespaceID uint64 `json:",string"`
ModuleID uint64 `json:",string"`
Script string
}
func NewRecordTrigger() *RecordTrigger {
return &RecordTrigger{}
func NewRecordTriggerScript() *RecordTriggerScript {
return &RecordTriggerScript{}
}
func (r RecordTrigger) Auditable() map[string]interface{} {
func (r RecordTriggerScript) Auditable() map[string]interface{} {
var out = map[string]interface{}{}
out["recordID"] = r.RecordID
@ -818,7 +818,7 @@ func (r RecordTrigger) Auditable() map[string]interface{} {
return out
}
func (r *RecordTrigger) Fill(req *http.Request) (err error) {
func (r *RecordTriggerScript) Fill(req *http.Request) (err error) {
if strings.ToLower(req.Header.Get("content-type")) == "application/json" {
err = json.NewDecoder(req.Body).Decode(r)
@ -855,4 +855,4 @@ func (r *RecordTrigger) Fill(req *http.Request) (err error) {
return err
}
var _ RequestFiller = NewRecordTrigger()
var _ RequestFiller = NewRecordTriggerScript()

View File

@ -464,7 +464,11 @@ func (svc service) exec(ctx context.Context, script string, runAs string, event
// Send results back to the event for decoding
err = event.Decode(encodedResults)
if err != nil {
log.Debug("could not decode results", zap.Error(err))
log.Debug(
"could not decode results",
zap.Error(err),
zap.Any("results", encodedResults),
)
return
}

View File

@ -120,7 +120,7 @@ func (ctrl *Application) Undelete(ctx context.Context, r *request.ApplicationUnd
return resputil.OK(), ctrl.application.With(ctx).Undelete(r.ApplicationID)
}
func (ctrl *Application) FireTrigger(ctx context.Context, r *request.ApplicationFireTrigger) (rsp interface{}, err error) {
func (ctrl *Application) TriggerScript(ctx context.Context, r *request.ApplicationTriggerScript) (rsp interface{}, err error) {
var (
application *types.Application
)

View File

@ -34,6 +34,6 @@ func (ctrl *Automation) List(ctx context.Context, r *request.AutomationList) (in
)
}
func (ctrl *Automation) Trigger(ctx context.Context, r *request.AutomationTrigger) (interface{}, error) {
func (ctrl *Automation) TriggerScript(ctx context.Context, r *request.AutomationTriggerScript) (interface{}, error) {
return resputil.OK(), corredor.Service().ExecOnManual(ctx, r.Script, event.SystemOnManual())
}

View File

@ -35,18 +35,18 @@ type ApplicationAPI interface {
Read(context.Context, *request.ApplicationRead) (interface{}, error)
Delete(context.Context, *request.ApplicationDelete) (interface{}, error)
Undelete(context.Context, *request.ApplicationUndelete) (interface{}, error)
FireTrigger(context.Context, *request.ApplicationFireTrigger) (interface{}, error)
TriggerScript(context.Context, *request.ApplicationTriggerScript) (interface{}, error)
}
// HTTP API interface
type Application struct {
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
Undelete func(http.ResponseWriter, *http.Request)
FireTrigger func(http.ResponseWriter, *http.Request)
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
Undelete func(http.ResponseWriter, *http.Request)
TriggerScript func(http.ResponseWriter, *http.Request)
}
func NewApplication(h ApplicationAPI) *Application {
@ -171,22 +171,22 @@ func NewApplication(h ApplicationAPI) *Application {
resputil.JSON(w, value)
}
},
FireTrigger: func(w http.ResponseWriter, r *http.Request) {
TriggerScript: func(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
params := request.NewApplicationFireTrigger()
params := request.NewApplicationTriggerScript()
if err := params.Fill(r); err != nil {
logger.LogParamError("Application.FireTrigger", r, err)
logger.LogParamError("Application.TriggerScript", r, err)
resputil.JSON(w, err)
return
}
value, err := h.FireTrigger(r.Context(), params)
value, err := h.TriggerScript(r.Context(), params)
if err != nil {
logger.LogControllerError("Application.FireTrigger", r, err, params.Auditable())
logger.LogControllerError("Application.TriggerScript", r, err, params.Auditable())
resputil.JSON(w, err)
return
}
logger.LogControllerCall("Application.FireTrigger", r, params.Auditable())
logger.LogControllerCall("Application.TriggerScript", r, params.Auditable())
if !serveHTTP(value, w, r) {
resputil.JSON(w, value)
}
@ -203,6 +203,6 @@ func (h Application) MountRoutes(r chi.Router, middlewares ...func(http.Handler)
r.Get("/application/{applicationID}", h.Read)
r.Delete("/application/{applicationID}", h.Delete)
r.Post("/application/{applicationID}/undelete", h.Undelete)
r.Post("/application/{applicationID}/trigger", h.FireTrigger)
r.Post("/application/{applicationID}/trigger", h.TriggerScript)
})
}

View File

@ -30,13 +30,13 @@ import (
// Internal API interface
type AutomationAPI interface {
List(context.Context, *request.AutomationList) (interface{}, error)
Trigger(context.Context, *request.AutomationTrigger) (interface{}, error)
TriggerScript(context.Context, *request.AutomationTriggerScript) (interface{}, error)
}
// HTTP API interface
type Automation struct {
List func(http.ResponseWriter, *http.Request)
Trigger func(http.ResponseWriter, *http.Request)
List func(http.ResponseWriter, *http.Request)
TriggerScript func(http.ResponseWriter, *http.Request)
}
func NewAutomation(h AutomationAPI) *Automation {
@ -61,22 +61,22 @@ func NewAutomation(h AutomationAPI) *Automation {
resputil.JSON(w, value)
}
},
Trigger: func(w http.ResponseWriter, r *http.Request) {
TriggerScript: func(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
params := request.NewAutomationTrigger()
params := request.NewAutomationTriggerScript()
if err := params.Fill(r); err != nil {
logger.LogParamError("Automation.Trigger", r, err)
logger.LogParamError("Automation.TriggerScript", r, err)
resputil.JSON(w, err)
return
}
value, err := h.Trigger(r.Context(), params)
value, err := h.TriggerScript(r.Context(), params)
if err != nil {
logger.LogControllerError("Automation.Trigger", r, err, params.Auditable())
logger.LogControllerError("Automation.TriggerScript", r, err, params.Auditable())
resputil.JSON(w, err)
return
}
logger.LogControllerCall("Automation.Trigger", r, params.Auditable())
logger.LogControllerCall("Automation.TriggerScript", r, params.Auditable())
if !serveHTTP(value, w, r) {
resputil.JSON(w, value)
}
@ -88,6 +88,6 @@ func (h Automation) MountRoutes(r chi.Router, middlewares ...func(http.Handler)
r.Group(func(r chi.Router) {
r.Use(middlewares...)
r.Get("/automation/", h.List)
r.Post("/automation/trigger", h.Trigger)
r.Post("/automation/trigger", h.TriggerScript)
})
}

View File

@ -42,25 +42,25 @@ type RoleAPI interface {
MemberList(context.Context, *request.RoleMemberList) (interface{}, error)
MemberAdd(context.Context, *request.RoleMemberAdd) (interface{}, error)
MemberRemove(context.Context, *request.RoleMemberRemove) (interface{}, error)
FireTrigger(context.Context, *request.RoleFireTrigger) (interface{}, error)
TriggerScript(context.Context, *request.RoleTriggerScript) (interface{}, error)
}
// HTTP API interface
type Role struct {
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
Archive func(http.ResponseWriter, *http.Request)
Unarchive func(http.ResponseWriter, *http.Request)
Undelete func(http.ResponseWriter, *http.Request)
Move func(http.ResponseWriter, *http.Request)
Merge func(http.ResponseWriter, *http.Request)
MemberList func(http.ResponseWriter, *http.Request)
MemberAdd func(http.ResponseWriter, *http.Request)
MemberRemove func(http.ResponseWriter, *http.Request)
FireTrigger func(http.ResponseWriter, *http.Request)
List func(http.ResponseWriter, *http.Request)
Create func(http.ResponseWriter, *http.Request)
Update func(http.ResponseWriter, *http.Request)
Read func(http.ResponseWriter, *http.Request)
Delete func(http.ResponseWriter, *http.Request)
Archive func(http.ResponseWriter, *http.Request)
Unarchive func(http.ResponseWriter, *http.Request)
Undelete func(http.ResponseWriter, *http.Request)
Move func(http.ResponseWriter, *http.Request)
Merge func(http.ResponseWriter, *http.Request)
MemberList func(http.ResponseWriter, *http.Request)
MemberAdd func(http.ResponseWriter, *http.Request)
MemberRemove func(http.ResponseWriter, *http.Request)
TriggerScript func(http.ResponseWriter, *http.Request)
}
func NewRole(h RoleAPI) *Role {
@ -325,22 +325,22 @@ func NewRole(h RoleAPI) *Role {
resputil.JSON(w, value)
}
},
FireTrigger: func(w http.ResponseWriter, r *http.Request) {
TriggerScript: func(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
params := request.NewRoleFireTrigger()
params := request.NewRoleTriggerScript()
if err := params.Fill(r); err != nil {
logger.LogParamError("Role.FireTrigger", r, err)
logger.LogParamError("Role.TriggerScript", r, err)
resputil.JSON(w, err)
return
}
value, err := h.FireTrigger(r.Context(), params)
value, err := h.TriggerScript(r.Context(), params)
if err != nil {
logger.LogControllerError("Role.FireTrigger", r, err, params.Auditable())
logger.LogControllerError("Role.TriggerScript", r, err, params.Auditable())
resputil.JSON(w, err)
return
}
logger.LogControllerCall("Role.FireTrigger", r, params.Auditable())
logger.LogControllerCall("Role.TriggerScript", r, params.Auditable())
if !serveHTTP(value, w, r) {
resputil.JSON(w, value)
}
@ -364,6 +364,6 @@ func (h Role) MountRoutes(r chi.Router, middlewares ...func(http.Handler) http.H
r.Get("/roles/{roleID}/members", h.MemberList)
r.Post("/roles/{roleID}/member/{userID}", h.MemberAdd)
r.Delete("/roles/{roleID}/member/{userID}", h.MemberRemove)
r.Post("/roles/{roleID}/trigger", h.FireTrigger)
r.Post("/roles/{roleID}/trigger", h.TriggerScript)
})
}

View File

@ -41,7 +41,7 @@ type UserAPI interface {
MembershipList(context.Context, *request.UserMembershipList) (interface{}, error)
MembershipAdd(context.Context, *request.UserMembershipAdd) (interface{}, error)
MembershipRemove(context.Context, *request.UserMembershipRemove) (interface{}, error)
FireTrigger(context.Context, *request.UserFireTrigger) (interface{}, error)
TriggerScript(context.Context, *request.UserTriggerScript) (interface{}, error)
}
// HTTP API interface
@ -58,7 +58,7 @@ type User struct {
MembershipList func(http.ResponseWriter, *http.Request)
MembershipAdd func(http.ResponseWriter, *http.Request)
MembershipRemove func(http.ResponseWriter, *http.Request)
FireTrigger func(http.ResponseWriter, *http.Request)
TriggerScript func(http.ResponseWriter, *http.Request)
}
func NewUser(h UserAPI) *User {
@ -303,22 +303,22 @@ func NewUser(h UserAPI) *User {
resputil.JSON(w, value)
}
},
FireTrigger: func(w http.ResponseWriter, r *http.Request) {
TriggerScript: func(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
params := request.NewUserFireTrigger()
params := request.NewUserTriggerScript()
if err := params.Fill(r); err != nil {
logger.LogParamError("User.FireTrigger", r, err)
logger.LogParamError("User.TriggerScript", r, err)
resputil.JSON(w, err)
return
}
value, err := h.FireTrigger(r.Context(), params)
value, err := h.TriggerScript(r.Context(), params)
if err != nil {
logger.LogControllerError("User.FireTrigger", r, err, params.Auditable())
logger.LogControllerError("User.TriggerScript", r, err, params.Auditable())
resputil.JSON(w, err)
return
}
logger.LogControllerCall("User.FireTrigger", r, params.Auditable())
logger.LogControllerCall("User.TriggerScript", r, params.Auditable())
if !serveHTTP(value, w, r) {
resputil.JSON(w, value)
}
@ -341,6 +341,6 @@ func (h User) MountRoutes(r chi.Router, middlewares ...func(http.Handler) http.H
r.Get("/users/{userID}/membership", h.MembershipList)
r.Post("/users/{userID}/membership/{roleID}", h.MembershipAdd)
r.Delete("/users/{userID}/membership/{roleID}", h.MembershipRemove)
r.Post("/users/{userID}/trigger", h.FireTrigger)
r.Post("/users/{userID}/trigger", h.TriggerScript)
})
}

View File

@ -414,17 +414,17 @@ func (r *ApplicationUndelete) Fill(req *http.Request) (err error) {
var _ RequestFiller = NewApplicationUndelete()
// Application fireTrigger request parameters
type ApplicationFireTrigger struct {
// Application triggerScript request parameters
type ApplicationTriggerScript struct {
ApplicationID uint64 `json:",string"`
Script string
}
func NewApplicationFireTrigger() *ApplicationFireTrigger {
return &ApplicationFireTrigger{}
func NewApplicationTriggerScript() *ApplicationTriggerScript {
return &ApplicationTriggerScript{}
}
func (r ApplicationFireTrigger) Auditable() map[string]interface{} {
func (r ApplicationTriggerScript) Auditable() map[string]interface{} {
var out = map[string]interface{}{}
out["applicationID"] = r.ApplicationID
@ -433,7 +433,7 @@ func (r ApplicationFireTrigger) Auditable() map[string]interface{} {
return out
}
func (r *ApplicationFireTrigger) Fill(req *http.Request) (err error) {
func (r *ApplicationTriggerScript) Fill(req *http.Request) (err error) {
if strings.ToLower(req.Header.Get("content-type")) == "application/json" {
err = json.NewDecoder(req.Body).Decode(r)
@ -468,4 +468,4 @@ func (r *ApplicationFireTrigger) Fill(req *http.Request) (err error) {
return err
}
var _ RequestFiller = NewApplicationFireTrigger()
var _ RequestFiller = NewApplicationTriggerScript()

View File

@ -104,16 +104,16 @@ func (r *AutomationList) Fill(req *http.Request) (err error) {
var _ RequestFiller = NewAutomationList()
// Automation trigger request parameters
type AutomationTrigger struct {
// Automation triggerScript request parameters
type AutomationTriggerScript struct {
Script string
}
func NewAutomationTrigger() *AutomationTrigger {
return &AutomationTrigger{}
func NewAutomationTriggerScript() *AutomationTriggerScript {
return &AutomationTriggerScript{}
}
func (r AutomationTrigger) Auditable() map[string]interface{} {
func (r AutomationTriggerScript) Auditable() map[string]interface{} {
var out = map[string]interface{}{}
out["script"] = r.Script
@ -121,7 +121,7 @@ func (r AutomationTrigger) Auditable() map[string]interface{} {
return out
}
func (r *AutomationTrigger) Fill(req *http.Request) (err error) {
func (r *AutomationTriggerScript) Fill(req *http.Request) (err error) {
if strings.ToLower(req.Header.Get("content-type")) == "application/json" {
err = json.NewDecoder(req.Body).Decode(r)
@ -155,4 +155,4 @@ func (r *AutomationTrigger) Fill(req *http.Request) (err error) {
return err
}
var _ RequestFiller = NewAutomationTrigger()
var _ RequestFiller = NewAutomationTriggerScript()

View File

@ -765,17 +765,17 @@ func (r *RoleMemberRemove) Fill(req *http.Request) (err error) {
var _ RequestFiller = NewRoleMemberRemove()
// Role fireTrigger request parameters
type RoleFireTrigger struct {
// Role triggerScript request parameters
type RoleTriggerScript struct {
RoleID uint64 `json:",string"`
Script string
}
func NewRoleFireTrigger() *RoleFireTrigger {
return &RoleFireTrigger{}
func NewRoleTriggerScript() *RoleTriggerScript {
return &RoleTriggerScript{}
}
func (r RoleFireTrigger) Auditable() map[string]interface{} {
func (r RoleTriggerScript) Auditable() map[string]interface{} {
var out = map[string]interface{}{}
out["roleID"] = r.RoleID
@ -784,7 +784,7 @@ func (r RoleFireTrigger) Auditable() map[string]interface{} {
return out
}
func (r *RoleFireTrigger) Fill(req *http.Request) (err error) {
func (r *RoleTriggerScript) Fill(req *http.Request) (err error) {
if strings.ToLower(req.Header.Get("content-type")) == "application/json" {
err = json.NewDecoder(req.Body).Decode(r)
@ -819,4 +819,4 @@ func (r *RoleFireTrigger) Fill(req *http.Request) (err error) {
return err
}
var _ RequestFiller = NewRoleFireTrigger()
var _ RequestFiller = NewRoleTriggerScript()

View File

@ -765,17 +765,17 @@ func (r *UserMembershipRemove) Fill(req *http.Request) (err error) {
var _ RequestFiller = NewUserMembershipRemove()
// User fireTrigger request parameters
type UserFireTrigger struct {
// User triggerScript request parameters
type UserTriggerScript struct {
UserID uint64 `json:",string"`
Script string
}
func NewUserFireTrigger() *UserFireTrigger {
return &UserFireTrigger{}
func NewUserTriggerScript() *UserTriggerScript {
return &UserTriggerScript{}
}
func (r UserFireTrigger) Auditable() map[string]interface{} {
func (r UserTriggerScript) Auditable() map[string]interface{} {
var out = map[string]interface{}{}
out["userID"] = r.UserID
@ -784,7 +784,7 @@ func (r UserFireTrigger) Auditable() map[string]interface{} {
return out
}
func (r *UserFireTrigger) Fill(req *http.Request) (err error) {
func (r *UserTriggerScript) Fill(req *http.Request) (err error) {
if strings.ToLower(req.Header.Get("content-type")) == "application/json" {
err = json.NewDecoder(req.Body).Decode(r)
@ -819,4 +819,4 @@ func (r *UserFireTrigger) Fill(req *http.Request) (err error) {
return err
}
var _ RequestFiller = NewUserFireTrigger()
var _ RequestFiller = NewUserTriggerScript()

View File

@ -176,7 +176,7 @@ func (ctrl Role) MemberRemove(ctx context.Context, r *request.RoleMemberRemove)
return resputil.OK(), ctrl.role.With(ctx).MemberRemove(r.RoleID, r.UserID)
}
func (ctrl *Role) FireTrigger(ctx context.Context, r *request.RoleFireTrigger) (rsp interface{}, err error) {
func (ctrl *Role) TriggerScript(ctx context.Context, r *request.RoleTriggerScript) (rsp interface{}, err error) {
var (
role *types.Role
)

View File

@ -132,7 +132,7 @@ func (ctrl User) MembershipRemove(ctx context.Context, r *request.UserMembership
return resputil.OK(), ctrl.role.With(ctx).MemberRemove(r.RoleID, r.UserID)
}
func (ctrl *User) FireTrigger(ctx context.Context, r *request.UserFireTrigger) (rsp interface{}, err error) {
func (ctrl *User) TriggerScript(ctx context.Context, r *request.UserTriggerScript) (rsp interface{}, err error) {
var (
user *types.User
)