Please take time to read the code disclaimer.
package back;
import java.io.*;
import java.util.LinkedList;
/**
*
* @author Kent
*/
public class ProjectPackage {
private File directory;
private Project owner;
private LinkedList fileList = new LinkedList();
/**
* Constructor
* @param owner
* @param directory
*/
public ProjectPackage(Project owner, File directory) {
this.owner = owner;
this.directory = directory;
}
/**
* This method finds the files in this package
* @param file
*/
public void findFiles(File file) {
if (!file.isDirectory()) {
String ext = file.getName().substring(file.getName().lastIndexOf(".") + 1, file.getName().length());
for (FileType filetype : owner.getCsb().getFileTypeList()) {
if (filetype.isSelected()) {
for (String extension : filetype.getExtensions()) {
if (ext.equals(extension)) {
ProjectFile projectFile = new ProjectFile(file, filetype, this);
System.out.println("\t\tNew file: " + file.getName());
fileList.add(projectFile);
break;
}
}
}
}
} else {
String[] subFilesList = file.list();
for (String subFileName : subFilesList) {
findFiles(new File(file.getPath() + "\\" + subFileName));
}
}
}
/**
* @return the fileList
*/
public LinkedList getFileList() {
return fileList;
}
/**
* @param fileList the fileList to set
*/
public void setFileList(LinkedList fileList) {
this.fileList = fileList;
}
/**
* @return the directory
*/
public File getDirectory() {
return directory;
}
/**
* @param directory the directory to set
*/
public void setDirectory(File directory) {
this.directory = directory;
}
}