blob: a6a582e6cad9ee0fde6ddefa79d409722df3fbfc [file] [log] [blame]
package commands
import (
"fmt"
"v.io/v23"
"v.io/v23/context"
"v.io/x/lib/cmdline"
"v.io/x/ref/lib/v23cmd"
)
var Commands = []*cmdline.Command{
&cmdline.Command{
Name: "dump",
Short: "Print a dump of the database",
Long: `Print a dump of the database.`,
Runner: v23cmd.RunnerFuncWithInit(DumpDB, InitCtx),
},
}
var commandCtx *context.T
func SetCtx(ctx *context.T) {
commandCtx = ctx
}
func InitCtx() (*context.T, v23.Shutdown, error) {
if commandCtx == nil {
return v23.TryInit()
} else {
return commandCtx, dummyShutdown, nil
}
}
func dummyShutdown() {}
func GetCommand(name string) (*cmdline.Command, error) {
for _, cmd := range Commands {
if cmd.Name == name {
return cmd, nil
}
}
return nil, fmt.Errorf("no command %q", name)
}