mirror of
https://github.com/nabbar/golib.git
synced 2025-10-17 21:30:44 +08:00
Package Status:
- Rework for the management of mandatory components to qualify the global status. - Added qualification to components: "should", "must", "one of". - These qualifications will influence the overall state but not the unitary state of each component. Package Socket: - Creation package to open and listen local unix file socket - Allow to specify a handler who's needing a conn instance as entry - Create a client sub package to allow negociate with the local unix file socket Package Shell: - adding sub package for command and command collection Package Monitor: - add function to expose monitor command for shell Package Config: - add function to expose monitor command for shell Package Network: - Add "IP" protocol Pakcage Httpcli: - Rework the construction of the client - Add capability to specify proxy url Package Cobra: - add function to add flag to global command like verbose or config Package Log: - fix seg fault when calling a nil instance - remove println in hookfile / hooksyslog
This commit is contained in:
@@ -30,30 +30,24 @@ package shell
|
||||
import (
|
||||
"io"
|
||||
|
||||
"github.com/c-bata/go-prompt"
|
||||
|
||||
libshl "github.com/c-bata/go-prompt"
|
||||
liberr "github.com/nabbar/golib/errors"
|
||||
shlcmd "github.com/nabbar/golib/shell/command"
|
||||
)
|
||||
|
||||
type Command interface {
|
||||
Name() string
|
||||
Describe() string
|
||||
Run(buf io.Writer, err io.Writer, args []string)
|
||||
}
|
||||
|
||||
type Shell interface {
|
||||
Run(buf io.Writer, err io.Writer, args []string)
|
||||
Add(prefix string, cmd ...Command)
|
||||
Get(cmd string) []Command
|
||||
Add(prefix string, cmd ...shlcmd.Command)
|
||||
Get(cmd string) []shlcmd.Command
|
||||
Desc(cmd string) map[string]string
|
||||
Walk(fct func(name string, item Command) (Command, liberr.Error)) liberr.Error
|
||||
Walk(fct func(name string, item shlcmd.Command) (shlcmd.Command, liberr.Error)) liberr.Error
|
||||
|
||||
//go prompt
|
||||
RunPrompt(out, err io.Writer, opt ...prompt.Option)
|
||||
RunPrompt(out, err io.Writer, opt ...libshl.Option)
|
||||
}
|
||||
|
||||
func New() Shell {
|
||||
return &shell{
|
||||
c: make(map[string]Command),
|
||||
c: make(map[string]shlcmd.Command),
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user