29 lines
600 B
C++
29 lines
600 B
C++
#pragma once
|
|
|
|
#include <string>
|
|
#include <memory>
|
|
|
|
namespace ddkit {
|
|
namespace access {
|
|
|
|
class ITopicStrategy {
|
|
public:
|
|
virtual std::string get(const std::string& typeName) = 0;
|
|
|
|
virtual ~ITopicStrategy() = default;
|
|
|
|
protected:
|
|
ITopicStrategy() = default;
|
|
|
|
private:
|
|
// no copying
|
|
ITopicStrategy(ITopicStrategy const&) = delete;
|
|
ITopicStrategy(ITopicStrategy&&) = delete;
|
|
void operator=(ITopicStrategy const&) = delete;
|
|
void operator=(ITopicStrategy&&) = delete;
|
|
};
|
|
typedef std::shared_ptr<ITopicStrategy> ITopicStrategyPtr;
|
|
|
|
} // namespace access
|
|
} // namespace ddkit
|