Main Page   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members  

JobAdExceptions.h

00001 #ifndef  EDG_WORKLOAD_COMMON_CLIENT_JOBADEXCEPTIONS_H
00002 #define EDG_WORKLOAD_COMMON_CLIENT_JOBADEXCEPTIONS_H
00003 
00004 /*
00005  * JobAdExceptions.h
00006  * Copyright (c) 2001 The European Datagrid Project - IST programme, all rights reserved.
00007  * Contributors are mentioned in the code where appropriate.
00008  */
00009 #include "edg/workload/common/utilities/Exceptions.h"
00010 COMMON_NAMESPACE_BEGIN{ //Defining UserInterFace NameSpace
00011 namespace requestad{
00020 class JobAdException : public edg::workload::common::utilities::Exception {
00021 protected:
00025    JobAdException (std::string file,
00026                                    int line,
00027                                   std::string method,
00028                                    int code,
00029                                   std::string exception_name) ;
00030   virtual ~JobAdException() throw () {};
00031   std::string what() throw();
00032 protected:
00033   std::string          error_description ;
00034 
00035 };//End CLass  JobAdException
00039 class AdClassAdException   : public JobAdException {
00040 public:
00041   AdClassAdException::AdClassAdException (std::string file,
00042                                       int line,
00043                                      std::string method,
00044                                       int code ,
00045                                      std::string method_name ,
00046                                      std::string error_description = "");
00047 };//End CLass  AdClassAdException
00048 
00049 
00050 
00054 class AdSyntaxException   : public JobAdException {
00055 public:
00056   AdSyntaxException::AdSyntaxException (std::string file,
00057                                       int line,
00058                                      std::string method,
00059                                       int code ,
00060                                      std::string attr_name );
00061 };//End CLass  AdSyntaxException
00062 
00063 
00064 
00068 class AdSemanticException : public JobAdException {
00069 public:
00073   AdSemanticException::AdSemanticException (std::string file,
00074                                       int line,
00075                                      std::string method,
00076                                       int code,
00077                                      std::string exception_name );
00078 };//End CLass  AdSemanticException
00079 
00083      class AdSemanticMandatoryException : public AdSemanticException {
00084         public:
00088         AdSemanticMandatoryException (std::string file,
00089                                         int line,
00090                                        std::string method,
00091                                         int code,
00092                                        std::string attr_name );
00093      };//End CLass  AdSemanticMandatoryException
00094 
00095 
00099      class AdSemanticPathException : public AdSemanticException {
00100         public:
00104         AdSemanticPathException (std::string file,
00105                                         int line,
00106                                        std::string method,
00107                                         int code,
00108                                        std::string attr_name,
00109                                        std::string path_name );
00110      };//End CLass  AdSemanticPathException
00111 
00115      class AdSemanticGroupException : public AdSemanticException {
00116         public:
00120         AdSemanticGroupException (std::string file,
00121                                         int line,
00122                                        std::string method,
00123                                         int code,
00124                                        std::string attrs_name );
00125      };//End CLass  AdSemanticGroupException
00126 
00130 class AdAttributeException : public JobAdException {
00131    public:
00132       AdAttributeException::AdAttributeException (std::string file,
00133                                       int line,
00134                                      std::string method,
00135                                       int code,
00136                                      std::string exception_name );
00137 };//End CLass  AdAttibuteException
00138 
00142    class AdMismatchException : public AdAttributeException {
00143         public:
00147         AdMismatchException (std::string file,
00148                                         int line,
00149                                        std::string method,
00150                                         int code,
00151                                        std::string attr_name,
00152                                        std::string error_description = ""  );
00153 
00154    };//End CLass  AdMismatchException
00155 
00159    class AdFormatException : public AdAttributeException {
00160         public:
00164          AdFormatException(std::string file,
00165                                         int line,
00166                                        std::string method,
00167                                         int code,
00168                                        std::string attr_name,
00169                                        std::string format ="");
00170    };//End CLass  AdFormatException
00174    class AdListException : public AdAttributeException {
00175         public:
00179          AdListException(std::string file,
00180                                         int line,
00181                                        std::string method,
00182                                         int code,
00183                                        std::string attr_name );
00184 
00185    };//End CLass  AdListException
00186 
00187 
00191    class AdEmptyException : public AdAttributeException {
00192         public:
00196          AdEmptyException(std::string file,
00197                                         int line,
00198                                        std::string method,
00199                                         int code,
00200                                        std::string attr_name );
00201    };//End CLass  AdEmptyException
00202 
00203 // EWC_END_NAMESPACE; //Close the NameSpace
00204 }  // requestad namespace
00205 } COMMON_NAMESPACE_END
00206 //USERINTERFACE_NAMESPACE_END  //Closing  UserInterFace NameSpace
00207 #endif

Generated on Fri May 14 14:18:25 2004 for COMMON API - configuration, jobid, ldif2classadi, logger, process, requestad, socket++i, task, utilities by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002