public void setPath(VFile file) {

      this.mVFile = file;

      String name_f = file.getName();
      String name_n = this.getName();

      if (name_n == null) {
        // skip
      } else if (name_n.equals("")) {
        // skip
      } else if (name_n.equals("*")) {
        // skip
      } else {
        if (!name_n.equals(name_f)) {
          throw new RuntimeException("required a '" + name_n + "' but get a '" + name_f + "'");
        }
      }

      NodeShell parent = this.mParent;
      if (parent != null) {
        parent.setPath(file.getParentFile());
      }
    }