Page Speed Optimization Libraries  1.13.35.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
hashed_nonce_generator.h
Go to the documentation of this file.
1 // Copyright 2013 Google Inc. All Rights Reserved.
14 
16 
17 #ifndef PAGESPEED_KERNEL_UTIL_HASHED_NONCE_GENERATOR_H_
18 #define PAGESPEED_KERNEL_UTIL_HASHED_NONCE_GENERATOR_H_
19 
25 
26 namespace net_instaweb {
27 
28 class Hasher;
29 
41  public:
45  const Hasher* hasher, StringPiece key, AbstractMutex* mutex);
46  virtual ~HashedNonceGenerator();
47 
48  protected:
49  virtual uint64 NewNonceImpl();
50 
51  private:
52  const Hasher* hasher_;
53  scoped_array<char> key_;
54  int key_size_;
55  uint64 counter_;
56 
57 
58 };
59 
60 }
61 
62 #endif
Abstract interface for implementing a mutex.
Definition: abstract_mutex.h:28
HashedNonceGenerator(const Hasher *hasher, StringPiece key, AbstractMutex *mutex)
Definition: nonce_generator.h:28
Definition: hasher.h:30
Definition: hashed_nonce_generator.h:40
virtual uint64 NewNonceImpl()
Subclasses must implement this method. Locking is already handled.