|
@@ -88,18 +88,22 @@ func (item *BindItem[I, O]) bind(r *router.Router, bindingResponseIdentifier res
|
|
|
responseIdentifier = bindingResponseIdentifier
|
|
|
}
|
|
|
|
|
|
- var inputModel I
|
|
|
+ var req any
|
|
|
+ if inputType != nil {
|
|
|
+ var inputModel I
|
|
|
+ req = &inputModel
|
|
|
+ }
|
|
|
|
|
|
|
|
|
- if responseIdentifier != nil || inputType != nil {
|
|
|
+ if responseIdentifier != nil || req != nil {
|
|
|
|
|
|
if item.OptionalBindingFunc != nil {
|
|
|
- ok := item.OptionalBindingFunc(mqttClientInstance, routerItem, &inputModel, item.ResponseFunc)
|
|
|
+ ok := item.OptionalBindingFunc(mqttClientInstance, routerItem, req, item.ResponseFunc)
|
|
|
if !ok {
|
|
|
return
|
|
|
}
|
|
|
} else {
|
|
|
- ok := request.BindingJson(mqttClientInstance, routerItem, &inputModel, responseIdentifier, item.ResponseFunc)
|
|
|
+ ok := request.BindingJson(mqttClientInstance, routerItem, req, responseIdentifier, item.ResponseFunc)
|
|
|
if !ok {
|
|
|
return
|
|
|
}
|
|
@@ -108,7 +112,7 @@ func (item *BindItem[I, O]) bind(r *router.Router, bindingResponseIdentifier res
|
|
|
|
|
|
|
|
|
if item.BusinessFunc != nil {
|
|
|
- outputModel, err := item.BusinessFunc(mqttClientInstance, inputModel)
|
|
|
+ outputModel, err := item.BusinessFunc(mqttClientInstance, req)
|
|
|
item.ResponseFunc(mqttClientInstance, routerItem, responseIdentifier, outputModel, err)
|
|
|
return
|
|
|
}
|