RE: [vfs] why is FileSystemConfigBuilder.setParam() protected?
This is one of my least favorite parts of VFS. To configure FileSystemOptions you have to use the appropriate FileSystemConfigBuilder. I can't tell you why it was done this way as it precedes my involvement, but I've considered reinventing this more than once. It isn't pretty. The reason I have done it that way was simply to have type-safe configuration parameters. I hate it to have just setParam(String, String) or something like this. It also was necessary to being able to mix parameters for multiple file-system implementations as 1) your url might create a layered filesystem 2) you never know exactly which filesystem implementation is going to be used So, I still like this approach. For the setParam(String, String) approach VFS provides the DelegatingFileSystemOptionsBuilder which then allows you to use setConfigString/setConfigClass which accepts just strings and uses reflection to coerce it to the required type. This was created to populate the configuration e.g. from an ant script or a properties file. Ciao, Mario - To unsubscribe, e-mail: user-unsubscr...@commons.apache.org For additional commands, e-mail: user-h...@commons.apache.org
Re: [vfs] why is FileSystemConfigBuilder.setParam() protected?
For the setParam(String, String) approach VFS provides the DelegatingFileSystemOptionsBuilder which then allows you to use setConfigString/setConfigClass which accepts just strings and uses reflection to coerce it to the required type. This was created to populate the configuration e.g. from an ant script or a properties file. Great! This is exactly what I was looking for. May I suggest updating the javadoc of FileSystemConfigBuilder and insert a link to DelegatingFileSystemOptionsBuilder? As the delegate does not implement the abstract class, it's more difficult to find it. I propose the following text: pWhen the VFS type is known at compile-time, developers should use the VFS-specific *FileSystemConfigBuilder to benefit from type-safe configuration. For generic configuration independant from the VFS type, use {...@link org.apache.commons.vfs.util.DelegatingFileSystemOptionsBuilder}./p Would be worth putting the same text in the javadoc of FileSystemOptions. Cheers, Benoit - To unsubscribe, e-mail: user-unsubscr...@commons.apache.org For additional commands, e-mail: user-h...@commons.apache.org