protected FsDecoratingController(final FsController controller) { super(controller.getModel()); this.controller = controller; }
@Override public boolean accept(FsController controller) { return filter.accept(controller.getModel()); } }
@Override public boolean accept(FsController controller) { return controller.getModel().isMounted(); } }
/** * {@inheritDoc} * <p> * The implementation in the class {@link FsArchiveDriver} forwards the * call to the given file system manager. */ @Override public final FsController newController( FsManager context, FsModel model, @Nonnull FsController parent) { assert parent.getModel().equals(model.getParent()); return context.newController(this, model, parent); }
@Override public FsController newController( FsArchiveDriver<? extends FsArchiveEntry> context, FsModel model, @Nullable FsController parent) { assert null == parent ? null == model.getParent() : parent.getModel().equals(model.getParent()); return manager.newController(context, model, parent); }
FsMountPoint getMountPoint() { return getController().getModel().getMountPoint(); }
private @Nullable FsScheme getScheme() { if (this != innerArchive) return null; final FsController controller = this.controller; if (null != controller) return controller.getModel().getMountPoint().getScheme(); return getArchiveDetector().scheme(file.getPath()); }
@Override public final FsController newController( final FsManager context, final FsModel model, final @CheckForNull FsController parent) throws ServiceConfigurationError { assert null == parent ? null == model.getParent() : parent.getModel().equals(model.getParent()); return driver(model.getMountPoint()).newController(context, model, parent); }
/** * Returns a mount point for the given (virtual) directory {@code tree}. * If {@code tree} refers to a (prospective) archive file, then its mount * point gets returned. * Otherwise, the path of the file object is used to create a new mount * point. * Note that making up an artificial mount point like this will only work * for use with {@link FsManager#accept(Filter, Visitor)}. * * @param tree a file or directory in the (virtual) file system space. * @return A mount point for the given (virtual) directory tree. */ @SuppressWarnings("deprecation") static FsMountPoint mountPoint(final TFile tree) { if (tree.isArchive()) { return tree.getController().getModel().getMountPoint(); // fast path //return tree.getNodePath().getMountPoint(); // slow path } try { return new FsMountPoint(new URI(tree.getFile().toURI() + "/"), CANONICALIZE); } catch (final URISyntaxException ex) { throw new AssertionError(ex); } }
? new FsNodePath( file) : new FsNodePath( enclArchive .getController() .getModel() .getMountPoint(), nodeName));