public class Folder extends Node implements FolderBase<Node,Folder>
AppFileSystem
tree.
Folders may have children folders or files, and provides methods to create new children.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
PSEUDO_CLASS |
static int |
VERSION |
fileSystem, folder
codeVersion, info, storage
Constructor and Description |
---|
Folder(FileCreationContext context) |
Modifier and Type | Method and Description |
---|---|
void |
archive(java.nio.file.Path dir) |
Folder |
createFolder(java.lang.String name)
Creates a subfolder of this folder.
|
Project |
createProject(java.lang.String name)
Creates a new
Project in this folder. |
void |
delete() |
<T extends Node> |
getChild(java.lang.Class<T> clazz,
java.lang.String name,
java.lang.String... more)
Gets the child node of class T at path "name/name2/..." relative to this folder, in a typesafe way, or empty if it does not exist.
|
java.util.Optional<Node> |
getChild(java.lang.String name,
java.lang.String... more)
Gets the child node at path "name/name2/..." relative to this folder, or empty if it does not exist.
|
java.util.List<Node> |
getChildren()
Get the children nodes of this folder.
|
java.util.Optional<Folder> |
getFolder(java.lang.String name,
java.lang.String... more)
Gets the folder at path "name/name2/..." relative to this folder, or empty if it does not exist.
|
boolean |
isWritable() |
void |
unarchive(java.nio.file.Path dir) |
getFileSystem, getParent, getPath, isFolder
getChildInfo, getCodeVersion, getCreationDate, getDescription, getId, getModificationDate, getName, getParentInfo, getVersion, isAheadOfVersion, moveTo, rename, setDescription, toString
public static final java.lang.String PSEUDO_CLASS
public static final int VERSION
public Folder(FileCreationContext context)
public boolean isWritable()
public java.util.List<Node> getChildren()
getChildren
in interface FolderBase<Node,Folder>
public java.util.Optional<Node> getChild(java.lang.String name, java.lang.String... more)
getChild
in interface FolderBase<Node,Folder>
public <T extends Node> java.util.Optional<T> getChild(java.lang.Class<T> clazz, java.lang.String name, java.lang.String... more)
getChild
in interface FolderBase<Node,Folder>
public java.util.Optional<Folder> getFolder(java.lang.String name, java.lang.String... more)
getFolder
in interface FolderBase<Node,Folder>
public Folder createFolder(java.lang.String name)
createFolder
in interface FolderBase<Node,Folder>
public Project createProject(java.lang.String name)
Project
in this folder. If a project with same name already exists, returns the existing project.public void archive(java.nio.file.Path dir)
public void unarchive(java.nio.file.Path dir)