rename IncomingPacketAckHandler to ReceivedPacketHandler

This commit is contained in:
Marten Seemann
2016-04-26 10:17:18 +07:00
parent 0088636798
commit b4fae00880
4 changed files with 25 additions and 26 deletions

View File

@@ -13,8 +13,8 @@ type SentPacketHandler interface {
DequeuePacketForRetransmission() (packet *Packet)
}
// IncomingPacketAckHandler handles ACKs needed to send for incoming packets
type IncomingPacketAckHandler interface {
// ReceivedPacketHandler handles ACKs needed to send for incoming packets
type ReceivedPacketHandler interface {
ReceivedPacket(packetNumber protocol.PacketNumber, entropyBit bool) error
ReceivedStopWaiting(*frames.StopWaitingFrame) error

View File

@@ -7,24 +7,23 @@ import (
"github.com/lucas-clemente/quic-go/protocol"
)
var ErrDuplicatePacket = errors.New("Duplicate Packet")
var ErrDuplicatePacket = errors.New("ReceivedPacketHandler: Duplicate Packet")
// The AckHandler handles ACKs
type incomingPacketAckHandler struct {
type receivedPacketHandler struct {
highestInOrderObserved protocol.PacketNumber
highestInOrderObservedEntropy EntropyAccumulator
largestObserved protocol.PacketNumber
packetHistory map[protocol.PacketNumber]bool // the bool is the EntropyBit of the packet
}
// NewIncomingPacketAckHandler creates a new outgoingPacketAckHandler
func NewIncomingPacketAckHandler() IncomingPacketAckHandler {
return &incomingPacketAckHandler{
// NewReceivedPacketHandler creates a new receivedPacketHandler
func NewReceivedPacketHandler() ReceivedPacketHandler {
return &receivedPacketHandler{
packetHistory: make(map[protocol.PacketNumber]bool),
}
}
func (h *incomingPacketAckHandler) ReceivedPacket(packetNumber protocol.PacketNumber, entropyBit bool) error {
func (h *receivedPacketHandler) ReceivedPacket(packetNumber protocol.PacketNumber, entropyBit bool) error {
if packetNumber == 0 {
return errors.New("Invalid packet number")
}
@@ -45,7 +44,7 @@ func (h *incomingPacketAckHandler) ReceivedPacket(packetNumber protocol.PacketNu
return nil
}
func (h *incomingPacketAckHandler) ReceivedStopWaiting(f *frames.StopWaitingFrame) error {
func (h *receivedPacketHandler) ReceivedStopWaiting(f *frames.StopWaitingFrame) error {
// Ignore if STOP_WAITING is unneeded
if h.highestInOrderObserved >= f.LeastUnacked {
return nil
@@ -58,7 +57,7 @@ func (h *incomingPacketAckHandler) ReceivedStopWaiting(f *frames.StopWaitingFram
}
// getNackRanges gets all the NACK ranges
func (h *incomingPacketAckHandler) getNackRanges() ([]frames.NackRange, EntropyAccumulator) {
func (h *receivedPacketHandler) getNackRanges() ([]frames.NackRange, EntropyAccumulator) {
// ToDo: use a better data structure here
var ranges []frames.NackRange
inRange := false
@@ -84,7 +83,7 @@ func (h *incomingPacketAckHandler) getNackRanges() ([]frames.NackRange, EntropyA
return ranges, entropy
}
func (h *incomingPacketAckHandler) DequeueAckFrame() *frames.AckFrame {
func (h *receivedPacketHandler) DequeueAckFrame() *frames.AckFrame {
nackRanges, entropy := h.getNackRanges()
return &frames.AckFrame{
LargestObserved: h.largestObserved,

View File

@@ -8,14 +8,14 @@ import (
. "github.com/onsi/gomega"
)
var _ = Describe("incomingPacketAckHandler", func() {
var _ = Describe("receivedPacketHandler", func() {
var (
handler *incomingPacketAckHandler
handler *receivedPacketHandler
expectedEntropy EntropyAccumulator
)
BeforeEach(func() {
handler = NewIncomingPacketAckHandler().(*incomingPacketAckHandler)
handler = NewReceivedPacketHandler().(*receivedPacketHandler)
expectedEntropy = EntropyAccumulator(0)
})