001 //$HeadURL: svn+ssh://rbezema@svn.wald.intevation.org/deegree/base/tags/2.1/src/org/deegree/ogcwebservices/wms/configuration/WMSDeegreeParams.java $
002 /*---------------- FILE HEADER ------------------------------------------
003
004 This file is part of deegree.
005 Copyright (C) 2001-2006 by:
006 EXSE, Department of Geography, University of Bonn
007 http://www.giub.uni-bonn.de/deegree/
008 lat/lon GmbH
009 http://www.lat-lon.de
010
011 This library is free software; you can redistribute it and/or
012 modify it under the terms of the GNU Lesser General Public
013 License as published by the Free Software Foundation; either
014 version 2.1 of the License, or (at your option) any later version.
015
016 This library is distributed in the hope that it will be useful,
017 but WITHOUT ANY WARRANTY; without even the implied warranty of
018 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
019 Lesser General Public License for more details.
020
021 You should have received a copy of the GNU Lesser General Public
022 License along with this library; if not, write to the Free Software
023 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
024
025 Contact:
026
027 Andreas Poth
028 lat/lon GmbH
029 Aennchenstr. 19
030 53115 Bonn
031 Germany
032 E-Mail: poth@lat-lon.de
033
034 Prof. Dr. Klaus Greve
035 Department of Geography
036 University of Bonn
037 Meckenheimer Allee 166
038 53115 Bonn
039 Germany
040 E-Mail: greve@giub.uni-bonn.de
041
042
043 ---------------------------------------------------------------------------*/
044 package org.deegree.ogcwebservices.wms.configuration;
045
046 import java.net.URL;
047 import java.util.List;
048
049 import org.deegree.enterprise.DeegreeParams;
050 import org.deegree.enterprise.Proxy;
051 import org.deegree.model.metadata.iso19115.OnlineResource;
052
053
054 /**
055 *
056 *
057 * @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
058 * @author <a href="mailto:mschneider@lat-lon.de">Markus Schneider</a>
059 * @version $Revision: 6259 $
060 */
061 public class WMSDeegreeParams extends DeegreeParams {
062
063 private static final long serialVersionUID = -8725187234309726943L;
064
065 private float mapQuality = 0.95f;
066
067 private int maxLifeTime = 3600;
068
069 private int maxMapWidth = 1000;
070
071 private int maxMapHeight = 1000;
072
073 private String copyRight = "";
074
075 private URL schemaLocation = null;
076
077 private URL dtdLocation = null;
078
079 private Proxy proxy = null;
080
081 private boolean antiAliased = false;
082
083 private int featureInfoRadius = 5;
084
085 private List<String> supportedVersions;
086
087 private URL featureSchemaLocation;
088
089 private String featureSchemaNamespace;
090
091
092 /**
093 *
094 * @param cacheSize
095 * @param maxLifeTime
096 * @param requestTimeLimit
097 * @param mapQuality
098 * @param defaultOnlineResource
099 * @param maxMapWidth
100 * @param maxMapHeight
101 * @param antiAliased
102 * @param featureInfoRadius (default = 5)
103 * @param copyRight
104 * @param schemaLocation
105 * @param dtdLocation
106 * @param proxy
107 * @param supportedVersions
108 * @param featureSchemaLocation
109 * @param featureSchemaNamespace
110 */
111 public WMSDeegreeParams( int cacheSize, int maxLifeTime, int requestTimeLimit, float mapQuality,
112 OnlineResource defaultOnlineResource, int maxMapWidth,
113 int maxMapHeight, boolean antiAliased, int featureInfoRadius, String copyRight,
114 URL schemaLocation, URL dtdLocation, Proxy proxy, List<String> supportedVersions,
115 URL featureSchemaLocation, String featureSchemaNamespace ) {
116 super( defaultOnlineResource, cacheSize, requestTimeLimit);
117 this.maxLifeTime = maxLifeTime;
118 this.mapQuality = mapQuality;
119 this.maxMapHeight = maxMapHeight;
120 this.maxMapWidth = maxMapWidth;
121 this.antiAliased = antiAliased;
122 this.copyRight = copyRight;
123 this.schemaLocation = schemaLocation;
124 this.dtdLocation = dtdLocation;
125 this.proxy = proxy;
126 this.featureInfoRadius = featureInfoRadius;
127 this.supportedVersions = supportedVersions;
128 this.featureSchemaLocation = featureSchemaLocation;
129 this.featureSchemaNamespace = featureSchemaNamespace;
130 }
131
132 /**
133 * @return the maximum life time of the internal processes (Threads) of
134 * the deegree WMS. default is 3600 seconds. Datasources that are linked
135 * to WMS are not targeted by this value.
136 *
137 *
138 */
139 public int getMaxLifeTime() {
140 return maxLifeTime;
141 }
142
143 /**
144 * @return a copy right note to draw at the left side of the maps bottom
145 *
146 */
147 public String getCopyRight() {
148 return copyRight;
149 }
150
151 /**
152 * @return the quality of the map for none loss-less image formats. the
153 * value ranges from 0 (lowest quality) to 1 (best quality)
154 * <p>Default is 0.95
155 */
156 public float getMapQuality() {
157 return mapQuality;
158 }
159
160 /**
161 * @return the maximum map height that can be requested. If the GetMap-Parameter
162 * 'HEIGHT' extends max map width an exception shall be returned to the client.
163 * <p>Default is 1000
164 */
165 public int getMaxMapHeight() {
166 return maxMapHeight;
167 }
168
169 /**
170 * @return the maximum map width that can be requested. If the GetMap-Parameter
171 * 'WIDTH' extends max map width an exception shall be returned to the client.
172 * <p>Default is 1000
173 */
174 public int getMaxMapWidth() {
175 return maxMapWidth;
176 }
177
178 /**
179 * @return the URL where the sxm schema definition of the response to an
180 * GetFeatureInfo request is located
181 */
182 public URL getSchemaLocation() {
183 return schemaLocation;
184 }
185
186 /**
187 * @return the URL where the DTD defining the OGC WMS capabilities is located
188 */
189 public URL getDTDLocation() {
190 return dtdLocation;
191 }
192
193 /**
194 * @return the proxy used with the WMS.
195 */
196 public Proxy getProxy() {
197 return proxy;
198 }
199
200 /**
201 * @return true if a map shall be rendered with antialising
202 */
203 public boolean isAntiAliased() {
204 return antiAliased;
205 }
206
207 /**
208 * @return the radius (pixel) of the area considered for a feature info request
209 * (default = 5px)
210 */
211 public int getFeatureInfoRadius() {
212 return featureInfoRadius;
213 }
214
215 /**
216 * @return the supportedVersions.
217 */
218 public List<String> getSupportedVersions() {
219 return supportedVersions;
220 }
221
222 /**
223 * @param maxMapHeight The maxMapHeight to set.
224 */
225 public void setMaxMapHeight( int maxMapHeight ) {
226 this.maxMapHeight = maxMapHeight;
227 }
228
229 /**
230 * @param maxMapWidth The maxMapWidth to set.
231 */
232 public void setMaxMapWidth( int maxMapWidth ) {
233 this.maxMapWidth = maxMapWidth;
234 }
235
236 /**
237 * @return Returns the featureSchemaLocation.
238 */
239 public URL getFeatureSchemaLocation() {
240 return featureSchemaLocation;
241 }
242
243 /**
244 * @return Returns the featureSchemaNamespace.
245 */
246 public String getFeatureSchemaNamespace() {
247 return featureSchemaNamespace;
248 }
249
250 }
251 /* ********************************************************************
252 Changes to this class. What the people have been up to:
253 $Log$
254 Revision 1.11 2007/01/24 11:50:13 schmitz
255 Fixed doc.
256
257 Revision 1.10 2006/11/30 20:05:08 poth
258 support useless gazetteer parameters removed
259
260 Revision 1.9 2006/09/08 08:42:01 schmitz
261 Updated the WMS to be 1.1.1 conformant once again.
262 Cleaned up the WMS code.
263 Added cite WMS test data.
264
265 Revision 1.8 2006/07/12 16:59:32 poth
266 required adaptions according to renaming of OnLineResource to OnlineResource
267
268 Revision 1.7 2006/07/12 14:46:19 poth
269 comment footer added
270
271 ********************************************************************** */