package org.deegree.ogcwebservices.wcs.describecoverage;
import java.net.URI;
import org.deegree.datatypes.values.Values;
import org.deegree.ogcbase.Description;
import org.deegree.ogcbase.OGCException;
import org.deegree.ogcwebservices.MetadataLink;
import org.deegree.ogcwebservices.wcs.WCSException;
/**
* @version $Revision: 1.2 $
* @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
* @author last edited by: $Author: poth $
*
* @version 1.0. $Revision: 1.2 $, $Date: 2005/01/18 22:08:55 $
*
* @since 2.0
*/
public class AxisDescription extends Description implements Cloneable {
private URI semantic = null;
private URI refSys = null;
private String refSysLabel = null;
/**
*
* @uml.property name="values"
* @uml.associationEnd multiplicity="(0 1)"
*/
private Values values = null;
/**
* @param name
* @param label
* @param values
*/
public AxisDescription(String name, String label, Values values)
throws OGCException, WCSException {
super(name, label);
setValues(values);
}
/**
* @param name
* @param label
* @param description
* @param metadataLink
* @param semantic
* @param refSys
* @param refSysLabel
* @param values
*/
public AxisDescription(String name, String label, String description, MetadataLink metadataLink,
URI semantic, URI refSys, String refSysLabel, Values values)
throws OGCException, WCSException {
super(name, label, description, metadataLink);
this.semantic = semantic;
this.refSys = refSys;
this.refSysLabel = refSysLabel;
setValues(values);
}
/**
* @return Returns the refSys.
*
* @uml.property name="refSys"
*/
public URI getRefSys() {
return refSys;
}
/**
* @param refSys The refSys to set.
*
* @uml.property name="refSys"
*/
public void setRefSys(URI refSys) {
this.refSys = refSys;
}
/**
* @return Returns the refSysLabel.
*
* @uml.property name="refSysLabel"
*/
public String getRefSysLabel() {
return refSysLabel;
}
/**
* @param refSysLabel The refSysLabel to set.
*
* @uml.property name="refSysLabel"
*/
public void setRefSysLabel(String refSysLabel) {
this.refSysLabel = refSysLabel;
}
/**
* @return Returns the semantic.
*
* @uml.property name="semantic"
*/
public URI getSemantic() {
return semantic;
}
/**
* @param semantic The semantic to set.
*
* @uml.property name="semantic"
*/
public void setSemantic(URI semantic) {
this.semantic = semantic;
}
/**
* @return Returns the values.
*
* @uml.property name="values"
*/
public Values getValues() {
return values;
}
/**
* @param values The values to set.
*
* @uml.property name="values"
*/
public void setValues(Values values) throws WCSException {
if (values == null) {
throw new WCSException("values must be <> null for AxisDescription");
}
this.values = values;
}
/**
* @see java.lang.Object#clone()
*/
public Object clone() {
Values values_ = null;
if ( values != null ) {
values_ = (Values)values.clone();
}
try {
Description des = (Description)super.clone();
return new AxisDescription( des.getName(), des.getLabel(), des.getDescription(),
des.getMetadataLink(),semantic, refSys,
refSysLabel, values_);
} catch(Exception e) {}
return null;
}
}
/* ********************************************************************
Changes to this class. What the people have been up to:
$Log: AxisDescription.java,v $
Revision 1.2 2005/01/18 22:08:55 poth
no message
Revision 1.2 2004/05/25 07:19:13 ap
no message
Revision 1.1 2004/05/24 06:54:39 ap
no message
********************************************************************** */