1 package net.sourceforge.xmlfit.data;
2
3 import net.sourceforge.xmlfit.data.impl.DataSourceFactoryImpl;
4
5 /**
6 * Factory for the XMLFit DataSources.
7 */
8 public interface DataSourceFactory {
9
10 /**
11 * The instance of the factory which will be use by XMLFit.
12 */
13 // Design - Comment:
14 // There never be more then one implementation so the default factory pattern is ok.
15 // is not final because for testing we should be able to change the implementation.
16 public static DataSourceFactory INSTANCE = DataSourceFactoryImpl.INSTANCE;
17
18 /**
19 * Create a DataSource for file, the file extension is used to selected the DataSource.
20 * Example: File with the name *.xml a instance of a XMLDataSourceImpl will be return.
21 * @param fileName the name of the DataSource file. For Example a XML File.
22 * @return a instance of a DataSource for the given file type.
23 */
24 public DataSource createDataSource(String fileName);
25
26 }