proxygen
LoggingFactory.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2018-present, Facebook, Inc.
3  * All rights reserved.
4  *
5  * This source code is licensed under the BSD-style license found in the
6  * LICENSE file in the root directory of this source tree.
7  */
8 
9 #pragma once
10 
12 #include <fizz/protocol/Factory.h>
13 
14 namespace fizz {
15 
16 class LoggingFactory : public Factory {
17  public:
18  LoggingFactory() = default;
19  virtual ~LoggingFactory() = default;
20 
21  virtual std::unique_ptr<KeyScheduler> makeKeyScheduler(
22  CipherSuite cipher) const {
23  auto keyDer = makeKeyDeriver(cipher);
24  return std::make_unique<LoggingKeyScheduler>(std::move(keyDer));
25  }
26 };
27 
28 } // namespace fizz
LoggingFactory()=default
virtual std::unique_ptr< KeyScheduler > makeKeyScheduler(CipherSuite cipher) const
constexpr detail::Map< Move > move
Definition: Base-inl.h:2567
CipherSuite
Definition: Types.h:153
CipherSuite cipher
Definition: Actions.h:16
virtual ~LoggingFactory()=default
virtual std::unique_ptr< KeyDerivation > makeKeyDeriver(CipherSuite cipher) const
Definition: Factory.h:62