// package bot_net_conn -- сетевое соединение бота
package bot_net_conn

import (
	"net/http"
	"net/http/cookiejar"
	"time"

	"wartank/pkg/types"
	"wartank/server/serv_bots/warbot/warbot_net/bot_cookie"
)

// БотСетьСокет -- сетевое соединение бота
type БотСетьСокет struct {
	клиент *http.Client         // Фактический клиент бота
	куки   bot_cookie.BotCookie // Кукисы бота
}

// НовБотСетьСокет -- возвращает новое сетевое соединение бота
func НовБотСетьСокет() *БотСетьСокет {
	сам := &БотСетьСокет{
		клиент: &http.Client{
			Transport: nil,
			Jar:       nil,
			Timeout:   time.Second * 10,
		},
		куки: bot_cookie.NewBotCookie(),
	}
	сам.клиент.Jar, _ = cookiejar.New(nil)
	return сам
}

// Клиент -- возвращает сетевого клиента
func (сам *БотСетьСокет) Клиент() *http.Client {
	return сам.клиент
}

// Куки -- возвращает куки клиента
func (сам *БотСетьСокет) Куки() types.ИБотКуки {
	return &сам.куки
}
