diff options
Diffstat (limited to 'lib/apiv1')
-rw-r--r-- | lib/apiv1/config.go | 22 | ||||
-rw-r--r-- | lib/apiv1/events.go | 77 | ||||
-rw-r--r-- | lib/apiv1/exec.go | 64 | ||||
-rw-r--r-- | lib/apiv1/projects.go | 38 | ||||
-rw-r--r-- | lib/apiv1/sdks.go | 11 | ||||
-rw-r--r-- | lib/apiv1/version.go | 15 |
6 files changed, 0 insertions, 227 deletions
diff --git a/lib/apiv1/config.go b/lib/apiv1/config.go deleted file mode 100644 index f5c1fb5..0000000 --- a/lib/apiv1/config.go +++ /dev/null @@ -1,22 +0,0 @@ -package apiv1 - -// APIConfig parameters (json format) of /config command -type APIConfig struct { - Servers []ServerCfg `json:"servers"` - - // Not exposed outside in JSON - Version string `json:"-"` - APIVersion string `json:"-"` - VersionGitTag string `json:"-"` -} - -// ServerCfg . -type ServerCfg struct { - ID string `json:"id"` - URL string `json:"url"` - APIURL string `json:"apiUrl"` - PartialURL string `json:"partialUrl"` - ConnRetry int `json:"connRetry"` - Connected bool `json:"connected"` - Disabled bool `json:"disabled"` -} diff --git a/lib/apiv1/events.go b/lib/apiv1/events.go deleted file mode 100644 index b2fda62..0000000 --- a/lib/apiv1/events.go +++ /dev/null @@ -1,77 +0,0 @@ -package apiv1 - -import ( - "encoding/json" - "fmt" -) - -// EventRegisterArgs is the parameters (json format) of /events/register command -type EventRegisterArgs struct { - Name string `json:"name"` - ProjectID string `json:"filterProjectID"` -} - -// EventUnRegisterArgs is the parameters (json format) of /events/unregister command -type EventUnRegisterArgs struct { - Name string `json:"name"` - ID int `json:"id"` -} - -// Events Type definitions -const ( - // EventTypePrefix Used as event prefix - EventTypePrefix = "event:" // following by event type - - // Supported Events type - EVTAll = EventTypePrefix + "all" - EVTServerConfig = EventTypePrefix + "server-config" // type EventMsg with Data type apiv1.ServerCfg - EVTProjectAdd = EventTypePrefix + "project-add" // type EventMsg with Data type apiv1.ProjectConfig - EVTProjectDelete = EventTypePrefix + "project-delete" // type EventMsg with Data type apiv1.ProjectConfig - EVTProjectChange = EventTypePrefix + "project-state-change" // type EventMsg with Data type apiv1.ProjectConfig -) - -// EVTAllList List of all supported events -var EVTAllList = []string{ - EVTServerConfig, - EVTProjectAdd, - EVTProjectDelete, - EVTProjectChange, -} - -// EventMsg Event message send over Websocket, data format depend to Type (see DecodeXXX function) -type EventMsg struct { - Time string `json:"time"` // Timestamp - FromSessionID string `json:"sessionID"` // Session ID of client that emits this event - Type string `json:"type"` // Data type - Data interface{} `json:"data"` // Data -} - -// DecodeServerCfg Helper to decode Data field type ServerCfg -func (e *EventMsg) DecodeServerCfg() (ServerCfg, error) { - p := ServerCfg{} - if e.Type != EVTServerConfig { - return p, fmt.Errorf("Invalid type") - } - d, err := json.Marshal(e.Data) - if err == nil { - err = json.Unmarshal(d, &p) - } - return p, err -} - -// DecodeProjectConfig Helper to decode Data field type ProjectConfig -func (e *EventMsg) DecodeProjectConfig() (ProjectConfig, error) { - var err error - p := ProjectConfig{} - switch e.Type { - case EVTProjectAdd, EVTProjectChange, EVTProjectDelete: - d := []byte{} - d, err = json.Marshal(e.Data) - if err == nil { - err = json.Unmarshal(d, &p) - } - default: - err = fmt.Errorf("Invalid type") - } - return p, err -} diff --git a/lib/apiv1/exec.go b/lib/apiv1/exec.go deleted file mode 100644 index 914ed79..0000000 --- a/lib/apiv1/exec.go +++ /dev/null @@ -1,64 +0,0 @@ -package apiv1 - -type ( - // ExecArgs JSON parameters of /exec command - ExecArgs struct { - ID string `json:"id" binding:"required"` - SdkID string `json:"sdkID"` // sdk ID to use for setting env - CmdID string `json:"cmdID"` // command unique ID - Cmd string `json:"cmd" binding:"required"` - Args []string `json:"args"` - Env []string `json:"env"` - RPath string `json:"rpath"` // relative path into project - TTY bool `json:"tty"` // Use a tty, specific to gdb --tty option - TTYGdbserverFix bool `json:"ttyGdbserverFix"` // Set to true to activate gdbserver workaround about inferior output - ExitImmediate bool `json:"exitImmediate"` // when true, exit event sent immediately when command exited (IOW, don't wait file synchronization) - CmdTimeout int `json:"timeout"` // command completion timeout in Second - } - - // ExecInMsg Message used to received input characters (stdin) - ExecInMsg struct { - CmdID string `json:"cmdID"` - Timestamp string `json:"timestamp"` - Stdin string `json:"stdin"` - } - - // ExecOutMsg Message used to send output characters (stdout+stderr) - ExecOutMsg struct { - CmdID string `json:"cmdID"` - Timestamp string `json:"timestamp"` - Stdout string `json:"stdout"` - Stderr string `json:"stderr"` - } - - // ExecExitMsg Message sent when executed command exited - ExecExitMsg struct { - CmdID string `json:"cmdID"` - Timestamp string `json:"timestamp"` - Code int `json:"code"` - Error error `json:"error"` - } - - // ExecSignalArgs JSON parameters of /exec/signal command - ExecSignalArgs struct { - CmdID string `json:"cmdID" binding:"required"` // command id - Signal string `json:"signal" binding:"required"` // signal number - } -) - -const ( - // ExecInEvent Event send in WS when characters are sent (stdin) - ExecInEvent = "exec:input" - - // ExecOutEvent Event send in WS when characters are received (stdout or stderr) - ExecOutEvent = "exec:output" - - // ExecExitEvent Event send in WS when program exited - ExecExitEvent = "exec:exit" - - // ExecInferiorInEvent Event send in WS when characters are sent to an inferior (used by gdb inferior/tty) - ExecInferiorInEvent = "exec:inferior-input" - - // ExecInferiorOutEvent Event send in WS when characters are received by an inferior - ExecInferiorOutEvent = "exec:inferior-output" -) diff --git a/lib/apiv1/projects.go b/lib/apiv1/projects.go deleted file mode 100644 index b1e64c8..0000000 --- a/lib/apiv1/projects.go +++ /dev/null @@ -1,38 +0,0 @@ -package apiv1 - -// ProjectType definition -type ProjectType string - -const ( - TypePathMap = "PathMap" - TypeCloudSync = "CloudSync" - TypeCifsSmb = "CIFS" -) - -// Project Status definition -const ( - StatusErrorConfig = "ErrorConfig" - StatusDisable = "Disable" - StatusEnable = "Enable" - StatusPause = "Pause" - StatusSyncing = "Syncing" -) - -// ProjectConfig is the config for one project -type ProjectConfig struct { - ID string `json:"id"` - ServerID string `json:"serverId"` - Label string `json:"label"` - ClientPath string `json:"clientPath"` - ServerPath string `json:"serverPath"` - Type ProjectType `json:"type"` - Status string `json:"status"` - IsInSync bool `json:"isInSync"` - DefaultSdk string `json:"defaultSdk"` - ClientData string `json:"clientData"` // free form field that can used by client -} - -// ProjectConfigUpdatableFields List fields that can be updated using Update function -var ProjectConfigUpdatableFields = []string{ - "Label", "DefaultSdk", "ClientData", -} diff --git a/lib/apiv1/sdks.go b/lib/apiv1/sdks.go deleted file mode 100644 index dfa44e2..0000000 --- a/lib/apiv1/sdks.go +++ /dev/null @@ -1,11 +0,0 @@ -package apiv1 - -// SDK Define a cross tool chain used to build application -type SDK struct { - ID string `json:"id" binding:"required"` - Name string `json:"name"` - Profile string `json:"profile"` - Version string `json:"version"` - Arch string `json:"arch"` - Path string `json:"path"` -} diff --git a/lib/apiv1/version.go b/lib/apiv1/version.go deleted file mode 100644 index 956f890..0000000 --- a/lib/apiv1/version.go +++ /dev/null @@ -1,15 +0,0 @@ -package apiv1 - -// VersionData -type VersionData struct { - ID string `json:"id"` - Version string `json:"version"` - APIVersion string `json:"apiVersion"` - VersionGitTag string `json:"gitTag"` -} - -// XDSVersion -type XDSVersion struct { - Client VersionData `json:"client"` - Server []VersionData `json:"servers"` -} |