code: private void scanObjectInstance(String type, String []fields, int fieldLen)
      throws IOException
    {
      PathMapHessian pathMap = _pathMap;
      
      for (int i = 0; i < fieldLen; i++) {
        String key = fields[i];
        
        PathHessian path = pathMap.get(key);
  
        if (path == null) {
          skipObject();
        }
        else {
          _pathMap = path.getPathMap();
  
          path.scan(this, _values);
          
          _pathMap = pathMap;
        }
      }
    }
docs: /*
  private void scanMap(String type)
  throws IOException
  {
  String key;
  
  PathMapHessian pathMap = _pathMap;
  
  while ((key = scanKey()) != null) {
  PathHessian path = pathMap.get(key);
  
  if (path != null) {
  _pathMap = path.getPathMap();
  
  path.scan(this, _values);
  
  _pathMap = pathMap;
  }
  else {
  skipObject();
  }
  }
  }