Exemplo n.º 1
0
 public TcpMessageSender(JasmineSetting clientConfig, IMessageStatistics statistics)
 {
     _mClientConfig = clientConfig;
     _mStatistics   = statistics;
     _mActive       = true;
     _mQueue        = new Queue <IMessageTree>();
     _mCodec        = new PlainTextMessageCodec();
 }
Exemplo n.º 2
0
        public static void Initialize(JasmineSetting config)
        {
            if (Instance.m_initialized)
            {
                LoggerManager.Warn("Cat can't initialize again , IGNORED!");
                return;
            }

            LoggerManager.Info("Initializing Cat .Net Client ...");
            Instance.m_Setting = config;

            DefaultMessageManager manager = new DefaultMessageManager();

            manager.InitializeClient(config);
            Instance.m_Producer    = new DefaultMessageProducer(manager);
            Instance.m_Manager     = manager;
            Instance.m_initialized = true;
            LoggerManager.Info("Cat .Net Client initialized.");
        }
Exemplo n.º 3
0
        public static void Initialize(string configFilePath)
        {
            if (Instance.m_initialized)
            {
                LoggerManager.Warn("Cat can't initialize again with config file(%s), IGNORED!", configFilePath);
                return;
            }

            LoggerManager.Info("Initializing Cat .Net Client ...");

            DefaultMessageManager manager      = new DefaultMessageManager();
            JasmineSetting        clientConfig = XmlHelper.XmlDeserializeFromFile <JasmineSetting>(configFilePath, Encoding.UTF8);

            Instance.m_Setting = clientConfig;
            manager.InitializeClient(clientConfig);
            Instance.m_Producer    = new DefaultMessageProducer(manager);
            Instance.m_Manager     = manager;
            Instance.m_initialized = true;
            LoggerManager.Info("Cat .Net Client initialized.");
        }
        public virtual void InitializeClient(JasmineSetting clientConfig)
        {
            m_ClientConfig = clientConfig ?? new JasmineSetting();

            m_HostName = Dns.GetHostName();

            m_Statistics = new DefaultMessageStatistics();
            m_Sender     = new TcpMessageSender(m_ClientConfig, m_Statistics);
            m_Sender.Initialize();
            m_Factory = new MessageIdFactory();

            // initialize domain and ip address
            m_Factory.Initialize(m_ClientConfig.Domain.Id, m_ClientConfig.Domain.Ip);

            // start status update task
            if (clientConfig.Domain.Enabled && clientConfig.Domain.HeartBeatEnabled)
            {
                _mStatusUpdateTask = new StatusUpdateTask(m_Statistics, clientConfig.Domain);
                ThreadPool.QueueUserWorkItem(_mStatusUpdateTask.Run);
            }

            LoggerManager.Info("Thread(StatusUpdateTask) started.");
        }