Revision 18851 branches/v10/applications/appCatalogAndGazetteerClient/src/es/gva/cit/gazetteer/wfs/drivers/WFSServiceDriver.java
WFSServiceDriver.java | ||
---|---|---|
43 | 43 |
import java.io.File; |
44 | 44 |
import java.net.MalformedURLException; |
45 | 45 |
import java.net.URI; |
46 |
import java.net.URISyntaxException; |
|
46 | 47 |
import java.util.ArrayList; |
47 | 48 |
import java.util.Hashtable; |
48 | 49 |
import java.util.Iterator; |
49 | 50 |
import java.util.Vector; |
50 | 51 |
|
52 |
import org.gvsig.gpe.GPEParser; |
|
53 |
import org.gvsig.gpe.GPERegister; |
|
54 |
import org.gvsig.gpe.exceptions.GPEParserCreationException; |
|
55 |
import org.gvsig.gpe.gml.GPEGmlSFP0Parser; |
|
56 |
import org.gvsig.gpe.writers.GPEGeometryWithIdTest; |
|
51 | 57 |
import org.gvsig.remoteClient.gml.GMLReader; |
52 | 58 |
import org.gvsig.remoteClient.gml.IGMLFeaturesIterator; |
53 | 59 |
import org.gvsig.remoteClient.gml.exceptions.GMLException; |
... | ... | |
190 | 196 |
File file = client.getFeature(status, false, null); |
191 | 197 |
return parseOutputFile(file,query.getFieldAttribute()); |
192 | 198 |
}catch(Exception e){ |
199 |
e.printStackTrace(); |
|
193 | 200 |
return new Feature[0]; |
194 | 201 |
} |
195 | 202 |
} |
... | ... | |
198 | 205 |
* Parses the GML file |
199 | 206 |
* @param file |
200 | 207 |
* @return |
201 |
* @throws GMLException |
|
208 |
* @throws GPEParserCreationException |
|
209 |
* @throws URISyntaxException |
|
202 | 210 |
*/ |
203 |
protected Feature[] parseOutputFile(File file, String fieldAttribute) throws GMLException{ |
|
204 |
GMLReader reader = new GMLReader(file,new GazetteerGeometriesFactory(fieldAttribute)); |
|
205 |
IGMLFeaturesIterator it = reader.getFeaturesIterator(); |
|
206 |
ArrayList features = new ArrayList(); |
|
207 |
while (it.hasNext()){ |
|
208 |
Object feature = it.next(); |
|
209 |
if (feature != null){ |
|
210 |
features.add(feature); |
|
211 |
} |
|
212 |
} |
|
211 |
protected Feature[] parseOutputFile(File file, String fieldAttribute) throws URISyntaxException, GPEParserCreationException { |
|
212 |
URI uri = file.toURI(); |
|
213 |
GPEParser parser = new GPEGmlSFP0Parser(null,null); |
|
214 |
WFSGPEErrorHandler errorHandler = new WFSGPEErrorHandler(); |
|
215 |
WFSGPEContentHandler contentHandler = new WFSGPEContentHandler(fieldAttribute); |
|
216 |
parser.parse(contentHandler, errorHandler, uri); |
|
217 |
ArrayList features = contentHandler.getFeatures(); |
|
213 | 218 |
Feature[] auxFeatures = new Feature[features.size()]; |
214 | 219 |
for (int i=0 ; i<features.size() ; i++){ |
215 | 220 |
auxFeatures[i] = (Feature)features.get(i); |
Also available in: Unified diff