/* * ALMA - Atacama Large Millimeter Array * (c) European Southern Observatory, 2002 * (c) Associated Universities Inc., 2002 * Copyright by ESO (in the framework of the ALMA collaboration), * Copyright by AUI (in the framework of the ALMA collaboration), * All rights reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY, without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * MA 02111-1307 USA * * File NoSuchRow.h */ #ifndef NoSuchRow_CLASS #define NoSuchRow_CLASS #include <string> #include <alma/ASDM/IntegerWrapper.h> namespace asdm { /** * Generate an exception when an expected row cannot be found. */ class NoSuchRow { public: /** * An empty CTOR. */ NoSuchRow(); /** * Create an exception when an expected row cannot be found. * @param rowNumber The row number that cannot be found. * @param tableName The table being searched. */ NoSuchRow(int rowNumber, std::string tableName); /** * Create an exception when an expected row cannot be found. * @param key The key of the row that cannot be found. * @param tableName The table being searched. */ NoSuchRow(std::string key, std::string tableName); /** * Create an exception when an expected link cannot be found. * @param N The link number that cannot be found. * @param toTableName The table to which the link is directed. * @param fromTableName The table from which the link is directed. */ NoSuchRow(int N, std::string toTableName, std::string fromTableName); /** * Create an exception when an expected link cannot be found. * @param key The key of the link that cannot be found. * @param toTableName The table to which the link is directed. * @param fromTableName The table from which the link is directed. */ NoSuchRow(std::string key, std::string toTableName, std::string fromTableName); /** * Create an exception when an optional link does not exist. * @param toTableName The table to which the link is directed. * @param fromTableName The table from which the link is directed. * @param option Is not really used. */ NoSuchRow(std::string toTableName, std::string fromTableName, bool option); /** * The DTOR. */ virtual ~NoSuchRow(); /** * @return a text describing the exception. */ std::string getMessage() const; protected: std::string message; private: static const std::string ITSNAME; }; } // End namespace asdm #endif /* NoSuchRow_CLASS */