MessageBucket.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2017 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 #ifndef MESSAGEBUCKET_H
10 #define MESSAGEBUCKET_H
11 
12 #if USE_DELAY_POOLS
13 
14 #include "BandwidthBucket.h"
15 #include "base/RefCount.h"
16 #include "comm/forward.h"
17 #include "MessageDelayPools.h"
18 
21 {
23 
24 public:
26 
27  MessageBucket(const int speed, const int initialLevelPercent, const double sizeLimit, MessageDelayPool::Pointer pool);
28 
29  /* BandwidthBucket API */
30  virtual int quota() override;
31  virtual void scheduleWrite(Comm::IoCallback *state) override;
32  virtual void reduceBucket(int len) override;
33 
34 private:
36 };
37 
38 #endif /* USE_DELAY_POOLS */
39 
40 #endif
41 
Base class for Squid-to-client bandwidth limiting.
MessageBucket(const int speed, const int initialLevelPercent, const double sizeLimit, MessageDelayPool::Pointer pool)
virtual int quota() override
MessageDelayPool::Pointer theAggregate
Definition: MessageBucket.h:35
virtual void reduceBucket(int len) override
Decreases the bucket level.
Limits Squid-to-client bandwidth for each matching response.
Definition: MessageBucket.h:20
int unsigned int const char *desc STUB void int len
Definition: stub_fd.cc:20
MEMPROXY_CLASS(MessageBucket)
RefCount< MessageBucket > Pointer
Definition: MessageBucket.h:25
virtual void scheduleWrite(Comm::IoCallback *state) override
Will plan another write call.
Details about a particular Comm IO callback event.
Definition: IoCallback.h:29

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors