Revision 10628 trunk/extensions/extCatalogYNomenclator/src/es/gva/cit/gvsig/catalogClient/loaders/WCSLayerLoader.java
WCSLayerLoader.java | ||
---|---|---|
46 | 46 |
|
47 | 47 |
import org.gvsig.i18n.Messages; |
48 | 48 |
|
49 |
import com.iver.cit.gvsig.fmap.DriverException;
|
|
49 |
import com.iver.cit.gvsig.exceptions.layers.LoadLayerException;
|
|
50 | 50 |
import com.iver.cit.gvsig.fmap.layers.FLayer; |
51 | 51 |
import com.iver.utiles.extensionPoints.ExtensionPoint; |
52 | 52 |
import com.iver.utiles.extensionPoints.ExtensionPointsSingleton; |
... | ... | |
55 | 55 |
|
56 | 56 |
/** |
57 | 57 |
* This class is used to load a WCS layer in gvSIG |
58 |
*
|
|
58 |
* |
|
59 | 59 |
* @author Jorge Piera Llodra (piera_jor@gva.es) |
60 | 60 |
*/ |
61 | 61 |
public class WCSLayerLoader extends LayerLoader{ |
62 |
|
|
63 |
|
|
62 |
|
|
63 |
|
|
64 | 64 |
public WCSLayerLoader(Resource resource) { |
65 | 65 |
super(resource); |
66 | 66 |
} |
67 |
|
|
67 |
|
|
68 | 68 |
/** |
69 | 69 |
* This method loads a WSC layer from a full URL |
70 | 70 |
* @param link |
71 |
* @throws LayerLoaderException
|
|
71 |
* @throws LayerLoaderException |
|
72 | 72 |
*/ |
73 |
public void loadLayer() throws LayerLoaderException {
|
|
73 |
public void loadLayer() throws LoadLayerException {
|
|
74 | 74 |
String link = getResource().getLinkage(); |
75 | 75 |
String name = getResource().getName(); |
76 |
try { |
|
77 |
FLayer flayer = createWCSLayer(link,name); |
|
78 |
addLayerToView(flayer); |
|
79 |
} catch (IOException e) { |
|
80 |
throw new LayerLoaderException(e.getMessage(),getWindowMessage()); |
|
81 |
} catch (DriverException e) { |
|
82 |
throw new LayerLoaderException(e.getMessage(),getWindowMessage()); |
|
83 |
} |
|
84 |
} |
|
85 |
|
|
86 |
private FLayer createWCSLayer(String link,String name) throws IOException, DriverException, LayerLoaderException { |
|
76 |
FLayer flayer = createWCSLayer(link,name); |
|
77 |
addLayerToView(flayer); |
|
78 |
} |
|
79 |
|
|
80 |
|
|
81 |
private FLayer createWCSLayer(String link,String name) throws LoadLayerException { |
|
87 | 82 |
Map args = initFromQueryString(link,name); |
88 | 83 |
ExtensionPoint extensionPoint = (ExtensionPoint)ExtensionPointsSingleton.getInstance().get("CatalogLayers"); |
89 | 84 |
try { |
90 | 85 |
return (FLayer)extensionPoint.create("OGC:WCS", args ); |
91 | 86 |
} catch(Exception e) { |
92 |
throw new LayerLoaderException(getErrorMessage(),getWindowMessage());
|
|
93 |
}
|
|
87 |
throw new LoadLayerException(getResource().getName(),e);
|
|
88 |
} |
|
94 | 89 |
} |
95 |
|
|
90 |
|
|
96 | 91 |
/** |
97 | 92 |
* Builds a coverage starting from a full GetCoverage URL. |
98 | 93 |
* (Using this is not a regular function) |
... | ... | |
108 | 103 |
queryString = ""; |
109 | 104 |
} |
110 | 105 |
queryString = link.substring(link.indexOf('?')+1); |
111 |
|
|
112 |
TreeMap map = new TreeMap();
|
|
106 |
|
|
107 |
TreeMap map = new TreeMap(); |
|
113 | 108 |
String[] params = queryString.split("&"); |
114 | 109 |
for (int i = 0; i < params.length; i++) { |
115 | 110 |
if (params[i]!= null){ |
... | ... | |
126 | 121 |
map.put("COVERAGE",name); |
127 | 122 |
} |
128 | 123 |
return map; |
129 |
}
|
|
130 |
|
|
124 |
} |
|
125 |
|
|
131 | 126 |
/* |
132 | 127 |
* (non-Javadoc) |
133 | 128 |
* @see es.gva.cit.gvsig.catalogClient.loaders.LayerLoader#getErrorMessage() |
134 | 129 |
*/ |
135 | 130 |
protected String getErrorMessage() { |
136 | 131 |
return Messages.getText("wcsError") + ".\n" + |
137 |
Messages.getText("link") + ": " +
|
|
138 |
getResource().getLinkage();
|
|
132 |
Messages.getText("link") + ": " + |
|
133 |
getResource().getLinkage(); |
|
139 | 134 |
} |
140 |
|
|
135 |
|
|
141 | 136 |
/* |
142 | 137 |
* (non-Javadoc) |
143 | 138 |
* @see es.gva.cit.gvsig.catalogClient.loaders.LayerLoader#getWindowMessage() |
... | ... | |
145 | 140 |
protected String getWindowMessage() { |
146 | 141 |
return Messages.getText("wcsLoad"); |
147 | 142 |
} |
148 |
|
|
149 |
|
|
150 |
|
|
143 |
|
|
144 |
|
|
145 |
|
|
151 | 146 |
} |
Also available in: Unified diff