001 //$HeadURL: http://svn.wald.intevation.org/svn/deegree/base/trunk/src/org/deegree/portal/context/GeneralExtension.java $
002 /*----------------------------------------------------------------------------
003 This file is part of deegree, http://deegree.org/
004 Copyright (C) 2001-2009 by:
005 Department of Geography, University of Bonn
006 and
007 lat/lon GmbH
008
009 This library is free software; you can redistribute it and/or modify it under
010 the terms of the GNU Lesser General Public License as published by the Free
011 Software Foundation; either version 2.1 of the License, or (at your option)
012 any later version.
013 This library is distributed in the hope that it will be useful, but WITHOUT
014 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
015 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
016 details.
017 You should have received a copy of the GNU Lesser General Public License
018 along with this library; if not, write to the Free Software Foundation, Inc.,
019 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
020
021 Contact information:
022
023 lat/lon GmbH
024 Aennchenstr. 19, 53177 Bonn
025 Germany
026 http://lat-lon.de/
027
028 Department of Geography, University of Bonn
029 Prof. Dr. Klaus Greve
030 Postfach 1147, 53001 Bonn
031 Germany
032 http://www.geographie.uni-bonn.de/deegree/
033
034 e-mail: info@deegree.org
035 ----------------------------------------------------------------------------*/
036 package org.deegree.portal.context;
037
038 import java.net.URL;
039
040 /**
041 * this class encapsulates the deegree specific extensions of the general section of a web map context document. this is
042 * a description of the GUI including the used modules (<tt>Frontend</tt>) and the parameters to control the map view (
043 * <tt>Marshallable</tt>).
044 *
045 * @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
046 * @author last edited by: $Author: apoth $
047 *
048 * @version $Revision: 21693 $, $Date: 2010-01-03 15:07:54 +0100 (Sun, 03 Jan 2010) $
049 */
050 public class GeneralExtension {
051 private Frontend frontend;
052
053 private MapParameter mapParameter;
054
055 private IOSettings iOSettings;
056
057 private AuthentificationSettings authSettings;
058
059 private boolean transparent = true;
060
061 private String bgColor = "0xFFFFFF";
062
063 private String mode;
064
065 private Node layerTreeRoot;
066
067 private MapModel mapModel;
068
069 private URL xslt;
070
071 /**
072 * Creates a new GeneralExtension object.
073 *
074 * @param iOSettings
075 *
076 * @param frontend
077 * @param mapParameter
078 * @param authSettings
079 * @param mode
080 * @param layerTreeRoot
081 */
082 public GeneralExtension( IOSettings iOSettings, Frontend frontend, MapParameter mapParameter,
083 AuthentificationSettings authSettings, String mode, Node layerTreeRoot ) {
084 setFrontend( frontend );
085 setMapParameter( mapParameter );
086 setIOSettings( iOSettings );
087 setAuthentificationSettings( authSettings );
088 setLayerTreeRoot( layerTreeRoot );
089 this.mode = mode;
090
091 }
092
093 /**
094 * Creates a new GeneralExtension object.
095 *
096 * @param iOSettings
097 *
098 * @param frontend
099 * @param mapParameter
100 * @param authSettings
101 * @param mode
102 * @param layerTreeRoot
103 * @param mapModel
104 * @param xslt
105 */
106 public GeneralExtension( IOSettings iOSettings, Frontend frontend, MapParameter mapParameter,
107 AuthentificationSettings authSettings, String mode, Node layerTreeRoot, MapModel mapModel,
108 URL xslt ) {
109 this( iOSettings, frontend, mapParameter, authSettings, mode, layerTreeRoot );
110 this.mapModel = mapModel;
111 this.xslt = xslt;
112 }
113
114 /**
115 * @return the xslt
116 */
117 public URL getXslt() {
118 return xslt;
119 }
120
121 /**
122 * @param xslt
123 * the xslt to set
124 */
125 public void setXslt( URL xslt ) {
126 this.xslt = xslt;
127 }
128
129 /**
130 * @return the mapModel
131 */
132 public MapModel getMapModel() {
133 return mapModel;
134 }
135
136 /**
137 * @param mapModel
138 * the mapModel to set
139 */
140 public void setMapModel( MapModel mapModel ) {
141 this.mapModel = mapModel;
142 }
143
144 /**
145 * returns true if the maps background should be transparent
146 *
147 * @return <code>true</code> if the maps background should be transparent
148 */
149 public boolean isTransparent() {
150 return transparent;
151 }
152
153 /**
154 * @see #isTransparent()
155 * @param transparent
156 */
157 public void setTransparent( boolean transparent ) {
158 this.transparent = transparent;
159 }
160
161 /**
162 * returns the desired background color of the map
163 *
164 * @return the desired background color of the map
165 */
166 public String getBgColor() {
167 return bgColor;
168 }
169
170 /**
171 * @see #getBgColor()
172 * @param bgColor
173 */
174 public void setBgColor( String bgColor ) {
175 this.bgColor = bgColor;
176 }
177
178 /**
179 * returns the frontend (GUI) description encapsulating objekt
180 *
181 * @return the frontend (GUI) description encapsulating objekt
182 */
183 public Frontend getFrontend() {
184 return frontend;
185 }
186
187 /**
188 * sets the frontend (GUI) description encapsulating objekt
189 *
190 * @param frontend
191 * <tt>Frontend</tt>
192 */
193 public void setFrontend( Frontend frontend ) {
194 this.frontend = frontend;
195 }
196
197 /**
198 * returns the parameters describing the control options for the map
199 *
200 * @return <tt>MapParameter</tt> encapsulating several control params
201 */
202 public MapParameter getMapParameter() {
203 return mapParameter;
204 }
205
206 /**
207 * sets the parameters describing the control options for the map
208 *
209 * @param mapParameter
210 * <tt>MapParameter</tt> encapsulating several control params
211 */
212 public void setMapParameter( MapParameter mapParameter ) {
213 this.mapParameter = mapParameter;
214 }
215
216 /**
217 * @return Returns the iOSettings.
218 */
219 public IOSettings getIOSettings() {
220 return iOSettings;
221 }
222
223 /**
224 * @param settings
225 * The iOSettings to set.
226 */
227 public void setIOSettings( IOSettings settings ) {
228 iOSettings = settings;
229 }
230
231 /**
232 * @return the authenication settings
233 */
234 public AuthentificationSettings getAuthentificationSettings() {
235 return authSettings;
236 }
237
238 /**
239 * @param authSettings
240 * the new authentication settings.
241 */
242 public void setAuthentificationSettings( AuthentificationSettings authSettings ) {
243 this.authSettings = authSettings;
244 }
245
246 /**
247 * returns the current mode of a map client using a WMC. A mode defines the action that occurs if a user performs a
248 * mouse action on the map
249 *
250 * @return the current mode of a map client using a WMC. A mode defines the action that occurs if a user performs a
251 * mouse action on the map
252 */
253 public String getMode() {
254 return mode;
255 }
256
257 /**
258 * @see #getMode()
259 * @param mode
260 */
261 public void setMode( String mode ) {
262 this.mode = mode;
263 }
264
265 /**
266 * @param layerTreeRoot
267 * to set
268 */
269 public void setLayerTreeRoot( Node layerTreeRoot ) {
270 this.layerTreeRoot = layerTreeRoot;
271 }
272
273 /**
274 * @return the xml-element containing the layer tree root.
275 */
276 public Node getLayerTreeRoot() {
277 return layerTreeRoot;
278 }
279
280 }