+ if (!useJDASMultiThread)\r
+ {\r
+ Iterator<String> sources=src.iterator();\r
+ // iterate over each query for each source and do each one individually\r
+ for (List<String> idl:ids)\r
+ {\r
+ String source=sources.next();\r
+ FeaturesClient featuresc=new FeaturesClient(sourceRegistry.getSessionHandler().getConnectionPropertyProviderFor(source));\r
+ for (String id:idl)\r
+ {\r
+ List<String> qid=Arrays.asList(new String[] { id});\r
+ try {\r
+ DasGFFAdapter dga=featuresc.fetchData(source, qid);\r
+ Map<List<String>,DasGFFAdapter> ers=results.get(source);\r
+ if (ers==null)\r
+ {\r
+ results.put(source, ers=new HashMap<List<String>,DasGFFAdapter>());\r
+ }\r
+ ers.put(qid, dga);\r
+ } catch (Exception ex)\r
+ {\r
+ Map<List<String>,Exception> ers=errors.get(source);\r
+ if (ers==null)\r
+ {\r
+ errors.put(source, ers=new HashMap<List<String>,Exception>());\r
+ }\r
+ ers.put(qid, ex);\r
+ }\r
+ }\r
+ }\r
+ } else {\r
+ // pass them all at once\r