public static string BuildWagonDataOfAllTypes(VoteServiceObject vso) { string allWagonData = ""; VoteServiceObject clonedVSO = vso.DeepClone <VoteServiceObject>(); int settingsCount = 3; List <bool> defaultVCSettings = new List <bool>(); defaultVCSettings.Add(true); defaultVCSettings.Add(false); defaultVCSettings.Add(true); ResultsObject defaultResultObject = null; List <ResultsObject> resultsObjects = new List <ResultsObject>(); List <HistoryServiceObject> hsosToParse = new List <HistoryServiceObject>(); for (int i = 0; i < Math.Pow(2, settingsCount); i++) { BitArray b = new BitArray(new int[] { i }); IEnumerable <bool> boolArray = b.Cast <bool>().Select(bit => bit ? true : false).ToArray().Take(settingsCount); HistoryServiceObject hso = new HistoryServiceObject(clonedVSO, boolArray.ElementAt(0), boolArray.ElementAt(1), boolArray.ElementAt(2)); resultsObjects.Add(BuildHistoryLogic.BuildOneResultsObject(hso)); clonedVSO = vso.DeepClone <VoteServiceObject>(); if (defaultResultObject == null) { if (boolArray.SequenceEqual(defaultVCSettings)) { defaultResultObject = resultsObjects[i]; } } allWagonData += resultsObjects[i].WagonText; } return(allWagonData); }
public static string BuildVoteCount(HistoryServiceObject hso) { string returnString = ""; ResultsObject ro = null; try { ro = BuildOneResultsObject(hso); if (hso.DisplayAllVCs) { foreach (VoteCount vc in ro.AllVCs) { returnString += vc.LatestVCOutput; //vc.buildLatest (vc.DayNumber, priorVCNumber, flavorText, deadlineCode, days[vc.DayNumber - 1].DeathsOvernight.Count) + History.NEW_LINE_HERE; } } else { returnString = ro.FinalVoteCount.LatestVCOutput; } } catch (Exception e) { return("History Report failed: " + "Report object: " + ((ro == null) ? "null" : "not null" + ("FinalVoteCount: " + ((ro.FinalVoteCount == null) ? "null" : "not null"))) + "INNER EXCEPTION: " + e.InnerException + "MESSAGE: " + e.Message + " STACK TRACE: " + e.StackTrace); } //Add timings List <long> millisecondCallList = hso.VSO.MillisecondsEachCall; if (millisecondCallList != null) { returnString += ((hso.VSO.IsRestCall) ? "<br/><br/>" : "") + "Performed " + ((long)hso.VSO.MillisecondsEachCall.Count) + " calls in " + ((long)millisecondCallList.Sum() / (long)1000) + " seconds. With an average of " + (millisecondCallList.Average() / (long)1000) + " seconds per call. "; } return(returnString); }
private static ResultsObject BuildOneResultsObject(HistoryServiceObject hso)//(List<Day> days, List<Player> allPlayers, bool sortBy, bool simple, bool lSort, int priorVCNumber, string flavorText, string deadlineCode, bool cleanDay) { return(createWagonData(hso.Days, hso.AllPlayers, hso.SortBy, hso.Simple, hso.LSort, hso.PriorVCNumber, hso.FlavorText, hso.DeadlineCode, hso.CleanDay, hso.IsRestCall, hso.ColorCode, hso.ProdTimer, hso.FontOverride, hso.AreaTagsOn, hso.DividerOverride, hso.ShowLLevel, hso.ShowZeroCountWagons, hso.DayviggedPlayers, hso.ResurrectedPlayers, hso.Replacements)); }
public static string BuildWagonData(HistoryServiceObject hso) { ResultsObject ro = BuildOneResultsObject(hso); return(ro.WagonText); }