aboutsummaryrefslogtreecommitdiffstats
path: root/src/gnmi/eventreciverbase.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gnmi/eventreciverbase.h')
-rw-r--r--src/gnmi/eventreciverbase.h78
1 files changed, 0 insertions, 78 deletions
diff --git a/src/gnmi/eventreciverbase.h b/src/gnmi/eventreciverbase.h
deleted file mode 100644
index 13f79ff..0000000
--- a/src/gnmi/eventreciverbase.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (c) 2019 PANTHEON.tech.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef EVENTRECIVERBASE_H
-#define EVENTRECIVERBASE_H
-
-#include <exception>
-#include <iostream>
-
-class EventReceiverBase
-{
-public:
- virtual ~EventReceiverBase() {}
-};
-
-template<typename T>
-class EventReceiver : public virtual EventReceiverBase
-{
-public:
- virtual void receiveWriteEvent(T *psender) = 0;
-};
-
-class EventSender
-{
-public:
-
- template<typename T>
- void registerReciver(T *receiver) {
- pReceiver = receiver;
- }
-
- void registerStream(void *stream) {
- this->stream = stream;
- }
-
- void *getStream() {
- return stream;
- }
-
- template<typename T>
- void sendEvent(T* pSender) {
- if (nullptr == pReceiver) {
- throw std::runtime_error("Receiver is not register.");
- }
-
- EventReceiver<T> *pCastedReceiver =
- dynamic_cast<EventReceiver<T>*>(pReceiver);
- pCastedReceiver->receiveWriteEvent(pSender);
- }
-
-private:
- EventReceiverBase *pReceiver = nullptr;
- void *stream = nullptr;
-};
-
-template<typename T>
-class BaseSender : public virtual EventSender
-{
-public:
- void send() {
- sendEvent((T*) this);
- }
-};
-
-#endif // EVENTRECIVERBASE_H