//$Header: /home/deegree/jail/deegreerepository/deegree/src/org/deegree/ogcwebservices/wms/capabilities/WMSOperationsMetadata.java,v 1.7 2006/10/22 20:32:08 poth Exp $
/*---------------- FILE HEADER ------------------------------------------
This file is part of deegree.
Copyright (C) 2001-2006 by:
EXSE, Department of Geography, University of Bonn
http://www.giub.uni-bonn.de/deegree/
lat/lon GmbH
http://www.lat-lon.de
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Contact:
Andreas Poth
lat/lon GmbH
Aennchenstr. 19
53115 Bonn
Germany
E-Mail: poth@lat-lon.de
Prof. Dr. Klaus Greve
Department of Geography
University of Bonn
Meckenheimer Allee 166
53115 Bonn
Germany
E-Mail: greve@giub.uni-bonn.de
---------------------------------------------------------------------------*/
package org.deegree.ogcwebservices.wms.capabilities;
import java.util.ArrayList;
import java.util.List;
import org.deegree.ogcwebservices.getcapabilities.Operation;
import org.deegree.ogcwebservices.getcapabilities.OperationsMetadata;
import org.deegree.owscommon.OWSDomainType;
/**
* Represents the <code>OperationMetadata</code> part in the capabilities
* document of a WFS according to the
* <code>Web Feature Service Implementation Specification 1.1.0</code>.
* <p>
* In addition to the <code>GetCapabilities</code> operation that all
* <code>OWS 0.3</code> compliant services must implement, it may define some
* or all of the following operations: <table border="1">
* <table>
* <tr>
* <td></td>
* <tr>
* </table>
*
*
* @see org.deegree.ogcwebservices.getcapabilities.OperationsMetadata
* @author <a href="mailto:poth@lat-lon.de">Andreas Poth </a>
* @author last edited by: $Author: poth $
*
* @version 1.0. $Revision: 1.7 $, $Date: 2006/10/22 20:32:08 $
*
* @since 2.0
*/
public class WMSOperationsMetadata extends OperationsMetadata {
private static final long serialVersionUID = 3864454877736817781L;
/**
* The name of the GetMap operation.
*/
public static final String GETMAP = "GetMap";
/**
* The name of the GetMap operation.
*/
public static final String MAP = "Map";
/**
* The name of the GetFeatureInfo operation.
*/
public static final String GETFEATUREINFO = "GetFeatureInfo";
/**
* The name of the GetFeatureInfo operation.
*/
public static final String FEATUREINFO = "FeatureInfo";
/**
* The name of the DescribeLayer operation.
*/
public static final String DESCRIBELAYER = "DescribeLayer";
/**
* The name of the GetLegendGraphic operation.
*/
public static final String GETLEGENDGRAPHIC = "GetLegendGraphic";
/**
* The name of the GetStyles operation.
*/
public static final String GETSTYLES = "GetStyles";
/**
* The name of the PutStyles operation.
*/
public static final String PUTSTYLES = "PutStyles";
private Operation getMap;
private Operation getFeatureInfo;
private Operation describeLayer;
private Operation getLegendGraphic;
private Operation getStyles;
private Operation putStyles;
/**
* Constructs a new <code>WMSOperationsMetadata</code> instance from the
* given parameters.
*
* @param getCapabilities
* @param getMap
* @param getFeatureInfo
* @param describeLayer
* @param getLegendGraphic
* @param getStyles
* @param putStyles
* @param parameters
* @param constraints
*/
public WMSOperationsMetadata(Operation getCapabilities, Operation getMap, Operation getFeatureInfo,
Operation describeLayer, Operation getLegendGraphic,
Operation getStyles, Operation putStyles,
OWSDomainType[] parameters, OWSDomainType[] constraints) {
super(getCapabilities, parameters, constraints);
this.getMap = getMap;
this.getFeatureInfo = getFeatureInfo;
this.getLegendGraphic = getLegendGraphic;
this.describeLayer = describeLayer;
this.getStyles = getStyles;
this.putStyles = putStyles;
}
/**
* @return all <code>Operations</code> known to the WFS.
*
*/
@Override
public Operation[] getOperations() {
List<Operation> list = new ArrayList<Operation>(10);
list.add( getMap );
list.add( getCapabilitiesOperation );
if ( describeLayer != null ) {
list.add( describeLayer );
}
if ( getFeatureInfo != null ) {
list.add( getFeatureInfo );
}
if ( getStyles != null ) {
list.add( getStyles );
}
if ( putStyles != null ) {
list.add( putStyles );
}
if ( getLegendGraphic != null ) {
list.add( getLegendGraphic );
}
Operation[] ops = new Operation[list.size()];
return list.toArray( ops );
}
/**
* @return Returns the describeLayer.
*/
public Operation getDescribeLayer() {
return describeLayer;
}
/**
* @param describeLayer The describeLayer to set.
*/
public void setDescribeLayer( Operation describeLayer ) {
this.describeLayer = describeLayer;
}
/**
* @return Returns the getFeatureInfo.
*/
public Operation getGetFeatureInfo() {
return getFeatureInfo;
}
/**
* @param getFeatureInfo The getFeatureInfo to set.
*/
public void setGetFeatureInfo( Operation getFeatureInfo ) {
this.getFeatureInfo = getFeatureInfo;
}
/**
* @return Returns the getLegendGraphic.
*/
public Operation getGetLegendGraphic() {
return getLegendGraphic;
}
/**
* @param getLegendGraphic The getLegendGraphic to set.
*/
public void setGetLegendGraphic( Operation getLegendGraphic ) {
this.getLegendGraphic = getLegendGraphic;
}
/**
* @return Returns the getMap.
*/
public Operation getGetMap() {
return getMap;
}
/**
* @param getMap The getMap to set.
*/
public void setGetMap( Operation getMap ) {
this.getMap = getMap;
}
/**
* @return Returns the getStyles.
*/
public Operation getGetStyles() {
return getStyles;
}
/**
* @param getStyles The getStyles to set.
*/
public void setGetStyles( Operation getStyles ) {
this.getStyles = getStyles;
}
/**
* @return Returns the putStyles.
*/
public Operation getPutStyles() {
return putStyles;
}
/**
* @param putStyles The putStyles to set.
*/
public void setPutStyles( Operation putStyles ) {
this.putStyles = putStyles;
}
}/* ********************************************************************
Changes to this class. What the people have been up to:
$Log: WMSOperationsMetadata.java,v $
Revision 1.7 2006/10/22 20:32:08 poth
support for vendor specific operation GetScaleBar removed
Revision 1.6 2006/09/08 08:42:02 schmitz
Updated the WMS to be 1.1.1 conformant once again.
Cleaned up the WMS code.
Added cite WMS test data.
Revision 1.5 2006/07/12 14:46:18 poth
comment footer added
********************************************************************** */