Enable reuse of FileTreeIterator and FileEntry for non subclasses
For EGit change I2c41d86b8b74c2a334433de1bbfed5b36af872bf, ContainerTreeIterator also needs to create entries for File objects in case of filtered resources. Instead of reimplementing FileEntry there, make the constructor public so that it can be reused. Also allow to pass a WorkingTreeIterator instead of a FileTreeIterator in FileTreeIterator's constructor, which is enough and allows to pass other subclasses. Bug: 358901 Change-Id: Ie0f9c9434ef7d73a8d73d4fe46db4147ded1d267 Signed-off-by: Chris Aniszczyk <zx@twitter.com>
This commit is contained in:
parent
55e8f2a433
commit
4213a91c97
|
@ -120,7 +120,8 @@ public FileTreeIterator(final File root, FS fs, WorkingTreeOptions options) {
|
|||
* the subdirectory. This should be a directory contained within
|
||||
* the parent directory.
|
||||
*/
|
||||
protected FileTreeIterator(final FileTreeIterator p, final File root, FS fs) {
|
||||
protected FileTreeIterator(final WorkingTreeIterator p, final File root,
|
||||
FS fs) {
|
||||
super(p);
|
||||
directory = root;
|
||||
this.fs = fs;
|
||||
|
@ -155,7 +156,15 @@ static public class FileEntry extends Entry {
|
|||
|
||||
private long lastModified;
|
||||
|
||||
FileEntry(final File f, FS fs) {
|
||||
/**
|
||||
* Create a new file entry.
|
||||
*
|
||||
* @param f
|
||||
* file
|
||||
* @param fs
|
||||
* file system
|
||||
*/
|
||||
public FileEntry(final File f, FS fs) {
|
||||
file = f;
|
||||
|
||||
if (f.isDirectory()) {
|
||||
|
|
Loading…
Reference in New Issue