BUSClient.Base.hpp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. #pragma once
  2. #include "BUSClient.Define.hpp"
  3. namespace ECOM
  4. {
  5. namespace ServiceBus
  6. {
  7. namespace Controller
  8. {
  9. static const int LegacySendPort = 6630;
  10. static const int LegacyReceivePort = 6631;
  11. //-----------------------------------------------------------------------------
  12. // Client, 基类, 可以发送消息
  13. //-----------------------------------------------------------------------------
  14. class _ServiceBus_API Client
  15. {
  16. public:
  17. static void SetLogFileName (LPCSTR FileName);
  18. static void Prepare ();
  19. static void Quit ();
  20. // 设置缺省的超时, 单位: 毫秒
  21. static int SetDefTimeOut (int msTimeOut);
  22. static int GetDefCommandPort ();
  23. static int GetDefStatusPort ();
  24. Client ();
  25. virtual ~Client ();
  26. void SetSourceID (LPCSTR SourceID);
  27. DString SetUniqueSourceID (LPCSTR SourceID);
  28. DString GetSourceID () const;
  29. void ConnectTo (LPCSTR IPAddress);
  30. bool SetTcpNoDelay (bool bSet);
  31. int SetSocketOption (int level, int optname, const char * optval, int optlen);
  32. DString GetConnectIPAddress (void) const { return m_IPAddress; }
  33. bool IsOnline (LPCSTR TargetID);
  34. bool BUSSetting (DWORD Command, LPCSTR Key, LPCSTR Value);
  35. virtual bool Connect ();
  36. virtual void Disconnect ();
  37. virtual void Close ();
  38. static DString Command2String (int Cmd);
  39. protected:
  40. DString m_IPAddress;
  41. int m_CommandPort;
  42. int m_NbOfChannel;
  43. DString m_SourceID;
  44. bool m_bTcpNoDelay;
  45. // class BUSSendPDU * m_BUSNetPDU;
  46. class BUSNetPDUProxy * m_BUSNetPDU;
  47. protected:
  48. static bool bInited;
  49. static int gDefMSTimeOut;
  50. public:
  51. int m_SeriesNo;
  52. public:
  53. _tUnsafeDelegate <EventArgs_Error> OnBusError;
  54. protected:
  55. void OnBusPDUError (const void *, EventArgs_Error * arg);
  56. protected:
  57. void FireBusError (int ErrorCode, LPCSTR ErrorMessage);
  58. };
  59. }
  60. }
  61. };