]> git.ipfire.org Git - thirdparty/squid.git/blobdiff - src/DelayUser.h
Source Format Enforcement (#532)
[thirdparty/squid.git] / src / DelayUser.h
index 781ac66e2cd6266aa724dadde87ab99562e50c17..944b0d4e3831cb990521c8e9ca0f034e1f0543c5 100644 (file)
@@ -1,78 +1,48 @@
 /*
- * $Id: DelayUser.h,v 1.8 2008/02/26 21:49:34 amosjeffries Exp $
+ * Copyright (C) 1996-2020 The Squid Software Foundation and contributors
  *
- * DEBUG: section 77    Delay Pools
- * AUTHOR: Robert Collins <robertc@squid-cache.org>
- *
- * SQUID Web Proxy Cache          http://www.squid-cache.org/
- * ----------------------------------------------------------
- *
- *  Squid is the result of efforts by numerous individuals from
- *  the Internet community; see the CONTRIBUTORS file for full
- *  details.   Many organizations have provided support for Squid's
- *  development; see the SPONSORS file for full details.  Squid is
- *  Copyrighted (C) 2001 by the Regents of the University of
- *  California; see the COPYRIGHT file for full details.  Squid
- *  incorporates software developed and/or copyrighted by other
- *  sources; see the CREDITS file for full details.
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
- *  (at your option) any later version.
- *  
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *  
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
- *
- *
- * Copyright (c) 2003, Robert Collins <robertc@squid-cache.org>
+ * Squid software is distributed under GPLv2+ license and includes
+ * contributions from numerous individuals and organizations.
+ * Please see the COPYING and CONTRIBUTORS files for details.
  */
+
+/* DEBUG: section 77    Delay Pools */
+
 #ifndef DELAYUSER_H
 #define DELAYUSER_H
 
-#include "config.h"
-
-#if DELAY_POOLS
+#if USE_DELAY_POOLS && USE_AUTH
 
-#include "squid.h"
-#include "authenticate.h"
+#include "auth/Gadgets.h"
+#include "auth/User.h"
 #include "CompositePoolNode.h"
-#include "DelayIdComposite.h"
 #include "DelayBucket.h"
+#include "DelayIdComposite.h"
 #include "DelaySpec.h"
-#include "Array.h"
 #include "splay.h"
 
 /// \ingroup DelayPoolsAPI
 class DelayUserBucket : public RefCountable
 {
+    MEMPROXY_CLASS(DelayUserBucket);
 
 public:
     typedef RefCount<DelayUserBucket> Pointer;
-    void *operator new(size_t);
-    void operator delete (void *);
 
     void stats(StoreEntry *)const;
-    DelayUserBucket(AuthUser *);
+    DelayUserBucket(Auth::User::Pointer);
     ~DelayUserBucket();
     DelayBucket theBucket;
-    AuthUser *authUser;
+    Auth::User::Pointer authUser;
 };
 
 /// \ingroup DelayPoolsAPI
 class DelayUser : public CompositePoolNode
 {
+    MEMPROXY_CLASS(DelayUser);
 
 public:
     typedef RefCount<DelayUser> Pointer;
-    void *operator new(size_t);
-    void operator delete (void *);
     DelayUser();
     virtual ~DelayUser();
     virtual void stats(StoreEntry * sentry);
@@ -87,11 +57,10 @@ private:
     /// \ingroup DelayPoolsInternal
     class Id:public DelayIdComposite
     {
+        MEMPROXY_CLASS(DelayUser::Id);
 
     public:
-        void *operator new(size_t);
-        void operator delete (void *);
-        Id (RefCount<DelayUser>, AuthUser *);
+        Id(RefCount<DelayUser>, Auth::User::Pointer);
         ~Id();
         virtual int bytesWanted (int min, int max) const;
         virtual void bytesIn(int qty);
@@ -107,5 +76,6 @@ private:
     Splay<DelayUserBucket::Pointer> buckets;
 };
 
-#endif /* DELAY_POOLS */
+#endif /* USE_DELAY_POOLS && USE_AUTH */
 #endif /* DELAYUSER_H */
+