示例#1
0
 /// <exception cref="System.IO.IOException"/>
 internal void LoadINodeSection(InputStream @in)
 {
     FsImageProto.INodeSection s = FsImageProto.INodeSection.ParseDelimitedFrom(@in);
     fsn.dir.ResetLastInodeId(s.GetLastInodeId());
     Log.Info("Loading " + s.GetNumInodes() + " INodes.");
     for (int i = 0; i < s.GetNumInodes(); ++i)
     {
         FsImageProto.INodeSection.INode p = FsImageProto.INodeSection.INode.ParseDelimitedFrom
                                                 (@in);
         if (p.GetId() == INodeId.RootInodeId)
         {
             LoadRootINode(p);
         }
         else
         {
             INode n = LoadINode(p);
             dir.AddToInodeMap(n);
         }
     }
 }