private FraudDetectionManager InitiliazeFraudManager(CacheHandler cache)
        {
            FraudDetectionManager fraudMnager = new FraudDetectionManager(cache);

            fraudMnager.Initiliaze();
            return(fraudMnager);
        }
        public void StartDetection(string cacheName)
        {
            try
            {
                _cache = InitiliazeCache(cacheName, null);
                // initialize the respective manager

                // transacion manager is required to give input of the customer where as fraud manager has the logic of completeing
                // the transaction and publishing result
                _fraudManger = InitiliazeFraudManager(_cache);

                Console.WriteLine("Press any key to stop fraud manager...");
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }