Use simplified reset on empty input solution
This commit is contained in:
parent
6c77d04284
commit
1d7027905d
@ -81,6 +81,7 @@ func main() {
|
||||
OutputSize: uint32(size),
|
||||
FlagCount: uint32(128),
|
||||
MenuSeparator: menuSeparator,
|
||||
ResetOnEmptyInput: true,
|
||||
}
|
||||
|
||||
if engineDebug {
|
||||
|
@ -96,6 +96,7 @@ func main() {
|
||||
OutputSize: uint32(size),
|
||||
FlagCount: uint32(128),
|
||||
MenuSeparator: menuSeparator,
|
||||
ResetOnEmptyInput: true,
|
||||
}
|
||||
|
||||
if engineDebug {
|
||||
@ -130,7 +131,6 @@ func main() {
|
||||
lhs.SetDataStore(&userdataStore)
|
||||
|
||||
accountService := services.New(ctx, menuStorageService)
|
||||
|
||||
hl, err := lhs.GetHandler(accountService)
|
||||
if err != nil {
|
||||
fmt.Fprintf(os.Stderr, err.Error())
|
||||
@ -190,10 +190,10 @@ func main() {
|
||||
}
|
||||
fmt.Println("")
|
||||
in := bufio.NewReader(os.Stdin)
|
||||
//_, err = fmt.Scanln(&rqs.Input)
|
||||
s, err := in.ReadString('\n')
|
||||
if err != nil {
|
||||
if err == io.EOF {
|
||||
logg.DebugCtxf(ctx, "have EOF, bailing")
|
||||
break
|
||||
}
|
||||
logg.ErrorCtxf(ctx, "error in input", "err", err)
|
||||
|
@ -82,6 +82,7 @@ func main() {
|
||||
OutputSize: uint32(size),
|
||||
FlagCount: uint32(128),
|
||||
MenuSeparator: menuSeparator,
|
||||
ResetOnEmptyInput: true,
|
||||
}
|
||||
|
||||
if engineDebug {
|
||||
|
@ -80,6 +80,7 @@ func main() {
|
||||
FlagCount: uint32(128),
|
||||
MenuSeparator: menuSeparator,
|
||||
EngineDebug: engineDebug,
|
||||
ResetOnEmptyInput: true,
|
||||
}
|
||||
|
||||
menuStorageService := storage.NewMenuStorageService(conns)
|
||||
|
@ -2,10 +2,14 @@ package engine
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
|
||||
"git.defalsify.org/vise.git/engine"
|
||||
"git.defalsify.org/vise.git/resource"
|
||||
"git.defalsify.org/vise.git/logging"
|
||||
)
|
||||
|
||||
var (
|
||||
logg = logging.NewVanilla().WithDomain("sarafu-vise.engine")
|
||||
)
|
||||
|
||||
type SarafuEngine struct {
|
||||
@ -19,13 +23,13 @@ func NewSarafuEngine(cfg engine.Config, rs resource.Resource) *SarafuEngine {
|
||||
}
|
||||
|
||||
func (se *SarafuEngine) Exec(ctx context.Context, input []byte) (bool, error) {
|
||||
if len(input) == 0 {
|
||||
e, ok := se.Engine.(*engine.DefaultEngine)
|
||||
if !ok {
|
||||
return false, fmt.Errorf("")
|
||||
}
|
||||
|
||||
e.Reset(ctx, true)
|
||||
}
|
||||
logg.TraceCtxf(ctx, "sarafu engine exec", "input", input)
|
||||
// if len(input) == 0 {
|
||||
// e := se.Engine.(*engine.DefaultEngine)
|
||||
// v, err := e.Reset(ctx, true)
|
||||
// if err != nil {
|
||||
// return v, err
|
||||
// }
|
||||
// }
|
||||
return se.Engine.Exec(ctx, input)
|
||||
}
|
||||
|
2
go.mod
2
go.mod
@ -3,7 +3,7 @@ module git.grassecon.net/grassrootseconomics/sarafu-vise
|
||||
go 1.23.4
|
||||
|
||||
require (
|
||||
git.defalsify.org/vise.git v0.2.3-0.20250205092758-ea6bfa050eeb
|
||||
git.defalsify.org/vise.git v0.2.3-0.20250205173834-d1f6647211ac
|
||||
git.grassecon.net/grassrootseconomics/common v0.0.0-20250121134736-ba8cbbccea7d
|
||||
git.grassecon.net/grassrootseconomics/sarafu-api v0.0.0-20250123142805-2181388f5bf1
|
||||
git.grassecon.net/grassrootseconomics/visedriver v0.9.0-beta.1.0.20250204132347-1eb0b1555244
|
||||
|
4
go.sum
4
go.sum
@ -1,5 +1,5 @@
|
||||
git.defalsify.org/vise.git v0.2.3-0.20250205092758-ea6bfa050eeb h1:WcNLKynPAXT/djmWJcdgiEsNO4HVSLYiaqclPpMCIK8=
|
||||
git.defalsify.org/vise.git v0.2.3-0.20250205092758-ea6bfa050eeb/go.mod h1:jyBMe1qTYUz3mmuoC9JQ/TvFeW0vTanCUcPu3H8p4Ck=
|
||||
git.defalsify.org/vise.git v0.2.3-0.20250205173834-d1f6647211ac h1:f/E0ZTclVfMEnD/3Alrzzbg+dOm138zGydV42jT0JPw=
|
||||
git.defalsify.org/vise.git v0.2.3-0.20250205173834-d1f6647211ac/go.mod h1:jyBMe1qTYUz3mmuoC9JQ/TvFeW0vTanCUcPu3H8p4Ck=
|
||||
git.grassecon.net/grassrootseconomics/common v0.0.0-20250121134736-ba8cbbccea7d h1:5mzLas+jxTUtusOKx4XvU+n2QvrV/mH17MnJRy46siQ=
|
||||
git.grassecon.net/grassrootseconomics/common v0.0.0-20250121134736-ba8cbbccea7d/go.mod h1:wgQJZGIS6QuNLHqDhcsvehsbn5PvgV7aziRebMnJi60=
|
||||
git.grassecon.net/grassrootseconomics/sarafu-api v0.0.0-20250123142805-2181388f5bf1 h1:BJHfokTHzrw9QjQ+4s2HmSER0iBPuE7byW5oQC2zLIQ=
|
||||
|
@ -8,12 +8,17 @@ import (
|
||||
"git.defalsify.org/vise.git/engine"
|
||||
"git.defalsify.org/vise.git/persist"
|
||||
"git.defalsify.org/vise.git/resource"
|
||||
"git.defalsify.org/vise.git/logging"
|
||||
|
||||
"git.grassecon.net/grassrootseconomics/sarafu-api/remote"
|
||||
sarafu_engine "git.grassecon.net/grassrootseconomics/sarafu-vise/engine"
|
||||
// sarafu_engine "git.grassecon.net/grassrootseconomics/sarafu-vise/engine"
|
||||
"git.grassecon.net/grassrootseconomics/sarafu-vise/handlers/application"
|
||||
)
|
||||
|
||||
var (
|
||||
logg = logging.NewVanilla().WithDomain("sarafu-vise.engine")
|
||||
)
|
||||
|
||||
type HandlerService interface {
|
||||
GetHandler() (*application.MenuHandlers, error)
|
||||
}
|
||||
@ -126,8 +131,10 @@ func (ls *LocalHandlerService) GetHandler(accountService remote.AccountService)
|
||||
}
|
||||
|
||||
func (ls *LocalHandlerService) GetEngine(cfg engine.Config, rs resource.Resource, pr *persist.Persister) engine.Engine {
|
||||
se := sarafu_engine.NewSarafuEngine(cfg, rs)
|
||||
en := se.Engine.(*engine.DefaultEngine)
|
||||
//logg.Tracef("creating new engine")
|
||||
//se := sarafu_engine.NewSarafuEngine(cfg, rs)
|
||||
//en := se.Engine.(*engine.DefaultEngine)
|
||||
en := engine.NewEngine(cfg, rs)
|
||||
if ls.first != nil {
|
||||
en = en.WithFirst(ls.first)
|
||||
}
|
||||
@ -135,6 +142,6 @@ func (ls *LocalHandlerService) GetEngine(cfg engine.Config, rs resource.Resource
|
||||
if cfg.EngineDebug {
|
||||
en = en.WithDebug(nil)
|
||||
}
|
||||
|
||||
return se
|
||||
//return se
|
||||
return en
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user