Exemple #1
0
            private static bool MustWait(LuceneIndexingActivity newerActivity, LuceneIndexingActivity olderActivity)
            {
                Debug.Assert(olderActivity.Id != newerActivity.Id);

                if (olderActivity.NodeId == newerActivity.NodeId)
                {
                    return(true);
                }

                if (olderActivity.Path == newerActivity.Path)
                {
                    return(true);
                }

                if (olderActivity is LuceneTreeActivity)
                {
                    if (newerActivity is LuceneTreeActivity)
                    {
                        return(olderActivity.IsInTree(newerActivity) || newerActivity.IsInTree(olderActivity));
                    }
                    else
                    {
                        return(newerActivity.IsInTree(olderActivity));
                    }
                }
                return(newerActivity is LuceneTreeActivity && olderActivity.IsInTree(newerActivity));
            }