Files
waf-platform/EdgeNode/internal/nodes/http3_conn_notifier_plus.go
2026-02-04 20:27:13 +08:00

38 lines
876 B
Go

// Copyright 2023 GoEdge CDN goedge.cdn@gmail.com. All rights reserved. Official site: https://goedge.cn .
//go:build plus
package nodes
import (
"github.com/TeaOSLab/EdgeNode/internal/stats"
"sync/atomic"
)
type HTTP3ConnNotifier struct {
conn *HTTP3Conn
}
func NewHTTP3ConnNotifier(conn *HTTP3Conn) *HTTP3ConnNotifier {
return &HTTP3ConnNotifier{
conn: conn,
}
}
func (this *HTTP3ConnNotifier) ReadBytes(bytes int) {
}
func (this *HTTP3ConnNotifier) WriteBytes(bytes int) {
if this.conn != nil && this.conn.ServerId() > 0 {
stats.SharedBandwidthStatManager.AddBandwidth(this.conn.UserId(), this.conn.UserPlanId(), this.conn.ServerId(), int64(bytes), int64(bytes))
if this.conn.BaseClientConn != nil {
atomic.AddInt64(&this.conn.BaseClientConn.totalSentBytes, int64(bytes))
}
}
}
func (this *HTTP3ConnNotifier) Close() {
this.conn.NotifyClose()
}