Пример #1
0
 private void CollectIndexedNodes(IEnumerator qcons)
 {
     while (qcons.MoveNext())
     {
         QCon qcon = (QCon)qcons.Current;
         if (IsCached(qcon))
         {
             continue;
         }
         if (IsLeaf(qcon))
         {
             if (qcon.CanLoadByIndex() && qcon.CanBeIndexLeaf())
             {
                 QConObject conObject = (QConObject)qcon;
                 if (conObject.HasJoins())
                 {
                     CollectJoinedNode(conObject);
                 }
                 else
                 {
                     CollectStandaloneNode(conObject);
                 }
             }
         }
         else
         {
             if (!qcon.HasJoins())
             {
                 CollectIndexedNodes(qcon.IterateChildren());
             }
         }
     }
 }
Пример #2
0
        private bool AllCanBeSearchedByIndex(Collection4 leaves)
        {
            IEnumerator i = leaves.GetEnumerator();

            while (i.MoveNext())
            {
                QCon leaf = ((QCon)i.Current);
                if (!leaf.CanLoadByIndex())
                {
                    return(false);
                }
            }
            return(true);
        }