summaryrefslogtreecommitdiff
path: root/clients/handlers/clienthandler.go
blob: e818b52950932fbbaf9b1d375cce918865be0b3e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package handlers

import (
	"dtail/logger"
)

// ClientHandler is the basic client handler interface.
type ClientHandler struct {
	baseHandler
}

// NewClientHandler creates a new client handler.
func NewClientHandler(server string, pingTimeout int) *ClientHandler {
	logger.Debug(server, "Creating new client handler")

	return &ClientHandler{
		baseHandler{
			server:       server,
			shellStarted: false,
			commands:     make(chan string),
			pong:         make(chan struct{}, 1),
			stop:         make(chan struct{}),
			pingTimeout:  pingTimeout,
		},
	}
}