forked from x/icebergs
opt some
This commit is contained in:
parent
050e796486
commit
15afccc923
@ -20,6 +20,7 @@ func init() {
|
||||
mdb.ZoneInsert(m, m.OptionSimple(EVENT, ice.CMD))
|
||||
}},
|
||||
HAPPEN: {Name: "happen event", Help: "触发", Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Debug(m.FormatChain())
|
||||
defer m.Cost()
|
||||
m.OptionCB(mdb.SELECT, "")
|
||||
mdb.ZoneSelect(m.Spawn(ice.OptionFields("")), m.Option(EVENT)).Tables(func(value ice.Maps) {
|
||||
|
@ -57,7 +57,7 @@ const BROAD = "broad"
|
||||
|
||||
func init() {
|
||||
Index.MergeCommands(ice.Commands{
|
||||
BROAD: {Name: "broad hash auto serve", Help: "广播", Actions: ice.MergeActions(ice.Actions{
|
||||
BROAD: {Name: "broad hash auto", Help: "广播", Actions: ice.MergeActions(ice.Actions{
|
||||
SERVE: {Name: "serve port=9020", Hand: func(m *ice.Message, arg ...string) {
|
||||
_broad_serve(m, m.Cmd(tcp.HOST).Append(aaa.IP), m.Option(tcp.PORT))
|
||||
}},
|
||||
|
@ -19,7 +19,7 @@ func _dream_list(m *ice.Message) *ice.Message {
|
||||
list := m.CmdMap(SPACE, mdb.NAME)
|
||||
m.Cmdy(nfs.DIR, ice.USR_LOCAL_WORK, "time,size,name").Tables(func(value ice.Maps) {
|
||||
if space, ok := list[value[mdb.NAME]]; ok {
|
||||
msg := gdb.Event(m.Spawn(), DREAM_TABLES, mdb.NAME, value[mdb.NAME], mdb.TYPE, space[mdb.TYPE]).Copy(m.Spawn().PushButton(cli.STOP))
|
||||
msg := gdb.Event(m.Spawn(value, space), DREAM_TABLES).Copy(m.Spawn().PushButton(cli.STOP))
|
||||
m.Push(mdb.TYPE, space[mdb.TYPE])
|
||||
m.Push(cli.STATUS, cli.START)
|
||||
m.Push(mdb.TEXT, msg.Append(mdb.TEXT))
|
||||
@ -49,23 +49,22 @@ func _dream_show(m *ice.Message, name string) {
|
||||
m.Info("already exists %v", name)
|
||||
return
|
||||
}
|
||||
nfs.MkdirAll(m, p)
|
||||
_dream_template(m, p)
|
||||
m.Optionv(cli.CMD_DIR, kit.Path(p))
|
||||
m.Optionv(cli.CMD_ENV, kit.Simple(
|
||||
cli.CTX_OPS, "http://:"+m.CmdAppend(SERVE, tcp.PORT),
|
||||
defer ToastProcess(m)()
|
||||
defer m.Sleep3s()
|
||||
m.Options(cli.CMD_DIR, kit.Path(p), cli.CMD_ENV, kit.Simple(
|
||||
cli.CTX_OPS, "http://localhost:"+m.CmdAppend(SERVE, tcp.PORT),
|
||||
cli.PATH, cli.BinPath(kit.Path(p, ice.BIN)), cli.USER, ice.Info.UserName,
|
||||
kit.EnvSimple(cli.HOME, cli.TERM, cli.SHELL), m.Configv(cli.ENV),
|
||||
))
|
||||
m.Optionv(cli.CMD_OUTPUT, path.Join(p, ice.BIN_BOOT_LOG))
|
||||
defer m.Options(cli.CMD_DIR, "", cli.CMD_ENV, "", cli.CMD_OUTPUT, "")
|
||||
gdb.Event(m, DREAM_CREATE, m.OptionSimple(mdb.NAME, mdb.TYPE))
|
||||
defer ToastProcess(m)()
|
||||
bin := kit.Select(os.Args[0], cli.SystemFind(m, ice.ICE_BIN, nfs.PWD+path.Join(p, ice.BIN), nfs.PWD+ice.BIN))
|
||||
m.Cmd(cli.DAEMON, bin, SPACE, tcp.DIAL, ice.DEV, ice.OPS, mdb.TYPE, WORKER, m.OptionSimple(mdb.NAME, RIVER), cli.DAEMON, ice.OPS)
|
||||
m.Sleep3s()
|
||||
}
|
||||
func _dream_template(m *ice.Message, p string) {
|
||||
nfs.MkdirAll(m, p)
|
||||
if m.Option(nfs.TEMPLATE) == "" {
|
||||
return
|
||||
}
|
||||
@ -102,7 +101,7 @@ func init() {
|
||||
mdb.INPUTS: {Hand: func(m *ice.Message, arg ...string) {
|
||||
switch arg[0] {
|
||||
case mdb.NAME, nfs.TEMPLATE:
|
||||
_dream_list(m).Cut(arg[0], "status,time")
|
||||
_dream_list(m).Cut("name,status,time")
|
||||
default:
|
||||
gdb.Event(m, "", arg)
|
||||
}
|
||||
@ -128,8 +127,15 @@ func init() {
|
||||
}
|
||||
}
|
||||
}},
|
||||
OPEN: {Hand: func(m *ice.Message, arg ...string) { ProcessIframe(m, MergePod(m, m.Option(mdb.NAME)), arg...) }},
|
||||
}, ctx.CmdAction(), gdb.EventsAction(DREAM_OPEN)), Hand: func(m *ice.Message, arg ...string) {
|
||||
DREAM_TABLES: {Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Debug(m.FormatChain())
|
||||
switch m.Option(mdb.TYPE) {
|
||||
case SERVER, WORKER:
|
||||
m.PushButton(OPEN)
|
||||
}
|
||||
}},
|
||||
OPEN: {Hand: func(m *ice.Message, arg ...string) { ctx.ProcessOpen(m, MergePod(m, m.Option(mdb.NAME), arg)) }},
|
||||
}, ctx.CmdAction(), DreamAction()), Hand: func(m *ice.Message, arg ...string) {
|
||||
if len(arg) == 0 {
|
||||
_dream_list(m)
|
||||
} else if arg[0] == ctx.ACTION {
|
||||
@ -142,9 +148,5 @@ func init() {
|
||||
}
|
||||
|
||||
func DreamAction() ice.Actions {
|
||||
return ice.MergeActions(ice.Actions{
|
||||
DREAM_INPUTS: {Hand: func(m *ice.Message, arg ...string) {}},
|
||||
DREAM_TABLES: {Hand: func(m *ice.Message, arg ...string) {}},
|
||||
DREAM_ACTION: {Hand: func(m *ice.Message, arg ...string) {}},
|
||||
}, gdb.EventAction(DREAM_TABLES, DREAM_ACTION))
|
||||
return gdb.EventsAction(DREAM_OPEN, DREAM_INPUTS, DREAM_TABLES, DREAM_ACTION)
|
||||
}
|
||||
|
@ -151,15 +151,12 @@ const SERVE = "serve"
|
||||
func init() {
|
||||
Index.MergeCommands(ice.Commands{
|
||||
SERVE: {Name: "serve name auto start", Help: "服务器", Actions: ice.MergeActions(ice.Actions{
|
||||
ice.CTX_INIT: {Hand: func(m *ice.Message, arg ...string) {
|
||||
cli.NodeInfo(m, ice.Info.PathName, WORKER)
|
||||
aaa.White(m, LOGIN)
|
||||
}},
|
||||
ice.CTX_INIT: {Hand: func(m *ice.Message, arg ...string) { cli.NodeInfo(m, ice.Info.PathName, WORKER) }},
|
||||
cli.START: {Name: "start dev name=web proto=http host port=9020 nodename username usernick", Hand: func(m *ice.Message, arg ...string) {
|
||||
_serve_start(m)
|
||||
}},
|
||||
SERVE_START: {Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Sleep("30ms", ssh.PRINTF, kit.Dict(nfs.CONTENT, "\r"+ice.Render(m, ice.RENDER_QRCODE, m.Cmdx(SPACE, DOMAIN))+ice.NL))
|
||||
m.Sleep30ms().Cmd(ssh.PRINTF, kit.Dict(nfs.CONTENT, "\r"+ice.Render(m, ice.RENDER_QRCODE, m.Cmdx(SPACE, DOMAIN))+ice.NL))
|
||||
}},
|
||||
SERVE_REWRITE: {Hand: func(m *ice.Message, arg ...string) {
|
||||
if arg[0] != SPIDE_GET {
|
||||
|
@ -224,9 +224,5 @@ func back(m *ice.Message, res *ice.Message) bool {
|
||||
}
|
||||
return false
|
||||
}
|
||||
func addSend(m *ice.Message, msg *ice.Message) string {
|
||||
return m.Target().Server().(*Frame).addSend(kit.Format(m.Target().ID()), msg)
|
||||
}
|
||||
func getSend(m *ice.Message, key string) *ice.Message {
|
||||
return m.Target().Server().(*Frame).getSend(key)
|
||||
}
|
||||
func addSend(m *ice.Message, msg *ice.Message) string { return m.Target().Server().(*Frame).addSend(kit.Format(m.Target().ID()), msg) }
|
||||
func getSend(m *ice.Message, key string) *ice.Message { return m.Target().Server().(*Frame).getSend(key) }
|
||||
|
@ -10,7 +10,6 @@ import (
|
||||
"shylinux.com/x/icebergs/base/ctx"
|
||||
"shylinux.com/x/icebergs/base/gdb"
|
||||
"shylinux.com/x/icebergs/base/mdb"
|
||||
"shylinux.com/x/icebergs/base/nfs"
|
||||
"shylinux.com/x/icebergs/base/tcp"
|
||||
kit "shylinux.com/x/toolkits"
|
||||
"shylinux.com/x/toolkits/task"
|
||||
|
2
type.go
2
type.go
@ -344,7 +344,7 @@ func (m *Message) Spawn(arg ...Any) *Message {
|
||||
time: time.Now(), code: int(m.target.root.ID()),
|
||||
meta: map[string][]string{}, data: Map{},
|
||||
message: m, root: m.root,
|
||||
source: m.target, target: m.target, _cmd: m._cmd, _key: m._key, _sub: m._sub,
|
||||
source: m.target, target: m.target, _cmd: m._cmd, _key: m._key, _sub: m._sub, _target: logs.FileLine(2),
|
||||
W: m.W, R: m.R, O: m.O, I: m.I,
|
||||
}
|
||||
for _, val := range arg {
|
||||
|
Loading…
x
Reference in New Issue
Block a user