public TcpMessageSender(JasmineSetting clientConfig, IMessageStatistics statistics) { _mClientConfig = clientConfig; _mStatistics = statistics; _mActive = true; _mQueue = new Queue <IMessageTree>(); _mCodec = new PlainTextMessageCodec(); }
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."); }
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."); }