fix: Move more directories

This commit is contained in:
Wanjohi
2025-09-06 16:50:44 +03:00
parent 1c1c73910b
commit 9818165a90
248 changed files with 9 additions and 9566 deletions

View File

@@ -0,0 +1,52 @@
package realtime
import (
"encoding/json"
)
// BaseMessage is the generic top-level message structure
type BaseMessage struct {
Type string `json:"type"`
Payload json.RawMessage `json:"payload"`
}
type CreatePayload struct{}
type StartPayload struct {
ContainerID string `json:"container_id"`
}
type StopPayload struct {
ContainerID string `json:"container_id"`
}
// ParseMessage parses a BaseMessage and returns the specific payload
func ParseMessage(data []byte) (BaseMessage, interface{}, error) {
var base BaseMessage
if err := json.Unmarshal(data, &base); err != nil {
return base, nil, err
}
switch base.Type {
case "create":
var payload CreatePayload
if err := json.Unmarshal(base.Payload, &payload); err != nil {
return base, nil, err
}
return base, payload, nil
case "start":
var payload StartPayload
if err := json.Unmarshal(base.Payload, &payload); err != nil {
return base, nil, err
}
return base, payload, nil
case "stop":
var payload StopPayload
if err := json.Unmarshal(base.Payload, &payload); err != nil {
return base, nil, err
}
return base, payload, nil
default:
return base, base.Payload, nil
}
}