pulsar-client-cpp
Loading...
Searching...
No Matches
EncryptionKeyInfo.h
1
19#ifndef ENCRYPTIONKEYINFO_H_
20#define ENCRYPTIONKEYINFO_H_
21
22#include <memory>
23#include <iostream>
24#include <map>
25#include <pulsar/defines.h>
26
27namespace pulsar {
28
29class EncryptionKeyInfoImpl;
30class PulsarWrapper;
31
32typedef std::shared_ptr<EncryptionKeyInfoImpl> EncryptionKeyInfoImplPtr;
33
34class PULSAR_PUBLIC EncryptionKeyInfo {
35 /*
36 * This object contains the encryption key and corresponding metadata which contains
37 * additional information about the key such as version, timestammp
38 */
39
40 public:
41 typedef std::map<std::string, std::string> StringMap;
42
44
49 EncryptionKeyInfo(std::string key, StringMap& metadata);
50
54 std::string& getKey();
55
61 void setKey(std::string key);
62
66 StringMap& getMetadata(void);
67
73 void setMetadata(StringMap& metadata);
74
75 private:
76 explicit EncryptionKeyInfo(EncryptionKeyInfoImplPtr);
77
78 EncryptionKeyInfoImplPtr impl_;
79
80 friend class PulsarWrapper;
81};
82
83} /* namespace pulsar */
84
85#endif /* ENCRYPTIONKEYINFO_H_ */
Definition: EncryptionKeyInfo.h:34
void setKey(std::string key)
std::string & getKey()
void setMetadata(StringMap &metadata)
StringMap & getMetadata(void)
EncryptionKeyInfo(std::string key, StringMap &metadata)
Definition: Authentication.h:30