public class FileSystemRepository extends Object implements FolderRepository, RRepositoryFactory, Closeable
| Constructor and Description |
|---|
FileSystemRepository() |
| Modifier and Type | Method and Description |
|---|---|
FileData |
check(String name)
Read a file descriptor by the given path name.
|
FileData |
checkHistory(String name,
String version)
Read a file descriptor by the given path name of the given version.
|
void |
close() |
FileData |
copyHistory(String srcName,
FileData destData,
String version)
Copy a file of the given version to the destination file.
|
boolean |
delete(FileData data)
Delete a file or mark it as deleted.
|
boolean |
deleteHistory(FileData data)
Delete a file from the history.
|
protected FileData |
getFileData(File file) |
File |
getRoot() |
void |
initialize()
Initialize factory.
|
protected void |
invokeListener() |
protected boolean |
isSkip(File file) |
List<FileData> |
list(String path)
Return a list of files recursively in the given folder.
|
List<FileData> |
listFiles(String path,
String version)
Return a list of files recursively in the given folder and given version.
|
List<FileData> |
listFolders(String path)
Return a list of folders in the given path (not recursively).
|
List<FileData> |
listHistory(String name)
List a versions of the given file.
|
FileItem |
read(String name)
Read a file by the given path name.
|
FileItem |
readHistory(String name,
String version)
Read a file by the given path name of the given version.
|
FileData |
save(FileData data,
InputStream stream)
Save a file.
|
FileData |
save(FileData folderData,
Iterable<FileItem> files,
ChangesetType changesetType)
Save the folder.
|
List<FileData> |
save(List<FileItem> fileItems)
Save multiple projects in one transaction.
|
List<FileData> |
save(List<FolderItem> folderItems,
ChangesetType changesetType)
Save multiple files at once Used only in deployment services
|
void |
setListener(Listener callback)
Set a listener to monitor changes in the repository.
|
void |
setRoot(File root) |
void |
setUri(String path) |
Features |
supports()
Get the features supported by the repository.
|
public void setRoot(File root)
public void setUri(String path)
public void initialize()
throws RRepositoryException
RRepositoryFactoryinitialize in interface RRepositoryFactoryRRepositoryExceptionpublic List<FileData> list(String path) throws IOException
Repositorylist in interface Repositorypath - the folder to scan. The path must be ended by '/' or be empty.IOException - if not possible to read the directory.public FileData check(String name) throws IOException
Repositorycheck in interface Repositoryname - the path name of the file to read.IOException - if not possible to read the file descriptor.public FileItem read(String name) throws IOException
Repositoryread in interface Repositoryname - the path name of the file to read.IOException - if not possible to read the file.public FileData save(FileData data, InputStream stream) throws IOException
Repositorysave in interface Repositorydata - the file descriptor.stream - the stream to save with the specified file descriptor.IOException - if not possible to save the file.public List<FileData> save(List<FileItem> fileItems) throws IOException
Repositorysave in interface RepositoryfileItems - list of file descriptor and stream pairsIOException - if not possible to save the file.public boolean delete(FileData data) throws IOException
Repositorydelete in interface Repositorydata - the file descriptor to delete.IOException - if not possible to delete the file.public void setListener(Listener callback)
RepositorysetListener in interface Repositorycallback - the listener.public List<FileData> listHistory(String name)
RepositoryRepository.read(String) method.listHistory in interface Repositoryname - the file name.public FileData checkHistory(String name, String version) throws IOException
RepositoryRepository.check(String) method.checkHistory in interface Repositoryname - the path name of the file to read.version - the version of the file to read, can be null.IOException - if not possible to read the file descriptor.Repository.read(String)public FileItem readHistory(String name, String version) throws IOException
RepositoryRepository.read(String) method.readHistory in interface Repositoryname - the path name of the file to read.version - the version of the file to read, can be null.IOException - if not possible to read the file.Repository.read(String)public boolean deleteHistory(FileData data) throws IOException
RepositorydeleteHistory in interface Repositorydata - the file descriptor to delete. The fields "name", "version", "author" and "comment" must be
initialized.IOException - if not possible to delete the file.Repository.delete(FileData)public FileData copyHistory(String srcName, FileData destData, String version) throws IOException
RepositorycopyHistory in interface RepositorysrcName - the file to copy.destData - the destination file descriptor.version - the version of the file to copyIOException - if not possible to copy the filepublic Features supports()
Repositorysupports in interface Repositoryprotected FileData getFileData(File file) throws IOException
IOExceptionpublic File getRoot()
public void close()
close in interface Closeableclose in interface AutoCloseableprotected void invokeListener()
public List<FileData> listFolders(String path)
FolderRepositorylistFolders in interface FolderRepositorypath - the folder to scan. The path must be ended by '/' or be empty.public List<FileData> listFiles(String path, String version) throws IOException
FolderRepositorylistFiles in interface FolderRepositorypath - the folder to scan. The path must be ended by '/' or be empty.version - the version of the folder to read, can be null.IOException - if not possible to read the directory.public FileData save(FileData folderData, Iterable<FileItem> files, ChangesetType changesetType) throws IOException
FolderRepositorysave in interface FolderRepositoryfolderData - folder descriptorfiles - all files inside the folder recursively or only changed (modified, added, deleted) files depending
on changesetTypechangesetType - if ChangesetType.DIFF, only changed files. If ChangesetType.FULL all files
that exist in projectIOException - if not possible to save the folder.public List<FileData> save(List<FolderItem> folderItems, ChangesetType changesetType) throws IOException
FolderRepositorysave in interface FolderRepositoryfolderItems - list of folder descriptor and its fileschangesetType - if ChangesetType.DIFF, only changed files. If ChangesetType.FULL all files
that exist in projectIOException - if not possible to save the folder.protected boolean isSkip(File file)
Copyright © 2004–2020 OpenL Tablets. All rights reserved.