public <T> List<T> construct(String sparql, Map<String, Object> args, GraphMapper<T> mapper) {
Connection connection = dataSource.getConnection();
GraphQueryResult result = null;
try {
GraphQuery query = connection.graph(sparql);
if (args != null) {
for (Entry<String, Object> arg : args.entrySet()) {
query.parameter(arg.getKey(), arg.getValue());
}