Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class DataHandler
- {
- public:
- void doSomethingWithData() {}
- protected:
- private:
- };
- class SqlDatabaseDataRetriever
- {
- public:
- Data getData() { }
- protected:
- private:
- };
- class DataHandler
- {
- public:
- DataHandler(SqlDatabaseDataRetriever& dataRetriever)
- {
- _dataRetriever = dataRetriever;
- }
- void doSomethingWithData()
- {
- Data data = this->_dataRetriever.getData();
- }
- protected:
- SqlDatabaseDataRetriever _dataRetriever;
- private:
- };
- class DataRetriever
- {
- public:
- virtual Data getData() = 0;
- protected:
- private;
- }
- class SqlDatabaseDataRetriever : public DataRetriever
- {
- public:
- virtual Data getData() { }
- protected:
- private;
- }
- class ApiDataRetriever : public DataRetriever
- {
- public:
- virtual Data getData() { }
- protected:
- private;
- }
- class DataHandler
- {
- public:
- DataHandler(DataRetriever& dataRetriever)
- {
- _dataRetriever = dataRetriever;
- }
- void doSomethingWithData()
- {
- Data data = this->_dataRetriever.getData();
- }
- protected:
- DataRetriever _dataRetriever;
- private:
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement