001 //$HeadURL: $
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
037 package org.deegree.ogcwebservices.wcts.configuration;
038
039 /**
040 * <code>WCTSDeegreeParams</code> encapsulates all deegree specific configuration.
041 *
042 * @author <a href="mailto:bezema@lat-lon.de">Rutger Bezema</a>
043 *
044 * @author last edited by: $Author:$
045 *
046 * @version $Revision:$, $Date:$
047 *
048 */
049 public class WCTSDeegreeParams {
050
051 private final String configuredCRSProvider;
052
053 private final boolean useDeegreeTransformType;
054
055 private final static String DEFAULT_TRANSFORM_ID = "urn:deegree:wcts:transformation:";
056
057 private final String transformationPrefix;
058
059 private final boolean createDefaultTransformationsDescription;
060
061 private final int updateSequence;
062
063 /**
064 * Instantiate the deegree params with given configured crs provider, full qualified name.
065 *
066 * @param updateSequence
067 *
068 * @param configuredCRSProvider
069 * @param transformationPrefix
070 * @param useDeegreeTransformType
071 * true if transform response elements should use the deegree inline/multipart elements. If false results
072 * will be put beneath the wcts:OperationResponse element.
073 * @param createDefaultTransformationsDescription
074 */
075 public WCTSDeegreeParams( int updateSequence, String configuredCRSProvider, String transformationPrefix,
076 boolean useDeegreeTransformType, boolean createDefaultTransformationsDescription ) {
077 this.updateSequence = updateSequence;
078 this.configuredCRSProvider = configuredCRSProvider;
079 this.createDefaultTransformationsDescription = createDefaultTransformationsDescription;
080 if ( transformationPrefix == null || "".equals( transformationPrefix ) ) {
081 this.transformationPrefix = DEFAULT_TRANSFORM_ID;
082 } else {
083 this.transformationPrefix = transformationPrefix;
084 }
085 this.useDeegreeTransformType = useDeegreeTransformType;
086 }
087
088 /**
089 * Instantiate the deegree params with given configured crs provider, full qualified name.
090 *
091 * @param configuredCRSProvider
092 * @param useDeegreeTransformType
093 * true if transform response elements should use the deegree inline/multipart elements. If false results
094 * will be put beneath the wcts:OperationResponse element.
095 */
096 public WCTSDeegreeParams( String configuredCRSProvider, boolean useDeegreeTransformType ) {
097 this( -1, configuredCRSProvider, DEFAULT_TRANSFORM_ID, useDeegreeTransformType, false );
098 }
099
100 /**
101 * @param useDeegreeTransformType
102 * true if transform response elements should use the deegree inline/multipart elements. If false results
103 * will be put beneath the wcts:OperationResponse element.
104 */
105 public WCTSDeegreeParams( boolean useDeegreeTransformType ) {
106 this( -1, null, DEFAULT_TRANSFORM_ID, useDeegreeTransformType, false );
107 }
108
109 /**
110 * Using standard provider, the default transformation prefix and the deegree transform response.
111 */
112 public WCTSDeegreeParams() {
113 this( -1, null, DEFAULT_TRANSFORM_ID, true, false );
114 }
115
116 /**
117 * @return the configuredCRSProvider might be <code>null</code> if no provider was configured.
118 */
119 public final String getConfiguredCRSProvider() {
120 return configuredCRSProvider;
121 }
122
123 /**
124 * @return true if the transform response should be inside deegree:inline/deegree:multipart elements or if false
125 * they will be put directly beneath the operationresponse element.
126 */
127 public final boolean useDeegreeTransformType() {
128 return useDeegreeTransformType;
129 }
130
131 /**
132 * @return the transformationPrefix will never be <code>null</code> the default is
133 * "urn:deegree:wcts:transformation:".
134 */
135 public final String getTransformationPrefix() {
136 return transformationPrefix;
137 }
138
139 /**
140 * @return true if the descriptions for the default transformations should be created.
141 */
142 public final boolean createDefaultTransformationsDescription() {
143 return createDefaultTransformationsDescription;
144 }
145
146 /**
147 * @return the updateSequence
148 */
149 public final int getUpdateSequence() {
150 return updateSequence;
151 }
152 }