Пример #1
0
    private void add(final TreeEntry entry) {
      String type = entry.getType();
      String path = entry.getPath();
      if (TextUtils.isEmpty(path)) return;

      if (TYPE_BLOB.equals(type)) {
        String[] segments = path.split("/");
        if (segments.length > 1) {
          Folder folder = folders.get(segments[0]);
          if (folder != null) folder.addFile(entry, segments, 1);
        } else if (segments.length == 1) {
          Entry file = new Entry(entry, this);
          files.put(file.name, file);
        }
      } else if (TYPE_TREE.equals(type)) {
        String[] segments = path.split("/");
        if (segments.length > 1) {
          Folder folder = folders.get(segments[0]);
          if (folder != null) folder.addFolder(entry, segments, 1);
        } else if (segments.length == 1) {
          Folder folder = new Folder(entry, this);
          folders.put(folder.name, folder);
        }
      }
    }
Пример #2
0
 private void addFolder(TreeEntry entry, String[] pathSegments, int index) {
   if (index == pathSegments.length - 1) {
     Folder folder = new Folder(entry, this);
     folders.put(folder.name, folder);
   } else {
     Folder folder = folders.get(pathSegments[index]);
     if (folder != null) folder.addFolder(entry, pathSegments, index + 1);
   }
 }