Update controlSocket.go, mizuRunner.go, and 5 more files...

This commit is contained in:
RamiBerm
2021-05-24 17:06:30 +03:00
parent fbeb7fe9cd
commit 5e6b6544de
7 changed files with 85 additions and 15 deletions

View File

@@ -1,21 +1,35 @@
package shared
type ControlSocketMessageType string
type WebSocketMessageType string
const (
TAPPING_STATUS_MESSAGE_TYPE ControlSocketMessageType = "tappingStatus"
WebSocketMessageTypeEntry WebSocketMessageType = "entry"
WebSocketMessageTypeTappedEntry WebSocketMessageType = "tappedEntry"
WebSocketMessageTypeUpdateStatus WebSocketMessageType = "status"
)
type MizuSocketMessage struct {
MessageType ControlSocketMessageType `json:"messageType"`
Data interface{} `json:"data"`
type WebSocketMessageMetadata struct {
MessageType WebSocketMessageType `json:"messageType,omitempty"`
}
type WebSocketStatusMessage struct {
*WebSocketMessageMetadata
TappingStatus TapStatus `json:"tappingStatus"`
}
type TapStatus struct {
Namespace string `json:"namespace"`
Pods []PodInfo `json:"pods"`
}
type PodInfo struct {
Namespace string `json:"namespace"`
Name string `json:"name"`
}
func CreateWebSocketStatusMessage(tappingStatus TapStatus) WebSocketStatusMessage {
return WebSocketStatusMessage{
WebSocketMessageMetadata: &WebSocketMessageMetadata{
MessageType: WebSocketMessageTypeUpdateStatus,
},
TappingStatus: tappingStatus,
}
}