public static ITargetStream CreateEmptyStream() { var targets = new Dictionary <IBookIndex, IBookTarget>(); var lastParty = BookParty.GetEmpty(); var lastIndex = BookIndex.GetEmpty(); return(new TargetStream(targets, lastParty, lastIndex)); }
public ITargetStream CreateEvaluationStream(IProcessConfig configModule) { IBookParty[] contracts = CollectPartiesForContracts(); IBookParty[] positions = CollectPartiesForPositions(); var targetsInit = TargetStreamBuilder.BuildStreamCopy(__targets); var articleList = TargetStreamBuilder.BuildArticleStream(__targets); var targetsDict = articleList.Aggregate(targetsInit, (agr, article) => TargetStreamBuilder.BuildEvaluationStream(agr, contracts, positions, article, configModule)); var targetsEval = targetsDict.OrderBy(x => x.Value.Article()). ToDictionary(key => key.Key, val => val.Value); var lastParty = BookParty.GetEmpty(); var lastIndex = BookIndex.GetEmpty(); return(new TargetStream(targetsEval, lastParty, lastIndex)); }