コード例 #1
0
        internal void ClearAggregate(AggregateProjectEntry entry)
        {
            var aggregating = entry._aggregating.ToArray();

            SortAggregates(aggregating);

            _aggregates.Remove(aggregating);
        }
コード例 #2
0
        private AggregateProjectEntry GetAggregateWorker(IProjectEntry[] all)
        {
            AggregateProjectEntry agg;

            if (!_aggregates.TryGetValue(all, out agg))
            {
                _aggregates[all] = agg = new AggregateProjectEntry(new HashSet <IProjectEntry>(all));

                foreach (var proj in all)
                {
                    IAggregateableProjectEntry aggretable = proj as IAggregateableProjectEntry;
                    if (aggretable != null)
                    {
                        aggretable.AggregatedInto(agg);
                    }
                }
            }

            return(agg);
        }
コード例 #3
0
 public void AggregatedInto(AggregateProjectEntry into)
 {
     _aggregates.Add(into);
 }
コード例 #4
0
 public void AggregatedInto(AggregateProjectEntry into)
 {
     _aggregates.Add(into);
 }