When attempting to use a Java library com.opencsv.CSVWriter 3.7's writeAll(ResultSet rs, boolean includeColumnNames) method I get the error
The library attempts to use the getMetaData() method but it was never implemented. This seems to be a part of the java.sql.ResultSet interface.
My guess is in the fillResult() method the QueryResult has a ResultSetMetaData returned by result.getMetaData(). It might be as easy as storing that into a class variable and returning it from the getMetaData() method.