001 /*----------------------------------------------------------------------------
002 This file is part of deegree, http://deegree.org/
003 Copyright (C) 2001-2009 by:
004 Department of Geography, University of Bonn
005 and
006 lat/lon GmbH
007
008 This library is free software; you can redistribute it and/or modify it under
009 the terms of the GNU Lesser General Public License as published by the Free
010 Software Foundation; either version 2.1 of the License, or (at your option)
011 any later version.
012 This library is distributed in the hope that it will be useful, but WITHOUT
013 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
014 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
015 details.
016 You should have received a copy of the GNU Lesser General Public License
017 along with this library; if not, write to the Free Software Foundation, Inc.,
018 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
019
020 Contact information:
021
022 lat/lon GmbH
023 Aennchenstr. 19, 53177 Bonn
024 Germany
025 http://lat-lon.de/
026
027 Department of Geography, University of Bonn
028 Prof. Dr. Klaus Greve
029 Postfach 1147, 53001 Bonn
030 Germany
031 http://www.geographie.uni-bonn.de/deegree/
032
033 e-mail: info@deegree.org
034 ----------------------------------------------------------------------------*/
035 package org.deegree.ogcwebservices.wpvs;
036
037 import org.deegree.ogcwebservices.OGCWebServiceException;
038 import org.deegree.ogcwebservices.wpvs.operation.Get3DFeatureInfo;
039 import org.deegree.ogcwebservices.wpvs.operation.Get3DFeatureInfoResponse;
040
041 /**
042 *
043 * @version $Revision: $
044 * @author <a href="mailto:cordes@lat-lon.de">Lyn Buesching</a>
045 * @author last edited by: $Author: $
046 *
047 * @version 1.0. $Revision: $, $Date: $
048 *
049 */
050 public abstract class Get3DFeatureInfoHandler {
051
052 private WPVService owner;
053
054 /**
055 * @param owner
056 * of this infohandler, actually the service instance.
057 */
058 public Get3DFeatureInfoHandler( WPVService owner ) {
059 this.owner = owner;
060 }
061
062 /**
063 * sets the owner to <code>null</code>
064 */
065 public Get3DFeatureInfoHandler() {
066 this.owner = null;
067 }
068
069 /**
070 * Handle the Get3DfeatureInfo request given by <code>Get3DFeatureInfoRequest</code>
071 *
072 * @param request
073 * @return an instance of Get3DFeatureInfoResponse
074 * @throws OGCWebServiceException
075 * if an error occurred while handling the request.
076 */
077 public abstract Get3DFeatureInfoResponse handleRequest( Get3DFeatureInfo request )
078 throws OGCWebServiceException;
079
080 /**
081 *
082 * @return the owner or <code>null</code> if it was not set
083 */
084 protected final WPVService getOwner() {
085 return owner;
086 }
087 }