> But i have to say i dont like to add all those configuration stuff to > the uri - maybe this might be a handy place, but adding e.g. path > elements like those in your example might be a real pain. It might be > really hard to construct a correct uri.
I agree. It was just an example. > Now there could be a class e.g. GeneralFileSystemConfigBuilder with > > (<vfs-options name= value=>) > setConfigValue(String scheme, String name, String value) > (<vfs-options name= ><value></value>) > setConfigValue(String scheme, String name, String[] values) > (<vfs-options name= className=>) > setConfigClass(String scheme, String name, String className) > > > Which tries to locate the correct *FileSystemConfigBuilder, tries to > convert the given value/class to the expected parameter and calls the > method. > All this can be done using reflection and a configuration mistake is > fastly shown. > I will implement this class if we find a consent. Nice. Very nice. > Now there is the problem how to connect the options to a given uri. Ant can always call resolveFile(String name, FileSystemOptions fileSystemOptions) to resolve files if the task or datatype has been provided with some options. > <vfs-copy todir="[EMAIL PROTECTED]://host/usr/local/var"> > > <vfs-manager ref="mymanager"/> > > </vfs-copy> > Then the ant task should strip the @options1 and lookup a table to find > the FileSystemOptions for resolvFile() Maybe not. :) > To do the same with the FileSystemManager - as you have said - we have > to create a separate data structure first. > I will have a look at it, but for now we can stick on the xml file. The addition that I was thinking would be minor. Keep XML configuration the way it is but add configure(File/FileObject/InputStream) to FileSystemManager interface. And document the syntax of the xml file that is used to configure manager and providers. > Might this find your acceptance? Full acceptance with satisfaction guaranteed. - rami --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]