Пример #1
0
            public override ContentSummaryComputationContext ComputeContentSummary(ContentSummaryComputationContext
                                                                                   summary)
            {
                int snapshotId = GetParent().GetSnapshot(GetLocalNameBytes()).GetId();

                return(ComputeDirectoryContentSummary(summary, snapshotId));
            }
Пример #2
0
        public virtual void ComputeContentSummary4Snapshot(BlockStoragePolicySuite bsps,
                                                           ContentCounts counts)
        {
            // Create a new blank summary context for blocking processing of subtree.
            ContentSummaryComputationContext summary = new ContentSummaryComputationContext(bsps
                                                                                            );

            foreach (DirectoryWithSnapshotFeature.DirectoryDiff d in diffs)
            {
                foreach (INode deleted in d.GetChildrenDiff().GetList(Diff.ListType.Deleted))
                {
                    deleted.ComputeContentSummary(summary);
                }
            }
            // Add the counts from deleted trees.
            counts.AddContents(summary.GetCounts());
            // Add the deleted directory count.
            counts.AddContent(Content.Directory, diffs.AsList().Count);
        }
Пример #3
0
 public virtual ContentSummaryComputationContext ComputeContentSummary(BlockStoragePolicySuite
                                                                       bsps, INodeDirectory snapshotRoot, ContentSummaryComputationContext summary)
 {
     snapshotRoot.ComputeContentSummary(summary);
     summary.GetCounts().AddContent(Content.Snapshot, snapshotsByNames.Count);
     summary.GetCounts().AddContent(Content.SnapshottableDirectory, 1);
     return(summary);
 }