public RleaseGameCap()
        {
            _exchangeClient              = new ExchangeClient();
            _exchangeClient.MACEnDisAck += new _IExchangeClientEvents_MACEnDisAckEventHandler(_exchangeClient_MacEnable_DATA_ACK);
            _exchangeClient.InitialiseExchange(0);

            if (_requestCollection == null)
            {
                _requestCollection = new SortedDictionary <int, EnableMachineThreadData>();
            }

            if (m_SectorData == null)
            {
                m_SectorData = new Sector203Data();
            }

            if (oGameCappingBiz == null)
            {
                oGameCappingBiz = new GameCappingBiz();
            }

            if (_lstGameCapDetails == null)
            {
                _lstGameCapDetails = new List <GameCapDetails>();
            }

            _thRequest = new Thread(new ThreadStart(ProcessRequest));

            _thAckResponse = new ThreadDispatcher <EnableMachineThreadDataResponse>(1, "_thAckResponse_EnableMachine");
            _thAckResponse.AddProcessThreadData(new ProcessThreadDataHandler <EnableMachineThreadDataResponse>(this.ProcessResponse));
            _thAckResponse.Initialize();

            _iExchangeAdmin = (IExchangeAdmin)_exchangeClient;
            ObjectStateNotifier.AddObserver(this);

            _thRequest.Start();
        }
        public RleaseGameCap()
        {
            _exchangeClient = new ExchangeClient();
            _exchangeClient.MACEnDisAck += new _IExchangeClientEvents_MACEnDisAckEventHandler(_exchangeClient_MacEnable_DATA_ACK);
            _exchangeClient.InitialiseExchange(0);

            if (_requestCollection == null)
                _requestCollection = new SortedDictionary<int, EnableMachineThreadData>();

            if (m_SectorData == null)
                m_SectorData = new Sector203Data();
            
            if(oGameCappingBiz == null)
                oGameCappingBiz= new GameCappingBiz();
            
            if (_lstGameCapDetails == null)
                _lstGameCapDetails = new List<GameCapDetails>();
            
            _thRequest = new Thread(new ThreadStart(ProcessRequest));

            _thAckResponse = new ThreadDispatcher<EnableMachineThreadDataResponse>(1, "_thAckResponse_EnableMachine");
            _thAckResponse.AddProcessThreadData(new ProcessThreadDataHandler<EnableMachineThreadDataResponse>(this.ProcessResponse));
            _thAckResponse.Initialize();

            _iExchangeAdmin = (IExchangeAdmin)_exchangeClient;
            ObjectStateNotifier.AddObserver(this);

            _thRequest.Start();
        }