Esempio n. 1
0
 private void BuildDisplay(NeoDatis.Btree.IBTreeNode node, int currentHeight, int
                           childIndex, object parentId, bool withIds)
 {
     if (currentHeight > lines.Length - 1)
     {
         return;
     }
     // get string buffer of this line
     System.Text.StringBuilder line = lines[currentHeight];
     if (withIds)
     {
         line.Append(node.GetId()).Append(":[");
     }
     else
     {
         line.Append("[");
     }
     for (int i = 0; i < node.GetNbKeys(); i++)
     {
         if (i > 0)
         {
             line.Append(" , ");
         }
         NeoDatis.Btree.IKeyAndValue kav = node.GetKeyAndValueAt(i);
         line.Append(kav.GetKey());
     }
     if (withIds)
     {
         line.Append("]:").Append(node.GetParentId()).Append("/").Append(parentId).Append(
             "    ");
     }
     else
     {
         line.Append("]  ");
     }
     for (int i = 0; i < node.GetNbChildren(); i++)
     {
         NeoDatis.Btree.IBTreeNode child = node.GetChildAt(i, false);
         if (child != null)
         {
             BuildDisplay(child, currentHeight + 1, i, node.GetId(), withIds);
         }
         else
         {
             lines[currentHeight + 1].Append("[Child " + (i + 1) + " null!] ");
         }
     }
 }