private Multimap<WorkspaceStorage, S> getXmlData(LocalDate start,
LocalDate end) {
XMLGregorianCalendar startDate = toXmlDate(start);
XMLGregorianCalendar endDate = toXmlDate(end);
XmlPlugin plugin = XmlPlugin.getDefault();
IPath[] storagePaths = plugin.getStoragePaths();
Multimap<WorkspaceStorage, S> data =
LinkedListMultimap.create(storagePaths.length);
Multimap<WorkspaceStorage, File> files =
LinkedListMultimap.create(storagePaths.length);
for (IPath storagePath : storagePaths) {
List<File> fileList = getDataStore().getDataFiles(start, end, storagePath);
IPath workspacePath = plugin.getWorkspacePath(storagePath);
files.putAll(new WorkspaceStorage(storagePath, workspacePath), fileList);
}
for (Map.Entry<WorkspaceStorage, File> entry : files.entries()) {
for (S list : getCategories(getDataStore().read(entry.getValue()))) {