001 //$HeadURL: svn+ssh://rbezema@svn.wald.intevation.org/deegree/base/branches/2.2_testing/src/org/deegree/portal/context/GeneralExtension.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.portal.context;
045
046 /**
047 * this class encapsulates the deegree specific extensions of the general section of a web map
048 * context document. this is a description of the GUI including the used modules (<tt>Frontend</tt>)
049 * and the parameters to control the map view (<tt>Marshallable</tt>).
050 *
051 * @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
052 * @author last edited by: $Author: apoth $
053 *
054 * @version $Revision: 9346 $, $Date: 2007-12-27 17:39:07 +0100 (Do, 27 Dez 2007) $
055 */
056 public class GeneralExtension {
057 private Frontend frontend = null;
058
059 private MapParameter mapParameter = null;
060
061 private IOSettings iOSettings = null;
062
063 private AuthentificationSettings authSettings = null;
064
065 private boolean transparent = true;
066
067 private String bgColor = "0xFFFFFF";
068
069 private String mode = null;
070
071 private Node layerTreeRoot = null;
072
073 /**
074 * Creates a new GeneralExtension object.
075 *
076 * @param frontend
077 * @param mapParameter
078 */
079 public GeneralExtension( IOSettings iOSettings, Frontend frontend, MapParameter mapParameter,
080 AuthentificationSettings authSettings, String mode, Node layerTreeRoot ) {
081 setFrontend( frontend );
082 setMapParameter( mapParameter );
083 setIOSettings( iOSettings );
084 setAuthentificationSettings( authSettings );
085 setLayerTreeRoot( layerTreeRoot );
086 this.mode = mode;
087
088 }
089
090 /**
091 * returns true if the maps background should be transparent
092 *
093 * @return <code>true</code> if the maps background should be transparent
094 */
095 public boolean isTransparent() {
096 return transparent;
097 }
098
099 /**
100 * @see #isTransparent()
101 * @param transparent
102 */
103 public void setTransparent( boolean transparent ) {
104 this.transparent = transparent;
105 }
106
107 /**
108 * returns the desired background color of the map
109 *
110 * @return the desired background color of the map
111 */
112 public String getBgColor() {
113 return bgColor;
114 }
115
116 /**
117 * @see #getBgColor()
118 * @param bgColor
119 */
120 public void setBgColor( String bgColor ) {
121 this.bgColor = bgColor;
122 }
123
124 /**
125 * returns the frontend (GUI) description encapsulating objekt
126 *
127 * @return the frontend (GUI) description encapsulating objekt
128 */
129 public Frontend getFrontend() {
130 return frontend;
131 }
132
133 /**
134 * sets the frontend (GUI) description encapsulating objekt
135 *
136 * @param frontend
137 * <tt>Frontend</tt>
138 */
139 public void setFrontend( Frontend frontend ) {
140 this.frontend = frontend;
141 }
142
143 /**
144 * returns the parameters describing the control options for the map
145 *
146 * @return <tt>MapParameter</tt> encapsulating several control params
147 */
148 public MapParameter getMapParameter() {
149 return mapParameter;
150 }
151
152 /**
153 * sets the parameters describing the control options for the map
154 *
155 * @param mapParameter
156 * <tt>MapParameter</tt> encapsulating several control params
157 */
158 public void setMapParameter( MapParameter mapParameter ) {
159 this.mapParameter = mapParameter;
160 }
161
162 /**
163 * @return Returns the iOSettings.
164 */
165 public IOSettings getIOSettings() {
166 return iOSettings;
167 }
168
169 /**
170 * @param settings
171 * The iOSettings to set.
172 */
173 public void setIOSettings( IOSettings settings ) {
174 iOSettings = settings;
175 }
176
177 public AuthentificationSettings getAuthentificationSettings() {
178 return authSettings;
179 }
180
181 public void setAuthentificationSettings( AuthentificationSettings authSettings ) {
182 this.authSettings = authSettings;
183 }
184
185 /**
186 * returns the current mode of a map client using a WMC. A mode defines the action that occurs
187 * if a user performs a mouse action on the map
188 *
189 * @return the current mode of a map client using a WMC. A mode defines the action that occurs
190 * if a user performs a mouse action on the map
191 */
192 public String getMode() {
193 return mode;
194 }
195
196 /**
197 * @see #getMode()
198 * @param mode
199 */
200 public void setMode( String mode ) {
201 this.mode = mode;
202 }
203
204 public void setLayerTreeRoot( Node layerTreeRoot ) {
205 this.layerTreeRoot = layerTreeRoot;
206 }
207
208 public Node getLayerTreeRoot() {
209 return layerTreeRoot;
210 }
211
212 }