(file) Return to InternalException.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/InternalException.h between version 1.3 and 1.27

version 1.3, 2002/08/21 00:15:44 version 1.27, 2008/06/10 17:59:15
Line 1 
Line 1 
 //%/////////////////////////////////////////////////////////////////////////////  //%2006////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM,  // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
 // The Open Group, Tivoli Systems  // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
   // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
   // IBM Corp.; EMC Corporation, The Open Group.
   // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
   // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
   // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   // EMC Corporation; VERITAS Software Corporation; The Open Group.
   // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   // EMC Corporation; Symantec Corporation; The Open Group.
 // //
 // Permission is hereby granted, free of charge, to any person obtaining a copy // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to // of this software and associated documentation files (the "Software"), to
Line 21 
Line 29 
 // //
 //============================================================================== //==============================================================================
 // //
 // Author: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)  
 //  
 // Modified By:  
 //  
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
 #ifndef Pegasus_InternalException_h #ifndef Pegasus_InternalException_h
Line 33 
Line 37 
 #include <Pegasus/Common/Config.h> #include <Pegasus/Common/Config.h>
 #include <Pegasus/Common/Linkage.h> #include <Pegasus/Common/Linkage.h>
 #include <Pegasus/Common/Exception.h> #include <Pegasus/Common/Exception.h>
   #include <Pegasus/Common/PegasusAssert.h>
  
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
Line 49 
Line 54 
         const char* file,         const char* file,
         size_t line,         size_t line,
         const String& message);         const String& message);
 };  
   
 /** define PEGASUS_ASSERT assertion statement.  This statement tests the  
     condition defined by the parameters and if not True executes an  
  
     <pre>      virtual ~AssertionFailureException();
     throw AssertionFailureException  };
     </pre>  
  
     defining the file, line and condition that was tested.  
 */  
 #ifdef NDEBUG  
 #define PEGASUS_ASSERT(COND)  
 #else  
 #define PEGASUS_ASSERT(COND) \  
     do \  
     { \  
         if (!(COND)) \  
         { \  
             throw AssertionFailureException(__FILE__, __LINE__, #COND); \  
         } \  
     } while (0)  
 #endif  
  
 /* Macro to Create the equivalent of an assert but without the /* Macro to Create the equivalent of an assert but without the
    termination.  This can be used as a temporary marker for asserts    termination.  This can be used as a temporary marker for asserts
Line 99 
Line 85 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
   
       NullPointer();
  
     NullPointer() : Exception(MSG) { }      virtual ~NullPointer();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 109 
Line 98 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     UndeclaredQualifier(const String& qualifierName)      UndeclaredQualifier(const String& qualifierName) ;
         : Exception(MSG + qualifierName) { }  
 };  
   
 // ATTN: P3  KS documentation Required  
 class PEGASUS_COMMON_LINKAGE BadQualifierScope : public Exception  
 {  
 public:  
   
     static const char MSG[];  
  
     BadQualifierScope(const String& qualifierName, const String& scopeString)      virtual ~UndeclaredQualifier();
         : Exception(MSG + qualifierName + String(" scope=") + scopeString) { }  
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
 class PEGASUS_COMMON_LINKAGE BadQualifierOverride : public Exception  class PEGASUS_COMMON_LINKAGE BadQualifierScope : public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     BadQualifierOverride(const String& qualifierName)      BadQualifierScope(
         : Exception(MSG + qualifierName) { }          const String& qualifierName,
 };          const String& scopeString);
  
 class PEGASUS_COMMON_LINKAGE BadQualifierType : public Exception      virtual ~BadQualifierScope();
 {  
 public:  
   
     static const char MSG[];  
   
     BadQualifierType(const String& qualifierName)  
         : Exception(MSG + qualifierName) { }  
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
 class PEGASUS_COMMON_LINKAGE ClassAlreadyResolved : public Exception  class PEGASUS_COMMON_LINKAGE BadQualifierOverride : public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     ClassAlreadyResolved(const String& className)      BadQualifierOverride(const String& qualifierName);
         : Exception(MSG + className) { }  
 };  
  
 // ATTN: P3  KS documentation Required      virtual ~BadQualifierOverride();
 class PEGASUS_COMMON_LINKAGE ClassNotResolved : public Exception  
 {  
 public:  
   
     static const char MSG[];  
   
     ClassNotResolved(const String& className)  
         : Exception(MSG + className) { }  
 }; };
  
 // ATTN: P3  KS documentation Required  class PEGASUS_COMMON_LINKAGE BadQualifierType : public Exception
 class PEGASUS_COMMON_LINKAGE InstanceAlreadyResolved : public Exception  
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     InstanceAlreadyResolved()      BadQualifierType(const String& qualifierName);
      : Exception(MSG) { }      virtual ~BadQualifierType();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 185 
Line 150 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     InstantiatedAbstractClass(const String& className)      InstantiatedAbstractClass(const String& className);
      : Exception(MSG + className) { }      virtual ~InstantiatedAbstractClass();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 196 
Line 162 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     NoSuchProperty(const String& propertyName)      NoSuchProperty(const String& propertyName);
         : Exception(MSG + propertyName) { }      virtual ~NoSuchProperty();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 207 
Line 174 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     NoSuchFile(const String& fileName) : Exception(MSG + fileName) { }      NoSuchFile(const String& fileName);
       virtual ~NoSuchFile();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 217 
Line 186 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     FileNotReadable(const String& fileName) : Exception(MSG + fileName) { }      FileNotReadable(const String& fileName);
       virtual ~FileNotReadable();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 227 
Line 198 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     CannotRemoveDirectory(const String& path) : Exception(MSG + path) { }      CannotRemoveDirectory(const String& path);
       virtual ~CannotRemoveDirectory();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 237 
Line 210 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     CannotRemoveFile(const String& path) : Exception(MSG + path) { }      CannotRemoveFile(const String& path);
       virtual ~CannotRemoveFile();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 247 
Line 222 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     CannotRenameFile(const String& path) : Exception(MSG + path) { }      CannotRenameFile(const String& path);
       virtual ~CannotRenameFile();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 257 
Line 234 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     NoSuchDirectory(const String& directoryName)      NoSuchDirectory(const String& directoryName);
         : Exception(MSG + directoryName) { }      virtual ~NoSuchDirectory();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 268 
Line 246 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     CannotCreateDirectory(const String& path)      CannotCreateDirectory(const String& path);
         : Exception(MSG + path) { }      virtual ~CannotCreateDirectory();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 279 
Line 258 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     CannotOpenFile(const String& path)      CannotOpenFile(const String& path);
         : Exception(MSG + path) { }      virtual ~CannotOpenFile();
 }; };
  
 // ATTN: P3  KS documentation Required // ATTN: P3  KS documentation Required
Line 290 
Line 270 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     NotImplemented(const String& method) : Exception(MSG + method) { }      NotImplemented(const String& method);
       virtual ~NotImplemented();
 }; };
  
 class PEGASUS_COMMON_LINKAGE StackUnderflow : public Exception class PEGASUS_COMMON_LINKAGE StackUnderflow : public Exception
Line 299 
Line 281 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     StackUnderflow() : Exception(MSG) { }      StackUnderflow();
       virtual ~StackUnderflow();
 }; };
  
 class PEGASUS_COMMON_LINKAGE StackOverflow : public Exception class PEGASUS_COMMON_LINKAGE StackOverflow : public Exception
Line 308 
Line 292 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     StackOverflow() : Exception(MSG) { }      StackOverflow();
       virtual ~StackOverflow();
 }; };
  
 class PEGASUS_COMMON_LINKAGE QueueUnderflow : public Exception  class PEGASUS_COMMON_LINKAGE DynamicLoadFailed : public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     QueueUnderflow() : Exception(MSG) { }      DynamicLoadFailed(const String& libraryName);
       virtual ~DynamicLoadFailed();
 }; };
  
 class PEGASUS_COMMON_LINKAGE BadFormat : public Exception  class PEGASUS_COMMON_LINKAGE DynamicLookupFailed : public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     BadFormat() : Exception(MSG) { }      DynamicLookupFailed(const String& symbolName);
       virtual ~DynamicLookupFailed();
 }; };
  
 class PEGASUS_COMMON_LINKAGE BadlyFormedCGIQueryString : public Exception  class PEGASUS_COMMON_LINKAGE CannotOpenDirectory : public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     BadlyFormedCGIQueryString() : Exception(MSG) { }      CannotOpenDirectory(const String& path);
       virtual ~CannotOpenDirectory();
 }; };
  
 class PEGASUS_COMMON_LINKAGE DynamicLoadFailed : public Exception  class PEGASUS_COMMON_LINKAGE ParseError : public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     DynamicLoadFailed(const String& libraryName)      ParseError(const String& message);
         : Exception(MSG + libraryName) { }      virtual ~ParseError();
 }; };
  
 class PEGASUS_COMMON_LINKAGE DynamicLookupFailed : public Exception  class PEGASUS_COMMON_LINKAGE MissingNullTerminator : public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     DynamicLookupFailed(const String& symbolName)      MissingNullTerminator();
         : Exception(MSG + symbolName) { }      virtual ~MissingNullTerminator();
 }; };
  
 class PEGASUS_COMMON_LINKAGE CannotOpenDirectory : public Exception  class PEGASUS_COMMON_LINKAGE MalformedLanguageHeader: public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     CannotOpenDirectory(const String& path) : Exception(MSG + path) { }      MalformedLanguageHeader(const String& error);
       virtual ~MalformedLanguageHeader();
 }; };
  
 class PEGASUS_COMMON_LINKAGE ParseError : public Exception  class PEGASUS_COMMON_LINKAGE InvalidAcceptLanguageHeader: public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     ParseError(const String& message) : Exception(MSG + message) { }      InvalidAcceptLanguageHeader(const String& error);
       virtual ~InvalidAcceptLanguageHeader();
 }; };
  
 class PEGASUS_COMMON_LINKAGE MissingNullTerminator : public Exception  class PEGASUS_COMMON_LINKAGE InvalidContentLanguageHeader: public Exception
 { {
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     MissingNullTerminator() : Exception(MSG) { }      InvalidContentLanguageHeader(const String& error);
       virtual ~InvalidContentLanguageHeader();
 }; };
  
 class PEGASUS_COMMON_LINKAGE InvalidAuthHeader: public Exception class PEGASUS_COMMON_LINKAGE InvalidAuthHeader: public Exception
Line 391 
Line 391 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     InvalidAuthHeader() : Exception(MSG) { }      InvalidAuthHeader();
       virtual ~InvalidAuthHeader();
 }; };
  
 class PEGASUS_COMMON_LINKAGE UnauthorizedAccess: public Exception class PEGASUS_COMMON_LINKAGE UnauthorizedAccess: public Exception
Line 400 
Line 402 
 public: public:
  
     static const char MSG[];     static const char MSG[];
       static const char KEY[];
  
     UnauthorizedAccess() : Exception(MSG) { }      UnauthorizedAccess();
       virtual ~UnauthorizedAccess();
 }; };
  
   class PEGASUS_COMMON_LINKAGE IncompatibleTypesException : public Exception
   {
   public:
       IncompatibleTypesException();
       virtual ~IncompatibleTypesException();
   };
   
   class PEGASUS_COMMON_LINKAGE InternalSystemError : public Exception
   {
   public:
   
       static const char MSG[];
   
       InternalSystemError();
       virtual ~InternalSystemError();
   };
   
   
 /** The CIMException defines the CIM exceptions that are formally defined in /** The CIMException defines the CIM exceptions that are formally defined in
     the CIM Operations over HTTP specification.  TraceableCIMException allows     the CIM Operations over HTTP specification.  TraceableCIMException allows
     file name and line number information to be added for diagnostic purposes.     file name and line number information to be added for diagnostic purposes.
Line 415 
Line 437 
     TraceableCIMException(     TraceableCIMException(
         CIMStatusCode code,         CIMStatusCode code,
         const String& message,         const String& message,
         const char* file,          const String& file,
           Uint32 line);
   
       TraceableCIMException(
           CIMStatusCode code,
           const MessageLoaderParms& parms,
           const String& file,
           Uint32 line);
   
       TraceableCIMException(
           const ContentLanguageList& langs,
           CIMStatusCode code,
           const String& message,
           const String& file,
         Uint32 line);         Uint32 line);
  
     TraceableCIMException(const CIMException & cimException);     TraceableCIMException(const CIMException & cimException);
Line 423 
Line 458 
     String getDescription() const;     String getDescription() const;
  
     String getTraceDescription() const;     String getTraceDescription() const;
   
       String getCIMMessage() const;
       void setCIMMessage(const String& cimMessage);
   
       String getFile() const;
       Uint32 getLine() const;
       const ContentLanguageList& getContentLanguages() const;
 }; };
  
 #define PEGASUS_CIM_EXCEPTION(CODE, EXTRA_MESSAGE) \ #define PEGASUS_CIM_EXCEPTION(CODE, EXTRA_MESSAGE) \
     TraceableCIMException(CODE, EXTRA_MESSAGE, __FILE__, __LINE__)      TraceableCIMException(CODE, EXTRA_MESSAGE, String(__FILE__), __LINE__)
   
   #define PEGASUS_CIM_EXCEPTION_LANG(LANGS, CODE, EXTRA_MESSAGE) \
       TraceableCIMException( \
           LANGS, CODE, EXTRA_MESSAGE, String(__FILE__), __LINE__)
   
   #define PEGASUS_CIM_EXCEPTION_L(CODE, MSG_PARMS) \
       TraceableCIMException(CODE, MSG_PARMS, String(__FILE__), __LINE__)
   
   /** Macro to prevent overflow of a signed int value when said value is
    *  doubled. If String/Array/Buffer size is greater than 0x3FFFFFFF, then
    *  something is suspect, throw bad_alloc exception.
    */
   #define PEGASUS_CHECK_CAPACITY_OVERFLOW(capacity) \
       do \
       { \
           if (capacity > 0x3FFFFFFF) \
               throw PEGASUS_STD(bad_alloc)(); \
       } \
       while (0)
   
   /** The following function CheckRep serves to reduce the function call
    *  overhead caused by calling a non-inlined function that only checks
    *  if a pointer is not NULL.
    *  The function ThrowUnitializedObjectException throws
    *  an UninitialisedObjectException.
    *  A function to throw the exception is used to reduce object size of
    *  function CheckRep which is inlined in many places across
    *  the common library.
    */
   PEGASUS_COMMON_LINKAGE extern void ThrowUninitializedObjectException();
   
   inline void CheckRep(void * rep)
   {
       if (!rep)
           ThrowUninitializedObjectException();
   };
  
 PEGASUS_NAMESPACE_END PEGASUS_NAMESPACE_END
  


Legend:
Removed from v.1.3  
changed lines
  Added in v.1.27

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2