initial import of sources

This commit is contained in:
2022-06-29 14:31:00 +02:00
commit d5e5fd3700
31 changed files with 2274 additions and 0 deletions

7
example/srv/.gitignore vendored Normal file
View File

@@ -0,0 +1,7 @@
*~
*.bak
*.bin
*.png
*.gif
*.jpg
*srv

68
example/srv/netsrv.go Normal file
View File

@@ -0,0 +1,68 @@
/*
*
* Copyright 2022 Oleg Borodin <borodin@unix7.org>
*
*/
package main
import (
"log"
"github.com/kindsoldier/dsrpc"
"netsrv/api"
)
func main() {
err := server()
if err != nil {
log.Println(err)
}
}
func server() error {
var err error
serv := dsrpc.NewService()
cont := NewController()
serv.Handler(api.HelloMethod, cont.HelloHandler)
serv.PreMiddleware(dsrpc.LogRequest)
serv.PostMiddleware(dsrpc.LogResponse)
serv.PostMiddleware(dsrpc.LogAccess)
err = serv.Listen(":8081")
if err != nil {
return err
}
return err
}
type Controller struct {
}
func NewController() *Controller {
return &Controller{}
}
func (cont *Controller) HelloHandler(context *dsrpc.Context) error {
var err error
params := api.NewHelloParams()
err = context.BindParams(params)
if err != nil {
return err
}
log.Println("hello message:", params.Message)
result := api.NewHelloResult()
result.Message = "hello!"
err = context.SendResult(result, 0)
if err != nil {
return err
}
return err
}