package es.um.redes.nanoFiles.util; import java.io.File; import java.util.Map; /** * @author rtitos * * Utility class acting as database of local files shared by this peer. */ public class FileDatabase { private Map files; public FileDatabase(String sharedFolder) { File theDir = new File(sharedFolder); if (!theDir.exists()) { theDir.mkdirs(); } this.files = FileInfo.loadFileMapFromFolder(new File(sharedFolder)); if (files.size() == 0) { System.err.println("*WARNING: No files found in folder " + sharedFolder); } } public FileInfo[] getFiles() { FileInfo[] fileinfoarray = new FileInfo[files.size()]; int numFiles = 0; for (FileInfo f : files.values()) { fileinfoarray[numFiles++] = f; } return fileinfoarray; } public String lookupFilePath(String fileHash) { FileInfo f = files.get(fileHash); if (f != null) { return f.filePath; } return null; } }