001    //$HeadURL: svn+ssh://rbezema@svn.wald.intevation.org/deegree/base/tags/2.1/src/org/deegree/model/metadata/iso19115/Constraints.java $
002    /*----------------    FILE HEADER  ------------------------------------------
003     This file is part of deegree.
004     Copyright (C) 2001-2006 by:
005     Department of Geography, University of Bonn
006     http://www.giub.uni-bonn.de/deegree/
007     lat/lon GmbH
008     http://www.lat-lon.de
009     This library is free software; you can redistribute it and/or
010     modify it under the terms of the GNU Lesser General Public
011     License as published by the Free Software Foundation; either
012     version 2.1 of the License, or (at your option) any later version.
013     This library is distributed in the hope that it will be useful,
014     but WITHOUT ANY WARRANTY; without even the implied warranty of
015     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
016     Lesser General Public License for more details.
017     You should have received a copy of the GNU Lesser General Public
018     License along with this library; if not, write to the Free Software
019     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
020     Contact:
021     Andreas Poth
022     lat/lon GmbH
023     Aennchenstraße 19
024     53177 Bonn
025     Germany
026     E-Mail: poth@lat-lon.de
027     Jens Fitzke
028     lat/lon GmbH
029     Aennchenstraße 19
030     53177 Bonn
031     Germany
032     E-Mail: jens.fitzke@uni-bonn.de
033     ---------------------------------------------------------------------------*/
034    package org.deegree.model.metadata.iso19115;
035    
036    import java.util.Date;
037    import java.util.List;
038    
039    /**
040     * <code>Constraints</code> is a class that encapsulates metadata about various
041     * constraints that can be applied to an OGC web service. The stored data is
042     * more general than the simple access constraints specified in the OWS common
043     * specification version 1.0.0 and therefore includes a lot more fields.
044     * 
045     * @author <a href="mailto:schmitz@lat-lon.de">Andreas Schmitz</a>
046     * @author last edited by: $Author: bezema $
047     * 
048     * @version 2.0, $Revision: 6259 $, $Date: 2007-03-20 10:15:15 +0100 (Di, 20 Mär 2007) $
049     * 
050     * @since 2.0
051     */
052    
053    public class Constraints {
054        
055        private String fees = null;
056        
057        private Date plannedAvailableDateTime = null;
058        
059        private String orderingInstructions = null;
060        
061        private String turnaround = null;
062        
063        private List<String> useLimitations = null;
064        
065        private List<String> accessConstraints = null;
066        
067        private List<String> useConstraints = null;
068        
069        private List<String> otherConstraints = null;
070    
071        
072        /**
073         * Standard constructor that initializes all encapsulated data.
074         * 
075         * @param fees
076         * @param plannedAvailableDateTime
077         * @param orderingInstructions
078         * @param turnaround
079         * @param useLimitations
080         * @param accessConstraints
081         * @param useConstraints
082         * @param otherConstraints
083         */
084        public Constraints( String fees, Date plannedAvailableDateTime,
085                            String orderingInstructions, String turnaround,
086                            List<String> useLimitations, List<String> accessConstraints,
087                            List<String> useConstraints, List<String> otherConstraints ) {
088            this.fees = fees;
089            this.plannedAvailableDateTime = plannedAvailableDateTime;
090            this.orderingInstructions = orderingInstructions;
091            this.turnaround = turnaround;
092            this.useLimitations = useLimitations;
093            this.accessConstraints = accessConstraints;
094            this.useConstraints = useConstraints;
095            this.otherConstraints = otherConstraints;
096        }
097        
098        /**
099         * @return Returns the accessConstraints.
100         */
101        public List<String> getAccessConstraints() {
102            return accessConstraints;
103        }
104    
105        /**
106         * @return Returns the fees.
107         */
108        public String getFees() {
109            return fees;
110        }
111    
112        /**
113         * @return Returns the orderingInstructions.
114         */
115        public String getOrderingInstructions() {
116            return orderingInstructions;
117        }
118    
119        /**
120         * @return Returns the otherConstraints.
121         */
122        public List<String> getOtherConstraints() {
123            return otherConstraints;
124        }
125    
126        /**
127         * @return Returns the plannedAvailableDateTime.
128         */
129        public Date getPlannedAvailableDateTime() {
130            return plannedAvailableDateTime;
131        }
132    
133        /**
134         * @return Returns the turnaround.
135         */
136        public String getTurnaround() {
137            return turnaround;
138        }
139    
140        /**
141         * @return Returns the useConstraints.
142         */
143        public List<String> getUseConstraints() {
144            return useConstraints;
145        }
146    
147        /**
148         * @return Returns the useLimitations.
149         */
150        public List<String> getUseLimitations() {
151            return useLimitations;
152        }
153    
154    }
155    
156    
157    /* ********************************************************************
158    Changes to this class. What the people have been up to:
159    $Log$
160    Revision 1.2  2006/08/24 06:40:27  poth
161    File header corrected
162    
163    Revision 1.1  2006/08/01 11:46:07  schmitz
164    Added data classes for the new OWS common capabilities framework
165    according to the OWS 1.0.0 common specification.
166    Added name to service identification.
167    
168    
169    
170    ********************************************************************** */