private void CheckForDeletion(DataRemovalProcessor.ProcessingContext context)
 {
     if (!this.ShouldRemoveNode(context.NodeInfo.Node))
     {
         return;
     }
     DataRemovalProcessor.ProcessingContext processingContext1 = DataRemovalProcessor.GetAncestorContextToDelete(context);
     if (processingContext1 == null)
     {
         processingContext1 = context;
     }
     else
     {
         for (DataRemovalProcessor.ProcessingContext processingContext2 = context; processingContext2 != processingContext1; processingContext2 = processingContext2.ParentContext)
         {
             processingContext2.IsDeleted = true;
         }
     }
     processingContext1.IsDeleted = true;
     this.documentNodesRemove.Add(processingContext1.NodeInfo);
 }
 private static DataRemovalProcessor.ProcessingContext GetAncestorContextToDelete(DataRemovalProcessor.ProcessingContext context)
 {
     return(DataRemovalProcessor.GetAncestorContext(context, 1, PlatformTypes.DictionaryEntry) ?? DataRemovalProcessor.GetAncestorContext(context, 3, PlatformTypes.Binding) ?? (DataRemovalProcessor.ProcessingContext)null);
 }