//$Header: /home/deegree/jail/deegreerepository/deegree/src/org/deegree/owscommon_new/Operation.java,v 1.5 2006/11/03 12:02:01 schmitz Exp $
/*---------------- FILE HEADER ------------------------------------------
This file is part of deegree.
Copyright (C) 2001-2006 by:
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
Aennchenstraße 19
53177 Bonn
Germany
E-Mail: poth@lat-lon.de
Jens Fitzke
lat/lon GmbH
Aennchenstraße 19
53177 Bonn
Germany
E-Mail: jens.fitzke@uni-bonn.de
---------------------------------------------------------------------------*/
package org.deegree.owscommon_new;
import java.util.List;
import org.deegree.datatypes.QualifiedName;
/**
* <code>Operation</code> stores the contents of an Operation
* element according to the OWS common specification version 1.0.0.
*
* @author <a href="mailto:schmitz@lat-lon.de">Andreas Schmitz</a>
* @author last edited by: $Author: schmitz $
*
* @version 2.0, $Revision: 1.5 $, $Date: 2006/11/03 12:02:01 $
*
* @since 2.0
*/
public class Operation {
private QualifiedName name = null;
private List<DCP> dcpList = null;
private List<Parameter> parameters = null;
private List<DomainType> constraints = null;
private Object metadata = null;
private String description = null;
/**
* Standard constructor that initializes all encapsulated data.
*
* @param name
* @param dcpList
* @param parameters
* @param constraints
* @param metadata
* @param description
*/
public Operation( QualifiedName name, List<DCP> dcpList, List<Parameter> parameters,
List<DomainType> constraints, Object metadata, String description ) {
this.name = name;
this.dcpList = dcpList;
this.parameters = parameters;
this.constraints = constraints;
this.metadata = metadata;
this.description = description;
}
/**
* @return Returns the constraints.
*/
public List<DomainType> getConstraints() {
return constraints;
}
/**
* @return Returns the dCP.
*/
public List<DCP> getDCP() {
return dcpList;
}
/**
* @return Returns the description.
*/
public String getDescription() {
return description;
}
/**
* @return Returns the metadata.
*/
public Object getMetadata() {
return metadata;
}
/**
* @return Returns the parameters.
*/
public List<Parameter> getParameters() {
return parameters;
}
/**
* @param name
* @return the <code>DomainType</code> with the specified name or null, if there is no
* constraint with that name.
*/
public DomainType getConstraint( QualifiedName name ) {
for ( DomainType constraint : constraints ) {
if ( constraint.getName().equals( name ) ) {
return constraint;
}
}
return null;
}
/**
* @param name
* @return the <code>Parameter</code> with the specified name or null, if there is no
* parameter with that name. This method only tests Parameters that are <code>DomainType</code>s.
*/
public Parameter getParameter( QualifiedName name ) {
for ( Parameter parameter : parameters ) {
if ( parameter instanceof DomainType ) {
if ( ( (DomainType) parameter ).getName().equals( name ) ) {
return parameter;
}
}
}
return null;
}
/**
* @return Returns the name.
*/
public QualifiedName getName() {
return name;
}
}
/* ********************************************************************
Changes to this class. What the people have been up to:
$Log: Operation.java,v $
Revision 1.5 2006/11/03 12:02:01 schmitz
Fixed documentation and formatting.
Revision 1.4 2006/08/29 13:02:32 poth
code formating
Revision 1.3 2006/08/29 09:48:59 poth
code formating
Revision 1.2 2006/08/24 06:43:04 poth
File header corrected
Revision 1.1 2006/08/23 07:10:21 schmitz
Renamed the owscommon_neu package to owscommon_new.
Revision 1.2 2006/08/08 10:21:52 schmitz
Parser is finished, as well as the iso XMLFactory.
Revision 1.1 2006/08/01 11:46:07 schmitz
Added data classes for the new OWS common capabilities framework
according to the OWS 1.0.0 common specification.
Added name to service identification.
********************************************************************** */