コード例 #1
0
        public override void OnInitialize()
        {
            base.OnInitialize();
            try
            {
                _orderRoutine = OrderRoutine.OrderRoutine.GetOrderRoutine();
                _orders       = _orderRoutine.GetOrders();

                _billings = GlobalDataObjects.GetGlobalDataObject("Cx.Client.Taxi.Billings.Data.Billings") as IBillings;
                if (_billings == null)
                {
                    GlobalLogManager.WriteString("Error: Ошибка в плагине ClientsBountyManager. Не удалось загрузить данные по счетам");
                }

                _orders.StatePropertyChanged     += _orders_StatePropertyChanged;
                _billings.BalancePropertyChanged += _billings_BalancePropertyChanged;
            }
            catch (Exception e)
            {
                GlobalLogManager.WriteString("Error: Ошибка в плагине ClientsBountyManager. {0}", e);
            }

            LoadParams();

            _watcher = new FileSystemWatcher(GlobalUtils.AppDirectory, "ClientsBountyParams.xml");
            _watcher.NotifyFilter        = NotifyFilters.LastWrite;
            _watcher.Changed            += watcher_Changed;
            _watcher.EnableRaisingEvents = true;
        }
コード例 #2
0
 public CxDataProvider(PluginParams param, IBillings billings, IUsers users)
 {
     _billings      = billings;
     PluginParams   = param;
     _clientManager = ClientManager.ClientManager.GetManager();
     _clients       = _clientManager.GetClients();
     _users         = users;
 }
コード例 #3
0
        public override void OnInitialize()
        {
            LoadParams();

            _billings = GlobalDataObjects.GetGlobalDataObject("Cx.Client.Taxi.Billings.Data.Billings") as IBillings;
            if (_billings == null)
            {
                GlobalLogManager.WriteString(
                    "Error: Ошибка в плагине WCFManager. Не удалось загрузить данные по счетам");
            }

            _users = GlobalDataObjects.GetGlobalDataObject("Cx.Client.Security.Users.Data.Users") as IUsers;
            if (_users == null)
            {
                GlobalLogManager.WriteString(
                    "Error: Ошибка в плагине WCFManager. Не удалось загрузить данные по пользователям");
            }

            var httpHostStr = string.Format("{0}:{1}/ClientBonusService", _param.HostName, _param.Port);
            var tcpHostStr  = string.Format("{0}:{1}/ClientBonusService", _param.HostName, _param.Port + 1);

            GlobalLogManager.WriteString("WCFManager. Создание сервиса");
            var serviceHost = new ServiceHost(typeof(ClientBonusService));

            GlobalLogManager.WriteString("WCFManager. Установка параметров");
            ClientBonusService.DataProvider = new CxDataProvider(_param, _billings, _users);
            ClientBonusService.LogonManager = new LogonManager(GlobalUtils.AppDirectory);
            ClientBonusService.Params       = _param;
            var portsharingBinding = new NetTcpBinding();
            var httpBinding        = new BasicHttpBinding();

            serviceHost.AddServiceEndpoint(typeof(IClientBonusService), portsharingBinding, "net.tcp://" + tcpHostStr);
            serviceHost.AddServiceEndpoint(typeof(IClientBonusService), httpBinding, "http://" + httpHostStr);
            GlobalLogManager.WriteString("WCFManager. Запуск сервиса");
            serviceHost.Open();

            _watcher                     = new FileSystemWatcher(GlobalUtils.AppDirectory, PluginParams.FileName);
            _watcher.Changed            += _watcher_Changed;
            _watcher.NotifyFilter        = NotifyFilters.LastWrite;
            _watcher.EnableRaisingEvents = true;
            GlobalLogManager.WriteString("WCFManager. Сервис запущен");
        }