* things.
*
* @author David ‘Bombe’ Roden <bombe@freenetproject.org>
- * @version $Id$
*/
public class ProjectManager implements PropertyChangeListener {
String projectDescription = projectProperties.getProperty(projectPrefix + ".description");
String projectPrivateKey = projectProperties.getProperty(projectPrefix + ".privateKey");
String projectPublicKey = projectProperties.getProperty(projectPrefix + ".publicKey");
+ String projectBasePath = projectProperties.getProperty(projectPrefix + ".basePath");
Project project = new Project();
project.setId(projectId);
project.setName(projectName);
project.setDescription(projectDescription);
project.setPrivateKey(projectPrivateKey);
project.setPublicKey(projectPublicKey);
+ project.setBasePath(projectBasePath);
+ project.rescanBasePath();
projects.add(project);
logger.fine("loaded project “" + project.getName() + "”.");
projectIndex++;
projectProperties.setProperty(projectPrefix + ".description", project.getDescription());
projectProperties.setProperty(projectPrefix + ".privateKey", project.getPrivateKey());
projectProperties.setProperty(projectPrefix + ".publicKey", project.getPublicKey());
+ projectProperties.setProperty(projectPrefix + ".basePath", project.getBasePath());
projectIndex++;
}
File projectFile = new File(directoryFile, "projects.properties");
project.setDescription("");
project.setPrivateKey(keyPair[0]);
project.setPublicKey(keyPair[1]);
+ project.setBasePath("");
projects.add(project);
project.addPropertyChangeListener(this);
try {
return project;
}
+ /**
+ * Removes the given project.
+ *
+ * @param project
+ * The project to remove
+ */
+ public void removeProject(Project project) {
+ projects.remove(project);
+ try {
+ save();
+ } catch (IOException ioe1) {
+ /* ignore. */
+ }
+ }
+
//
// INTERFACE PropertyChangeListener
//