import java.util.logging.Level;
import java.util.logging.Logger;
+import net.pterodactylus.util.io.Closer;
+import net.pterodactylus.util.io.StreamCopier;
import net.pterodactylus.util.xml.SimpleXML;
import net.pterodactylus.util.xml.XML;
import de.todesbaum.jsite.application.FileOption;
import de.todesbaum.jsite.main.ConfigurationLocator.ConfigurationLocation;
import de.todesbaum.util.freenet.fcp2.ClientPutDir.ManifestPutter;
import de.todesbaum.util.freenet.fcp2.PriorityClass;
-import de.todesbaum.util.io.Closer;
-import de.todesbaum.util.io.StreamCopier;
/**
* The configuration.
*
* @return A list of all projects
*/
- public Project[] getProjects() {
+ public List<Project> getProjects() {
List<Project> projects = new ArrayList<Project>();
SimpleXML projectsNode = rootNode.getNode("project-list");
if (projectsNode != null) {
} else {
project.setIgnoreHiddenFiles(true);
}
+ project.setAlwaysForceInsert(Boolean.parseBoolean(projectNode.getValue("always-force-insert", "false")));
/* load last insert hashes. */
Map<String, FileOption> fileOptions = new HashMap<String, FileOption>();
}
}
}
- return projects.toArray(new Project[projects.size()]);
+ return projects;
}
/**
* @param projects
* The list of all projects
*/
- public void setProjects(Project[] projects) {
+ public void setProjects(List<Project> projects) {
SimpleXML projectsNode = new SimpleXML("project-list");
for (Project project : projects) {
SimpleXML projectNode = projectsNode.append("project");
projectNode.append("insert-uri", project.getInsertURI());
projectNode.append("request-uri", project.getRequestURI());
projectNode.append("ignore-hidden-files", String.valueOf(project.isIgnoreHiddenFiles()));
+ projectNode.append("always-force-insert", String.valueOf(project.isAlwaysForceInsert()));
/* store last insert hashes. */
SimpleXML lastInsertHashesNode = projectNode.append("last-insert-hashes");
fileOptionNode.append("insert", String.valueOf(fileOption.isInsert()));
fileOptionNode.append("insert-redirect", String.valueOf(fileOption.isInsertRedirect()));
fileOptionNode.append("custom-key", fileOption.getCustomKey());
- fileOptionNode.append("changed-name", fileOption.getChangedName());
+ fileOptionNode.append("changed-name", fileOption.getChangedName().orNull());
fileOptionNode.append("mime-type", fileOption.getMimeType());
}
}