|
|
@@ -16,12 +16,19 @@ import (
|
|
16
|
16
|
|
|
17
|
17
|
const middleTelegramBackgroundUpdateEvery = time.Hour
|
|
18
|
18
|
|
|
19
|
|
-var Middle = NewMiddleTelegram()
|
|
|
19
|
+var Middle Telegram
|
|
20
|
20
|
|
|
21
|
21
|
type middleTelegram struct {
|
|
22
|
22
|
baseTelegram
|
|
23
|
23
|
|
|
24
|
|
- mutex sync.RWMutex
|
|
|
24
|
+ mutex sync.RWMutex
|
|
|
25
|
+}
|
|
|
26
|
+
|
|
|
27
|
+func (m *middleTelegram) Secret() []byte {
|
|
|
28
|
+ m.mutex.RLock()
|
|
|
29
|
+ defer m.mutex.RUnlock()
|
|
|
30
|
+
|
|
|
31
|
+ return m.baseTelegram.Secret()
|
|
25
|
32
|
}
|
|
26
|
33
|
|
|
27
|
34
|
func (m *middleTelegram) update() error {
|
|
|
@@ -74,7 +81,7 @@ func (m *middleTelegram) Dial(ctx context.Context,
|
|
74
|
81
|
return m.baseTelegram.dial(ctx, cancel, dc, protocol)
|
|
75
|
82
|
}
|
|
76
|
83
|
|
|
77
|
|
-func NewMiddleTelegram() Telegram {
|
|
|
84
|
+func MiddleInit() {
|
|
78
|
85
|
tg := &middleTelegram{
|
|
79
|
86
|
baseTelegram: baseTelegram{
|
|
80
|
87
|
dialer: net.Dialer{Timeout: telegramDialTimeout},
|
|
|
@@ -85,5 +92,5 @@ func NewMiddleTelegram() Telegram {
|
|
85
|
92
|
}
|
|
86
|
93
|
go tg.backgroundUpdate()
|
|
87
|
94
|
|
|
88
|
|
- return tg
|
|
|
95
|
+ Middle = tg
|
|
89
|
96
|
}
|