it_bus/reflect/reflect_exception.h

00001 #ifndef _IT_BUS_REFLECT_EXCEPTION_H_
00002 #define _IT_BUS_REFLECT_EXCEPTION_H_
00003 
00004 // @Copyright (c) 2003 IONA Technologies PLC. All Rights Reserved.
00005 //
00006 
00007 #include <it_bus/types.h>
00008 #include <it_bus/api_defines.h>
00009 #include <it_bus/exception.h>
00010 
00011 namespace IT_Bus
00012 {
00013     class QName;
00014 }
00015 
00016 namespace IT_Reflect
00017 {
00021     class IT_AFC_API ReflectException :
00022         public IT_Bus::Exception
00023     {
00024       public:
00029         ReflectException(
00030             const IT_Bus::String& message
00031         ) throw(());
00032         
00037         ReflectException(
00038             const IT_Bus::QName& type
00039         ) throw(());
00040 
00045         ReflectException(
00046             const IT_Bus::QName& expected,
00047             const IT_Bus::QName& actual
00048         ) throw(());
00049 
00053         virtual
00054         ~ReflectException() throw(());
00055 
00059         virtual IT_Bus::Exception*
00060         clone() const;
00061     
00065         virtual void
00066         rethrow() const;
00067     };
00068 
00069     class Reflection;
00070 
00071     IT_AFC_API Reflection*
00072     throw_unsupported() throw((ReflectException));
00073 }
00074 
00075 #endif  

Generated on Tue Mar 20 15:27:43 2007 for Artix by  doxygen 1.5.1-p1