DataConsumer.cpp 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #include "DataConsumer.h"
  2. #include <QThread>
  3. #include <QDateTime>
  4. #include <QVariant>
  5. #include "LibraryLoader.h"
  6. #include "Client.h"
  7. DataConsumer::DataConsumer()
  8. {
  9. }
  10. DataConsumer::~DataConsumer()
  11. {
  12. }
  13. // void DataConsumer::run()
  14. // {
  15. // while(!isInterruptionRequested()){
  16. // qDebug() << __FILE__ << __FUNCTION__;
  17. // QThread::msleep(1000);
  18. // }
  19. // }
  20. void DataConsumer::Setup(ConsumerInfo &ci)
  21. {
  22. std::string assemblyName = ci.AssemblyName;
  23. dataName = ci.Name;
  24. Client* pModule = nullptr;
  25. // = (BaseModule)Assembly.LoadFile(Path.GetFullPath(@".\" + assemblyName)).CreateInstance(className);
  26. pModule = LibraryLoader::load<Client>(assemblyName);
  27. if( pModule == nullptr )
  28. {
  29. qCritical() << " load " << assemblyName.c_str() << " failed.";
  30. return;
  31. }
  32. if( pModule == nullptr )
  33. {
  34. qCritical() << __FILE__ << __LINE__ << " " << assemblyName.c_str() << " load failed.";
  35. return;
  36. }
  37. {
  38. //Client*
  39. runable = dynamic_cast<Client*>(pModule);
  40. runable->Run(ci);
  41. }
  42. }
  43. std::string DataConsumer::getTypeList()
  44. {
  45. return "DataStorage::RunnableModule";
  46. }
  47. // void DataConsumer::setLoader(QLibrary *)
  48. // {
  49. // }
  50. void DataConsumer::Run()
  51. {
  52. //start();
  53. }
  54. void DataConsumer::OnData(const QString&usr ,const QString& key,const QVariant&val)
  55. {
  56. qDebug() << __FILE__ <<__FUNCTION__<< usr << key << val ;
  57. runable->OnData(usr, key, val);
  58. }