mirror of
https://shylinux.com/x/icebergs
synced 2025-05-03 20:07:01 +08:00
opt route
This commit is contained in:
parent
be8e8e67e6
commit
15b92fb167
@ -9,7 +9,7 @@ import (
|
||||
|
||||
func _context_list(m *ice.Message, sub *ice.Context, name string) {
|
||||
m.Travel(func(p *ice.Context, s *ice.Context) {
|
||||
if name != "" && !strings.HasPrefix(s.Cap(ice.CTX_FOLLOW), name+ice.PT) {
|
||||
if name != "" && name != "ice" && !strings.HasPrefix(s.Cap(ice.CTX_FOLLOW), name+ice.PT) {
|
||||
return
|
||||
}
|
||||
m.Push(kit.MDB_NAME, s.Cap(ice.CTX_FOLLOW))
|
||||
|
@ -112,16 +112,29 @@ func init() {
|
||||
m.ProcessInner()
|
||||
}},
|
||||
ctx.COMMAND: {Name: "command", Help: "命令", Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Debug(m.Option(ROUTE))
|
||||
m.Cmdy(SPACE, m.Option(ROUTE), kit.Keys(m.Option(ice.CTX), m.Option(ice.CMD)), arg)
|
||||
}},
|
||||
ice.RUN: {Name: "run", Help: "执行", Hand: func(m *ice.Message, arg ...string) {
|
||||
m.Cmdy(SPACE, m.Option(ROUTE), arg)
|
||||
}},
|
||||
"spide": {Name: "spide", Help: "架构图", Hand: func(m *ice.Message, arg ...string) {
|
||||
if len(arg) == 0 { // 模块列表
|
||||
m.Cmdy(ROUTE)
|
||||
if m.Option("route") == "" { // 机器列表 route
|
||||
m.Cmdy(ROUTE).Cut("route")
|
||||
m.Display("/plugin/story/spide.js", "root", ice.ICE, "field", "route", "split", ice.PT, "prefix", "spide")
|
||||
m.StatusTimeCount()
|
||||
return
|
||||
}
|
||||
if m.Option("context") == "" { // 模块列表 context
|
||||
m.Cmdy(SPACE, m.Option("route"), ctx.CONTEXT, "ice", "context")
|
||||
m.Cut("name").RenameAppend("name", "context")
|
||||
return
|
||||
}
|
||||
if m.Option("name") == "" { // 命令列表 name
|
||||
m.Cmdy(SPACE, m.Option("route"), ctx.CONTEXT, "spide", "", m.Option("context"), m.Option("context"))
|
||||
m.Cut("name")
|
||||
return
|
||||
}
|
||||
// 命令详情 index name help meta list
|
||||
m.Cmdy(SPACE, m.Option("route"), ctx.CONTEXT, "spide", "", m.Option("context"), m.Option("name"))
|
||||
}},
|
||||
}, Hand: func(m *ice.Message, c *ice.Context, cmd string, arg ...string) {
|
||||
if len(arg) == 0 || arg[0] == "" { // 路由列表
|
||||
|
9
meta.go
9
meta.go
@ -77,6 +77,9 @@ func (m *Message) Add(key string, arg ...string) *Message {
|
||||
m.meta[MSG_OPTION][i] = ""
|
||||
delete(m.meta, arg[0])
|
||||
}
|
||||
if kit.IndexOf(m.meta[key], arg[0]) == -1 {
|
||||
m.meta[arg[0]] = []string{}
|
||||
}
|
||||
}
|
||||
|
||||
if kit.IndexOf(m.meta[key], arg[0]) == -1 {
|
||||
@ -190,12 +193,6 @@ func (m *Message) Copy(msg *Message, arg ...string) *Message {
|
||||
m.Add(MSG_OPTION, kit.Simple(k, msg.meta[k])...)
|
||||
}
|
||||
}
|
||||
for _, k := range msg.meta[MSG_APPEND] {
|
||||
if i := kit.IndexOf(m.meta[MSG_OPTION], k); i > -1 {
|
||||
m.meta[MSG_OPTION][i] = ""
|
||||
delete(m.meta, k)
|
||||
}
|
||||
}
|
||||
for _, k := range msg.meta[MSG_APPEND] {
|
||||
m.Add(MSG_APPEND, kit.Simple(k, msg.meta[k])...)
|
||||
}
|
||||
|
3
misc.go
3
misc.go
@ -110,6 +110,9 @@ func (m *Message) OptionCB(key string, cb ...interface{}) interface{} {
|
||||
func (m *Message) OptionUserWeb() *url.URL {
|
||||
return kit.ParseURL(m.Option(MSG_USERWEB))
|
||||
}
|
||||
func (m *Message) SetAppend(arg ...string) *Message {
|
||||
return m.Set(MSG_APPEND, arg...)
|
||||
}
|
||||
func (m *Message) RenameAppend(from, to string) {
|
||||
for i, v := range m.meta[MSG_APPEND] {
|
||||
if v == from {
|
||||
|
Loading…
x
Reference in New Issue
Block a user