Yes! SdmxSource has been designed to have a plugin nature. If you want to plugin a new DataWriterEngine or DataReaderEngine then create your implementations, and create an implementation of the DataReaderFactory or DataWriterFactory to return you Reader/Writer. This is described in more detail HERE.
Okay, so you have a custom DataWriter, maybe a CSVDataWriter, that needs to know whether to output the series in columns or rows, and whether to output the full code names, or just the ids. Your custom CSVDataWriterFactory is responsible for obtaining your CSVDataWriter. But as it implements DataWriterFactory it will only get passed a DataFormat, a DataStructure, and possibly a Dataflow. If you want to pass additional information, create an implementation of the DataFormat (for example CSVDataFormat) which holds all the extra information. On the constructor of you CSVDataWriter, take an additional parameter, the CSVDataFormat, which contains all the additional information required to output CSV.
Not at the moment. However creating a RESTful web service to retrieve data and structures is a very trivial task and only requires a few lines of code, as SdmxSource provides all the necessary classes. The Programmers’ guide discusses how to create a web service, and there is an example in the Java demo project.
Yes this is possible. read the Programmers’ guide on how to plugin additional output formats.
SdmxSource will create temporary files in the location specified by the environment variable ‘java.io.tmpdir’ and can be changed by passing in this parameter as a JVM argument. Each temporary file created by sdmxsource is prefixed with ‘sdmxsource_tmp’. Temporary files are created by the default implementation of the WriteableDataLocation if a predefined in memory limit is hit. When the close method on the WriteableDataLocation is called, the temporary file will be deleted.
The Eurostat Reference Infrastructure (RI) is a set of tools which are built using the SdmxSource components.