/home/kolos/working/oh/oh/exceptions.h

00001 #ifndef OH_EXCEPTIONS_H
00002 #define OH_EXCEPTIONS_H
00003 
00005 //
00006 //      oh/exceptions.h
00007 //
00008 //      private header file for the IS library
00009 //
00010 //      Sergei Kolos March 2004
00011 //
00012 //      description:
00013 //              Declares IS exceptions
00015 
00016 #include <ers/ers.h>
00017 
00021 namespace daq {
00029     ERS_DECLARE_ISSUE( oh, Exception, , )
00030                                                                                                                                           
00031     
00034     ERS_DECLARE_ISSUE_BASE( oh, NotFound, oh::Exception, , , )
00035     
00039     ERS_DECLARE_ISSUE_BASE(     oh,
00040                                 ProviderAlreadyExist,
00041                                 oh::Exception,
00042                                 "OH Provider with the '" << name << "' name already registred with the '" 
00043                                 << server << "' OH repository.",
00044                                 ,
00045                                 ((std::string)name )
00046                                 ((std::string)server )
00047                         )
00048     
00053     ERS_DECLARE_ISSUE_BASE(     oh,
00054                                 ObjectTypeMismatch,
00055                                 oh::Exception,
00056                                 "The '" << name << "' name is already taken by the object of different type",
00057                                 ,
00058                                 ((std::string)name )
00059                         )
00060     
00064     ERS_DECLARE_ISSUE_BASE(     oh,
00065                                 ObjectNotFound,
00066                                 oh::Exception,
00067                                 "Object '" << name << "' provided by the '" 
00068                                                 << provider << "' does not exist in the '"
00069                                                 << server << "' OH repository",
00070                                 ,
00071                                 ((std::string)server )
00072                                 ((std::string)provider )
00073                                 ((std::string)name )
00074                         )
00075     
00079     ERS_DECLARE_ISSUE_BASE(     oh,
00080                                 RepositoryNotFound,
00081                                 oh::NotFound,
00082                                 "OH repository '" << name << "' does not exist",
00083                                 ,
00084                                 ((std::string)name )
00085                         )
00086 
00090     ERS_DECLARE_ISSUE_BASE(     oh,
00091                                 ProviderNotFound,
00092                                 oh::NotFound,
00093                                 "OH provider '" << name << "' does not exist",
00094                                 ,
00095                                 ((std::string)name )
00096                         )
00097                                                                                                                                           
00101     ERS_DECLARE_ISSUE_BASE(     oh,
00102                                 InvalidObject,
00103                                 oh::Exception,
00104                                 "Objects of given type are not supported by the OH",
00105                                 ,
00106                         )
00107 }
00108 
00109 
00110 #endif // IS_EXCEPTIONS_H

Generated on Thu Dec 21 16:26:02 2006 for OH User API by  doxygen 1.4.7