- Extract eventHandlers dispatch table - Add per-event handlers: handleSlugChange, handleGetSessions, handleTerminateSession - Introduce sendNode helper to centralize send/error handling and preserve connection-error propagation - Add protoToTunnelType for tunnel-type validation - Map unknown proto.TunnelType to types.UNKNOWN in protoToTunnelType and return a descriptive error - Reduce boilerplate and improve readability of processEventStream
28 lines
477 B
Go
28 lines
477 B
Go
package types
|
|
|
|
type Status string
|
|
|
|
const (
|
|
INITIALIZING Status = "INITIALIZING"
|
|
RUNNING Status = "RUNNING"
|
|
SETUP Status = "SETUP"
|
|
)
|
|
|
|
type TunnelType string
|
|
|
|
const (
|
|
UNKNOWN TunnelType = "UNKNOWN"
|
|
HTTP TunnelType = "HTTP"
|
|
TCP TunnelType = "TCP"
|
|
)
|
|
|
|
type SessionKey struct {
|
|
Id string
|
|
Type TunnelType
|
|
}
|
|
|
|
var BadGatewayResponse = []byte("HTTP/1.1 502 Bad Gateway\r\n" +
|
|
"Content-Length: 11\r\n" +
|
|
"Content-Type: text/plain\r\n\r\n" +
|
|
"Bad Gateway")
|