001: //$HeadURL: https://svn.wald.intevation.org/svn/deegree/base/trunk/src/org/deegree/ogcbase/DescriptionBase.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.ogcbase;
045:
046: import org.deegree.ogcwebservices.MetadataLink;
047:
048: /**
049: * @version $Revision: 9344 $
050: * @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
051: * @author last edited by: $Author: apoth $
052: *
053: * @version 1.0. $Revision: 9344 $, $Date: 2007-12-27 08:21:56 -0800 (Thu, 27 Dec 2007) $
054: *
055: * @since 2.0
056: */
057:
058: public class DescriptionBase implements Cloneable {
059:
060: private String name = null;
061:
062: private String description = null;
063:
064: private MetadataLink metadataLink = null;
065:
066: /**
067: * just <tt>name</tt> is mandatory
068: *
069: * @param name
070: */
071: public DescriptionBase(String name) throws OGCException {
072: setName(name);
073: }
074:
075: /**
076: * @param description
077: * @param name
078: * @param metadataLink
079: */
080: public DescriptionBase(String name, String description,
081: MetadataLink metadataLink) throws OGCException {
082: this .description = description;
083: setName(name);
084: this .metadataLink = metadataLink;
085: }
086:
087: /**
088: * @return Returns the description.
089: *
090: */
091: public String getDescription() {
092: return description;
093: }
094:
095: /**
096: * @param description
097: * The description to set.
098: *
099: */
100: public void setDescription(String description) {
101: this .description = description;
102: }
103:
104: /**
105: * @return Returns the metadataLink.
106: *
107: */
108: public MetadataLink getMetadataLink() {
109: return metadataLink;
110: }
111:
112: /**
113: * @param metadataLink
114: * The metadataLink to set.
115: *
116: */
117: public void setMetadataLink(MetadataLink metadataLink) {
118: this .metadataLink = metadataLink;
119: }
120:
121: /**
122: * @return Returns the name.
123: *
124: */
125: public String getName() {
126: return name;
127: }
128:
129: /**
130: * @param name
131: * The name to set.
132: *
133: */
134: public void setName(String name) throws OGCException {
135: if (name == null) {
136: throw new OGCException(
137: "name must be <> null for DescriptionBase");
138: }
139: this .name = name;
140: }
141:
142: /**
143: * @see java.lang.Object#clone()
144: * @return cloned object
145: */
146: public Object clone() {
147: try {
148: MetadataLink ml = null;
149: if (metadataLink != null) {
150: ml = (MetadataLink) metadataLink.clone();
151: }
152: return new DescriptionBase(name, description, ml);
153: } catch (Exception e) {
154: }
155: return null;
156: }
157:
158: }
|