if (!directory.isDirectory()) {
return;
}
- for (File file: directory.listFiles()) {
+ for (File file : directory.listFiles()) {
ProjectFileImpl projectFileChild = projectFile.addFile(file.getName(), file.length(), file.isDirectory(), file.isHidden());
if (file.isDirectory()) {
scanDirectory(file, projectFileChild);
}
/**
+ * @see net.pterodactylus.jsite.project.ProjectFile#getParent()
+ */
+ public ProjectFile getParent() {
+ return parentProjectFile;
+ }
+
+ /**
* {@inheritDoc}
*/
public long getSize() {
* Abstraction for a that exists on the machine {@link Core} is being run on.
* This abstraction layer exists to make it possible to run jSite as a daemon
* and only connect to it via network.
- *
+ *
* @author David ‘Bombe’ Roden <bombe@freenetproject.org>
*/
public interface ProjectFile {
/**
* Returns the name of the file.
- *
+ *
* @return The name of the file
*/
public String getName();
/**
+ * Returns the parent of this project file.
+ *
+ * @return The parent of this project file, or <code>null</code> if this
+ * project file does not have a parent
+ */
+ public ProjectFile getParent();
+
+ /**
* Returns all parent files of this file. This file is the last file in the
* returned list.
- *
+ *
* @return A list of all parents of this file and this file itself
*/
public List<ProjectFile> getParents();
/**
* Returns the complete path of this file, without a leading
* {@link File#separator}.
- *
+ *
* @return The complete path of this file
*/
public String getCompletePath();
/**
* Returns the size of the file. If this file is a directory, the returned
* value is unspecified.
- *
+ *
* @see File#length()
* @return The size of the file
*/
/**
* Returns whether this file is a directory.
- *
+ *
* @return <code>true</code> if this file is a directory,
* <code>false</code> otherwise
*/
/**
* Returns whether this file is a file (as opposed to being a directory).
- *
+ *
* @return <code>true</code> if this file is a file, <code>false</code>
* otherwise
*/
/**
* Returns whether this file is hidden.
- *
+ *
* @return <code>true</code> if this file is hidden
*/
public boolean isHidden();
/**
* If this file is a directory, returns all files in this directory.
- *
+ *
* @see #isDirectory()
* @return All files in this directory if this file is a directory, or
* <code>null</code> if this file is not a directory