public List enumerateDirectory()

in src/main/java/com/microsoft/azure/datalake/store/ADLStoreClient.java [595:622]


    public List<DirectoryEntry> enumerateDirectory(String path,
                                                   int maxEntriesToRetrieve,
                                                   String startAfter,
                                                   String endBefore,
                                                   UserGroupRepresentation oidOrUpn)
            throws IOException {
        ArrayList<DirectoryEntry> deList = new ArrayList<DirectoryEntry>();
        int pagesize = 4000;
        int numEntriesToRequest;
        ArrayList<DirectoryEntry> list;
        String continuationToken;
        boolean eol = (maxEntriesToRetrieve <= 0); // eol=end-of-list

        while (!eol) {
            numEntriesToRequest = Math.min(maxEntriesToRetrieve, pagesize);
            DirectoryEntryListWithContinuationToken directoryEntryListWithContinuationToken = enumerateDirectoryInternal(path, numEntriesToRequest,
                    startAfter, endBefore, oidOrUpn);
            continuationToken = directoryEntryListWithContinuationToken.getContinuationToken();
            list = (ArrayList<DirectoryEntry>) directoryEntryListWithContinuationToken.getEntries();
            if (list == null || list.size() == 0) break; // return what we have so far
            int size = list.size();
            deList.addAll(list);
            startAfter = continuationToken;
            maxEntriesToRetrieve -= size;
            eol = (maxEntriesToRetrieve <= 0) || (continuationToken == "");
        }
        return deList;
    }