@Override public FsModel newModel( FsDriver context, FsMountPoint mountPoint, FsModel parent) { assert null == parent ? null == mountPoint.getParent() : parent.getMountPoint().equals(mountPoint.getParent()); return manager.newModel(context, mountPoint, parent); }
@Override public void sync() throws FsSyncWarningException, FsSyncException { new FsSync() .filter(FsControllerFilter.forPrefix(model.getMountPoint())) .run(); } }
@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); }
@Override public int compare(FsController o1, FsController o2) { return o2.getModel().getMountPoint().toHierarchicalUri().compareTo( o1.getModel().getMountPoint().toHierarchicalUri()); } }
@Override public String getMountPointOfParent() { final FsModel parent = model.getParent(); return null != parent ? parent.getMountPoint().toString() : null; }
@Override public String getMountPoint() { return model.getMountPoint().toString(); }
@Override public final void checkAccess(BitField<FsAccessOption> options, FsNodeName name, BitField<Access> types) throws IOException { controller.checkAccess(map(options), name, types); }
@Override public final void setReadOnly(BitField<FsAccessOption> options, FsNodeName name) throws IOException { controller.setReadOnly(map(options), name); }
@Override public void checkAccess( BitField<FsAccessOption> options, FsNodeName name, BitField<Access> types) throws IOException { controller.checkAccess(options, name, types); }
@Override public void unlink( BitField<FsAccessOption> options, FsNodeName name) throws IOException { controller.unlink(options, name); }
/** Returns a controller filter for the given prefix mount point. */ public static FsControllerFilter forPrefix(FsMountPoint prefix) { return new FsControllerFilter(FsModelFilter.forPrefix(prefix)); }
/** * Returns the {@code mounted} property of the * {@linkplain #getModel() file system model}. * * @return the {@code mounted} property of the * {@linkplain #getModel() file system model}. */ public final boolean isMounted() { return model.isMounted(); }