public PokerHandParserToUse(IPokerHandParser parser) { parser.LogVerbose = false; _parsers = new List <IPokerHandParser> { parser }; }
public void _Init() { _container = new UnityContainer(); _container .RegisterConstructor <IAquiredPokerAction, AquiredPokerAction>() .RegisterConstructor <IAquiredPokerRound, AquiredPokerRound>() .RegisterConstructor <IAquiredPokerPlayer, AquiredPokerPlayer>() .RegisterConstructor <IAquiredPokerHand, AquiredPokerHand>(); _parser = _container.Resolve <PokerHandParser>(); _parser.LogVerbose = true; }
public IEnumerable <IConvertedPokerHand> RetrieveAndConvert(string handHistories, string fileName) { // Make sure we parse doubles correctly Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US", false); IPokerHandParser parser = FindCorrectParserFor(handHistories); bool didNotFindParser = parser == null; if (didNotFindParser) { throw new UnrecognizedHandHistoryFormatException(fileName); } IDictionary <ulong, string> containedHandHistories = parser.ExtractSeparateHandHistories(handHistories); return(CollectHandsContainedIn(containedHandHistories, parser)); }
IConvertedPokerHand GetConvertedHandHistoryFromPreviouslyParsedHandsOrParser( KeyValuePair <ulong, string> handHistory, IPokerHandParser parser) { if (_parsedHands.ContainsKey(handHistory.Key)) { return(_parsedHands[handHistory.Key]); } IAquiredPokerHand aquiredPokerHand; if (parser.ParseHand(handHistory.Value).IsValid) { aquiredPokerHand = parser.AquiredPokerHand; } else { throw new UnableToParseHandHistoryException("Parser: " + parser); } return(ConvertHandAndAddToParsedHands(aquiredPokerHand)); }
IEnumerable <IConvertedPokerHand> CollectHandsContainedIn( IEnumerable <KeyValuePair <ulong, string> > containedHandHistories, IPokerHandParser parser) { var convertedPokerHands = new List <IConvertedPokerHand>(); foreach (KeyValuePair <ulong, string> handHistory in containedHandHistories) { try { IConvertedPokerHand convertedPokerHand = GetConvertedHandHistoryFromPreviouslyParsedHandsOrParser(handHistory, parser); convertedPokerHands.Add(convertedPokerHand); } catch (Exception excep) { Log.Error(excep); } } return(convertedPokerHands); }
public IPokerHandParsers Add(IPokerHandParser parser) { _parsers.Add(parser); return(this); }