001    //$HeadURL: svn+ssh://rbezema@svn.wald.intevation.org/deegree/base/branches/2.2_testing/src/org/deegree/enterprise/control/RPCMethodResponse.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.enterprise.control;
045    
046    /**
047     * The class encapsulates the result to a RPC. This can be an object or an
048     * instance of <tt>RPCFault</tt> if an exception occured while performing a
049     * RPC
050     * @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
051     * @version $Revision: 9338 $ $Date: 2007-12-27 13:31:31 +0100 (Do, 27 Dez 2007) $
052     */
053    
054    public class RPCMethodResponse {
055        
056        private boolean fault_ = false;
057        private RPCParameter[] return_ = null;
058        private RPCFault fault = null;
059    
060        
061        RPCMethodResponse(RPCParameter[] return_) {
062            this.return_ = return_;
063        }
064        
065        RPCMethodResponse(RPCFault fault) {
066            this.fault = fault;
067            fault_ = true;
068        }
069        
070        /**
071         * returns true if the result contains a fault and not the expected data
072         *
073         * @return true if a fault occured
074         */
075        public boolean hasFault() {
076            return fault_;
077        }
078    
079        /**
080         * returns the result of a method call as array of <tt>RPCParameter</tt>s
081         *
082         * @return result parameters
083         */
084        public RPCParameter[] getReturn() {
085            return return_;
086        }
087    
088        /**
089         * returns the fault object if a fault occured while performing a RPC
090         * 
091         * @return fault object
092         */
093        public RPCFault getFault() {
094            return fault;
095        }
096    
097    }