Revision 1809 org.gvsig.raster.wmts/trunk/org.gvsig.raster.wmts/org.gvsig.raster.wmts.ogc/org.gvsig.raster.wmts.ogc.impl/src/main/java/org/gvsig/raster/wmts/ogc/impl/base/WMTSProtocolHandlerFactory.java
WMTSProtocolHandlerFactory.java | ||
---|---|---|
27 | 27 |
import java.net.ConnectException; |
28 | 28 |
import java.net.URL; |
29 | 29 |
import java.util.ArrayList; |
30 |
import java.util.Iterator;
|
|
30 |
import java.util.List;
|
|
31 | 31 |
|
32 | 32 |
import org.gvsig.raster.wmts.ogc.impl.Tags; |
33 | 33 |
import org.kxml2.io.KXmlParser; |
... | ... | |
42 | 42 |
*/ |
43 | 43 |
public class WMTSProtocolHandlerFactory { |
44 | 44 |
|
45 |
private static ArrayList supportedVersions = new ArrayList();
|
|
45 |
private static List<String> supportedVersions = new ArrayList<String>();
|
|
46 | 46 |
|
47 | 47 |
static { |
48 | 48 |
supportedVersions.add("1.0.0"); |
49 | 49 |
} |
50 | 50 |
|
51 |
/** |
|
52 |
* M?todo que dada una respuesta de getCapabilities y un iterador sobre una |
|
53 |
* coleccion de WMSClient's ordenada descendentemente devuelve el cliente |
|
54 |
* cuya version es igual o inmediatamente inferior |
|
55 |
* |
|
56 |
* @param caps Capabilities con la respuesta del servidor |
|
57 |
* @param clients Iterador de conjunto ordenado descendientemente |
|
58 |
* |
|
59 |
* @return cliente cuya version es igual o inmediatamente inferior |
|
60 |
* @throws IllegalAccessException |
|
61 |
* @throws InstantiationException |
|
62 |
* |
|
63 |
*/ |
|
64 |
private static String getDriverVersion(String version, Iterator clients) throws InstantiationException, IllegalAccessException { |
|
65 |
while (clients.hasNext()) { |
|
66 |
String clientVersion = (String)clients.next(); |
|
67 |
int ret = version.compareTo(clientVersion); |
|
68 |
|
|
69 |
if (ret >= 0) { |
|
70 |
return clientVersion; |
|
71 |
} |
|
72 |
} |
|
73 |
return null; |
|
74 |
} |
|
75 |
|
|
76 | 51 |
/** |
77 | 52 |
* Establece la versi?n con la que se comunicar? con el servidor y devuelve |
78 | 53 |
* el objeto Capabilities obtenido con dicha versi?n |
... | ... | |
160 | 135 |
*/ |
161 | 136 |
private static WMTSProtocolHandler createVersionDriver(String version) { |
162 | 137 |
try { |
163 |
Class driver; |
|
138 |
Class<?> driver;
|
|
164 | 139 |
version = version.replace('.', '_'); |
165 | 140 |
driver = Class.forName("org.gvsig.raster.wmts.ogc.impl.wmts_" + version + ".WMTSProtocolHandler" + version); |
166 | 141 |
return (WMTSProtocolHandler)driver.newInstance(); |
Also available in: Unified diff