From d55bb8812b5311d76c92e3fac6eee0f9794ce877 Mon Sep 17 00:00:00 2001 From: sawka Date: Wed, 31 Aug 2022 23:12:26 -0700 Subject: [PATCH] finishing up historytype and making remotes update --- cmd/main-server.go | 7 ++++++- pkg/cmdrunner/cmdrunner.go | 5 +++++ pkg/remote/remote.go | 2 +- pkg/sstore/updatebus.go | 11 ++++++----- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/cmd/main-server.go b/cmd/main-server.go index a7abf503..65cbbe22 100644 --- a/cmd/main-server.go +++ b/cmd/main-server.go @@ -158,7 +158,12 @@ func HandleGetRemotes(w http.ResponseWriter, r *http.Request) { w.Header().Set("Vary", "Origin") w.Header().Set("Cache-Control", "no-cache") remotes := remote.GetAllRemoteRuntimeState() - WriteJsonSuccess(w, remotes) + ifarr := make([]interface{}, len(remotes)) + for idx, r := range remotes { + ifarr[idx] = r + } + update := sstore.ModelUpdate{Remotes: ifarr} + WriteJsonSuccess(w, update) return } diff --git a/pkg/cmdrunner/cmdrunner.go b/pkg/cmdrunner/cmdrunner.go index 1e0ceea8..d265f600 100644 --- a/pkg/cmdrunner/cmdrunner.go +++ b/pkg/cmdrunner/cmdrunner.go @@ -70,6 +70,7 @@ func init() { registerCmdAlias("remote", RemoteCommand) registerCmdFn("remote:show", RemoteShowCommand) registerCmdFn("remote:showall", RemoteShowAllCommand) + registerCmdFn("remote:new", RemoteNewCommand) registerCmdFn("history", HistoryCommand) } @@ -360,6 +361,10 @@ func UnSetCommand(ctx context.Context, pk *scpacket.FeCommandPacketType) (sstore return update, nil } +func RemoteNewCommand(ctx context.Context, pk *scpacket.FeCommandPacketType) (sstore.UpdatePacket, error) { + return nil, nil +} + func RemoteShowCommand(ctx context.Context, pk *scpacket.FeCommandPacketType) (sstore.UpdatePacket, error) { ids, err := resolveUiIds(ctx, pk, R_Session|R_Window|R_Remote) if err != nil { diff --git a/pkg/remote/remote.go b/pkg/remote/remote.go index baa3eaaa..050ded8a 100644 --- a/pkg/remote/remote.go +++ b/pkg/remote/remote.go @@ -273,7 +273,7 @@ func (proc *MShellProc) GetRemoteRuntimeState() RemoteRuntimeState { func (msh *MShellProc) NotifyUpdate() { rstate := msh.GetRemoteRuntimeState() - update := &sstore.ModelUpdate{Remote: rstate} + update := &sstore.ModelUpdate{Remotes: []interface{}{rstate}} sstore.MainBus.SendUpdate("", update) } diff --git a/pkg/sstore/updatebus.go b/pkg/sstore/updatebus.go index f1c8ef87..0e09578d 100644 --- a/pkg/sstore/updatebus.go +++ b/pkg/sstore/updatebus.go @@ -31,7 +31,7 @@ type ModelUpdate struct { Cmd *CmdType `json:"cmd,omitempty"` CmdLine *CmdLineType `json:"cmdline,omitempty"` Info *InfoMsgType `json:"info,omitempty"` - Remote interface{} `json:"remote,omitempty"` // *remote.RemoteState + Remotes []interface{} `json:"remotes,omitempty"` // []*remote.RemoteState History *HistoryInfoType `json:"history,omitempty"` } @@ -76,10 +76,11 @@ type InfoMsgType struct { } type HistoryInfoType struct { - SessionId string `json:"sessionid,omitempty"` - WindowId string `json:"windowid,omitempty"` - Items []*HistoryItemType `json:"items"` - Show bool `json:"show"` + HistoryType string `json:"historytype"` + SessionId string `json:"sessionid,omitempty"` + WindowId string `json:"windowid,omitempty"` + Items []*HistoryItemType `json:"items"` + Show bool `json:"show"` } type CmdLineType struct {