001: //$HeadURL: https://svn.wald.intevation.org/svn/deegree/base/trunk/src/org/deegree/ogcwebservices/wms/configuration/WMSDeegreeParams.java $
002: /*---------------- FILE HEADER ------------------------------------------
003:
004: This file is part of deegree.
005: Copyright (C) 2001-2008 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: * @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
057: * @author <a href="mailto:mschneider@lat-lon.de">Markus Schneider</a>
058: * @version $Revision: 9345 $
059: */
060: public class WMSDeegreeParams extends DeegreeParams {
061:
062: private static final long serialVersionUID = -8725187234309726943L;
063:
064: private float mapQuality = 0.95f;
065:
066: private int maxLifeTime = 3600;
067:
068: private int maxMapWidth = 1000;
069:
070: private int maxMapHeight = 1000;
071:
072: private String copyRight = "";
073:
074: private URL schemaLocation = null;
075:
076: private URL dtdLocation = null;
077:
078: private Proxy proxy = null;
079:
080: private boolean antiAliased = false;
081:
082: private int featureInfoRadius = 5;
083:
084: private List<String> supportedVersions;
085:
086: private URL featureSchemaLocation;
087:
088: private String featureSchemaNamespace;
089:
090: /**
091: *
092: * @param cacheSize
093: * @param maxLifeTime
094: * @param requestTimeLimit
095: * @param mapQuality
096: * @param defaultOnlineResource
097: * @param maxMapWidth
098: * @param maxMapHeight
099: * @param antiAliased
100: * @param featureInfoRadius (default = 5)
101: * @param copyRight
102: * @param schemaLocation
103: * @param dtdLocation
104: * @param proxy
105: * @param supportedVersions
106: * @param featureSchemaLocation
107: * @param featureSchemaNamespace
108: */
109: public WMSDeegreeParams(int cacheSize, int maxLifeTime,
110: int requestTimeLimit, float mapQuality,
111: OnlineResource defaultOnlineResource, int maxMapWidth,
112: int maxMapHeight, boolean antiAliased,
113: int featureInfoRadius, String copyRight,
114: URL schemaLocation, URL dtdLocation, Proxy proxy,
115: List<String> supportedVersions, URL featureSchemaLocation,
116: String featureSchemaNamespace) {
117: super (defaultOnlineResource, cacheSize, requestTimeLimit);
118: this .maxLifeTime = maxLifeTime;
119: this .mapQuality = mapQuality;
120: this .maxMapHeight = maxMapHeight;
121: this .maxMapWidth = maxMapWidth;
122: this .antiAliased = antiAliased;
123: this .copyRight = copyRight;
124: this .schemaLocation = schemaLocation;
125: this .dtdLocation = dtdLocation;
126: this .proxy = proxy;
127: this .featureInfoRadius = featureInfoRadius;
128: this .supportedVersions = supportedVersions;
129: this .featureSchemaLocation = featureSchemaLocation;
130: this .featureSchemaNamespace = featureSchemaNamespace;
131: }
132:
133: /**
134: * @return the maximum life time of the internal processes (Threads) of
135: * the deegree WMS. default is 3600 seconds. Datasources that are linked
136: * to WMS are not targeted by this value.
137: *
138: *
139: */
140: public int getMaxLifeTime() {
141: return maxLifeTime;
142: }
143:
144: /**
145: * @return a copy right note to draw at the left side of the maps bottom
146: *
147: */
148: public String getCopyRight() {
149: return copyRight;
150: }
151:
152: /**
153: * @return the quality of the map for none loss-less image formats. the
154: * value ranges from 0 (lowest quality) to 1 (best quality)
155: * <p>Default is 0.95
156: */
157: public float getMapQuality() {
158: return mapQuality;
159: }
160:
161: /**
162: * @return the maximum map height that can be requested. If the GetMap-Parameter
163: * 'HEIGHT' extends max map width an exception shall be returned to the client.
164: * <p>Default is 1000
165: */
166: public int getMaxMapHeight() {
167: return maxMapHeight;
168: }
169:
170: /**
171: * @return the maximum map width that can be requested. If the GetMap-Parameter
172: * 'WIDTH' extends max map width an exception shall be returned to the client.
173: * <p>Default is 1000
174: */
175: public int getMaxMapWidth() {
176: return maxMapWidth;
177: }
178:
179: /**
180: * @return the URL where the sxm schema definition of the response to an
181: * GetFeatureInfo request is located
182: */
183: public URL getSchemaLocation() {
184: return schemaLocation;
185: }
186:
187: /**
188: * @return the URL where the DTD defining the OGC WMS capabilities is located
189: */
190: public URL getDTDLocation() {
191: return dtdLocation;
192: }
193:
194: /**
195: * @return the proxy used with the WMS.
196: */
197: public Proxy getProxy() {
198: return proxy;
199: }
200:
201: /**
202: * @return true if a map shall be rendered with antialising
203: */
204: public boolean isAntiAliased() {
205: return antiAliased;
206: }
207:
208: /**
209: * @return the radius (pixel) of the area considered for a feature info request
210: * (default = 5px)
211: */
212: public int getFeatureInfoRadius() {
213: return featureInfoRadius;
214: }
215:
216: /**
217: * @return the supportedVersions.
218: */
219: public List<String> getSupportedVersions() {
220: return supportedVersions;
221: }
222:
223: /**
224: * @param maxMapHeight The maxMapHeight to set.
225: */
226: public void setMaxMapHeight(int maxMapHeight) {
227: this .maxMapHeight = maxMapHeight;
228: }
229:
230: /**
231: * @param maxMapWidth The maxMapWidth to set.
232: */
233: public void setMaxMapWidth(int maxMapWidth) {
234: this .maxMapWidth = maxMapWidth;
235: }
236:
237: /**
238: * @return Returns the featureSchemaLocation.
239: */
240: public URL getFeatureSchemaLocation() {
241: return featureSchemaLocation;
242: }
243:
244: /**
245: * @return Returns the featureSchemaNamespace.
246: */
247: public String getFeatureSchemaNamespace() {
248: return featureSchemaNamespace;
249: }
250:
251: }
|