1 /* 2 * Copyright (C) 1996-2021 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 SQUID_ACLTIMEDATA_H 10 #define SQUID_ACLTIMEDATA_H 11 12 #include "acl/Acl.h" 13 #include "acl/Data.h" 14 #include "splay.h" 15 16 class ACLTimeData : public ACLData<time_t> 17 { 18 MEMPROXY_CLASS(ACLTimeData); 19 20 public: 21 ACLTimeData(); 22 ACLTimeData(ACLTimeData const &); 23 ACLTimeData&operator=(ACLTimeData const &); 24 virtual ~ACLTimeData(); 25 bool match(time_t); 26 virtual SBufList dump() const; 27 void parse(); 28 bool empty() const; 29 virtual ACLData<time_t> *clone() const; 30 31 private: 32 int weekbits; 33 int start; 34 int stop; 35 ACLTimeData *next; 36 }; 37 38 #endif /* SQUID_ACLTIMEDATA_H */ 39 40