1 karl 1.17 //%2006////////////////////////////////////////////////////////////////////////
|
2 kumpf 1.1 //
|
3 karl 1.12 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
4 // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
5 // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
|
6 karl 1.9 // IBM Corp.; EMC Corporation, The Open Group.
|
7 karl 1.12 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
8 // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
|
9 karl 1.13 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
10 // EMC Corporation; VERITAS Software Corporation; The Open Group.
|
11 karl 1.17 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
12 // EMC Corporation; Symantec Corporation; The Open Group.
|
13 kumpf 1.1 //
14 // Permission is hereby granted, free of charge, to any person obtaining a copy
15 // of this software and associated documentation files (the "Software"), to
16 // deal in the Software without restriction, including without limitation the
17 // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
18 // sell copies of the Software, and to permit persons to whom the Software is
19 // furnished to do so, subject to the following conditions:
20 //
21 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
22 // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
23 // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
24 // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
25 // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
26 // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
27 // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29 //
30 //==============================================================================
31 //
32 // Author: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
33 //
34 kumpf 1.1 // Modified By:
35 //
36 //%/////////////////////////////////////////////////////////////////////////////
37
38 #ifndef Pegasus_InternalException_h
39 #define Pegasus_InternalException_h
40
41 #include <Pegasus/Common/Config.h>
42 #include <Pegasus/Common/Linkage.h>
43 #include <Pegasus/Common/Exception.h>
|
44 jim.wunderlich 1.14 #include <Pegasus/Common/PegasusAssert.h>
45
46
|
47 kumpf 1.1
48 PEGASUS_NAMESPACE_BEGIN
49
50 /** Class AssertionFailureException
51 This is an Exception class tied to the definiton of an assert named
52 PEGASUS_ASSERT. This assertion can be included at any point in Pegasus
53 code
54 */
55 class PEGASUS_COMMON_LINKAGE AssertionFailureException : public Exception
56 {
57 public:
58
59 AssertionFailureException(
60 const char* file,
61 size_t line,
62 const String& message);
63 };
64
65
66 /* Macro to Create the equivalent of an assert but without the
67 termination. This can be used as a temporary marker for asserts
68 kumpf 1.1 that are not working. Prints out the error but continues.
69 NOTE: This is useful in test programs to keep us aware that we
70 have problems without halting the test sequence.
71 This was created primarily to put temporary asserts into tests that
72 are not yet working correctly but will not stop the test sequence.
73 */
74 #define ASSERTTEMP(COND) \
75 do \
76 { \
77 if (!(COND)) \
78 { \
79 cerr << "TEMP Assert Error TEMP **********" \
80 <<__FILE__ << " " << __LINE__ \
81 << " " << #COND << endl; \
82 } \
83 } while (0)
84
85
86 // ATTN: P3 KS documentation Required
87 class PEGASUS_COMMON_LINKAGE NullPointer : public Exception
88 {
89 kumpf 1.1 public:
90
91 static const char MSG[];
|
92 chuck 1.6 static const char KEY[];
|
93 kumpf 1.1
|
94 chuck 1.6 //NullPointer() : Exception(MSG) { }
|
95 chuck 1.5
|
96 chuck 1.6 NullPointer() : Exception(MessageLoaderParms(KEY, MSG)) { }
|
97 kumpf 1.1 };
98
99 // ATTN: P3 KS documentation Required
100 class PEGASUS_COMMON_LINKAGE UndeclaredQualifier : public Exception
101 {
102 public:
103
104 static const char MSG[];
|
105 chuck 1.6 static const char KEY[];
|
106 kumpf 1.1
|
107 chuck 1.6 //UndeclaredQualifier(const String& qualifierName)
108 //: Exception(MSG + qualifierName) { }
|
109 chuck 1.5
110 // NOTE - MSG needs to have a $0 arg for all the substitution cases
|
111 chuck 1.6 UndeclaredQualifier(const String& qualifierName)
112 : Exception(MessageLoaderParms(KEY, MSG, qualifierName)) { }
|
113 kumpf 1.1 };
114
115 // ATTN: P3 KS documentation Required
116 class PEGASUS_COMMON_LINKAGE BadQualifierScope : public Exception
117 {
118 public:
119
|
120 chuck 1.6 static const char MSG[];
121 static const char KEY[];
|
122 kumpf 1.1
|
123 chuck 1.6 //BadQualifierScope(const String& qualifierName, const String& scopeString)
124 //: Exception(MSG + qualifierName + String(" scope=") + scopeString) { }
|
125 chuck 1.5
|
126 chuck 1.6
|
127 chuck 1.5 BadQualifierScope(const String& qualifierName, const String& scopeString)
128 : Exception(MessageLoaderParms(KEY,
129 MSG,
130 qualifierName,
131 scopeString)) { }
|
132 chuck 1.6
|
133 kumpf 1.1 };
134
135 // ATTN: P3 KS documentation Required
136 class PEGASUS_COMMON_LINKAGE BadQualifierOverride : public Exception
137 {
138 public:
139
140 static const char MSG[];
|
141 chuck 1.6 static const char KEY[];
|
142 kumpf 1.1
|
143 chuck 1.6 //BadQualifierOverride(const String& qualifierName)
144 //: Exception(MSG + qualifierName) { }
145
|
146 kumpf 1.1 BadQualifierOverride(const String& qualifierName)
|
147 chuck 1.6 : Exception(MessageLoaderParms(KEY, MSG, qualifierName)) { }
|
148 kumpf 1.1 };
149
150 class PEGASUS_COMMON_LINKAGE BadQualifierType : public Exception
151 {
152 public:
153
154 static const char MSG[];
|
155 chuck 1.6 static const char KEY[];
|
156 kumpf 1.1
|
157 chuck 1.6 //BadQualifierType(const String& qualifierName)
158 //: Exception(MSG + qualifierName) { }
|
159 chuck 1.5
|
160 chuck 1.6 BadQualifierType(const String& qualifierName)
161 : Exception(MessageLoaderParms(KEY, MSG, qualifierName)) { }
|
162 kumpf 1.1 };
163
164 // ATTN: P3 KS documentation Required
165 class PEGASUS_COMMON_LINKAGE ClassAlreadyResolved : public Exception
166 {
167 public:
168
169 static const char MSG[];
|
170 chuck 1.6 static const char KEY[];
|
171 kumpf 1.1
|
172 chuck 1.6 //ClassAlreadyResolved(const String& className)
173 //: Exception(MSG + className) { }
|
174 chuck 1.5
|
175 chuck 1.6 ClassAlreadyResolved(const String& className)
176 : Exception(MessageLoaderParms(KEY, MSG, className)) { }
|
177 kumpf 1.1 };
178
179 // ATTN: P3 KS documentation Required
180 class PEGASUS_COMMON_LINKAGE ClassNotResolved : public Exception
181 {
182 public:
183
184 static const char MSG[];
|
185 chuck 1.6 static const char KEY[];
|
186 kumpf 1.1
|
187 chuck 1.6 //ClassNotResolved(const String& className)
188 //: Exception(MSG + className) { }
|
189 chuck 1.5
|
190 chuck 1.6 ClassNotResolved(const String& className)
191 : Exception(MessageLoaderParms(KEY, MSG, className)) { }
|
192 kumpf 1.1 };
193
194 // ATTN: P3 KS documentation Required
195 class PEGASUS_COMMON_LINKAGE InstanceAlreadyResolved : public Exception
196 {
197 public:
198
199 static const char MSG[];
|
200 chuck 1.6 static const char KEY[];
|
201 kumpf 1.1
|
202 chuck 1.6 //InstanceAlreadyResolved()
203 // : Exception(MSG) { }
|
204 chuck 1.5
|
205 chuck 1.6 InstanceAlreadyResolved()
206 : Exception(MessageLoaderParms(KEY, MSG)) { }
|
207 kumpf 1.1 };
208
209 // ATTN: P3 KS documentation Required
210 class PEGASUS_COMMON_LINKAGE InstantiatedAbstractClass : public Exception
211 {
212 public:
213
214 static const char MSG[];
|
215 chuck 1.6 static const char KEY[];
|
216 kumpf 1.1
|
217 chuck 1.6 //InstantiatedAbstractClass(const String& className)
218 //: Exception(MSG + className) { }
|
219 chuck 1.5
|
220 chuck 1.6 InstantiatedAbstractClass(const String& className)
221 : Exception(MessageLoaderParms(KEY, MSG, className)) { }
|
222 kumpf 1.1 };
223
224 // ATTN: P3 KS documentation Required
225 class PEGASUS_COMMON_LINKAGE NoSuchProperty : public Exception
226 {
227 public:
228
229 static const char MSG[];
|
230 chuck 1.6 static const char KEY[];
|
231 kumpf 1.1
|
232 chuck 1.6 //NoSuchProperty(const String& propertyName)
233 //: Exception(MSG + propertyName) { }
|
234 chuck 1.5
|
235 chuck 1.6 NoSuchProperty(const String& propertyName)
236 : Exception(MessageLoaderParms(KEY, MSG, propertyName)) { }
|
237 kumpf 1.1 };
238
239 // ATTN: P3 KS documentation Required
240 class PEGASUS_COMMON_LINKAGE NoSuchFile : public Exception
241 {
242 public:
243
244 static const char MSG[];
|
245 chuck 1.6 static const char KEY[];
|
246 kumpf 1.1
|
247 chuck 1.6 // NoSuchFile(const String& fileName) : Exception(MSG + fileName) { }
|
248 chuck 1.5
|
249 chuck 1.6 NoSuchFile(const String& fileName)
250 : Exception(MessageLoaderParms(KEY, MSG, fileName)) { }
|
251 kumpf 1.1 };
252
253 // ATTN: P3 KS documentation Required
254 class PEGASUS_COMMON_LINKAGE FileNotReadable : public Exception
255 {
256 public:
257
258 static const char MSG[];
|
259 chuck 1.6 static const char KEY[];
|
260 kumpf 1.1
|
261 chuck 1.6 //FileNotReadable(const String& fileName) : Exception(MSG + fileName) { }
|
262 chuck 1.5
|
263 chuck 1.6 FileNotReadable(const String& fileName)
264 : Exception(MessageLoaderParms(KEY, MSG, fileName)) { }
|
265 kumpf 1.1 };
266
267 // ATTN: P3 KS documentation Required
268 class PEGASUS_COMMON_LINKAGE CannotRemoveDirectory : public Exception
269 {
270 public:
271
272 static const char MSG[];
|
273 chuck 1.6 static const char KEY[];
|
274 kumpf 1.1
|
275 chuck 1.6 //CannotRemoveDirectory(const String& path) : Exception(MSG + path) { }
|
276 chuck 1.5
|
277 chuck 1.6 CannotRemoveDirectory(const String& path)
278 : Exception(MessageLoaderParms(KEY, MSG, path)) { }
|
279 kumpf 1.1 };
280
281 // ATTN: P3 KS documentation Required
282 class PEGASUS_COMMON_LINKAGE CannotRemoveFile : public Exception
283 {
284 public:
285
286 static const char MSG[];
|
287 chuck 1.6 static const char KEY[];
|
288 kumpf 1.1
|
289 chuck 1.6 //CannotRemoveFile(const String& path) : Exception(MSG + path) { }
290 CannotRemoveFile(const String& path)
291 : Exception(MessageLoaderParms(KEY, MSG, path)) { }
|
292 kumpf 1.1 };
293
294 // ATTN: P3 KS documentation Required
295 class PEGASUS_COMMON_LINKAGE CannotRenameFile : public Exception
296 {
297 public:
298
299 static const char MSG[];
|
300 chuck 1.6 static const char KEY[];
|
301 kumpf 1.1
|
302 chuck 1.6 //CannotRenameFile(const String& path) : Exception(MSG + path) { }
303 CannotRenameFile(const String& path)
304 : Exception(MessageLoaderParms(KEY, MSG, path)) { }
|
305 kumpf 1.1 };
306
307 // ATTN: P3 KS documentation Required
308 class PEGASUS_COMMON_LINKAGE NoSuchDirectory : public Exception
309 {
310 public:
311
312 static const char MSG[];
|
313 chuck 1.6 static const char KEY[];
|
314 kumpf 1.1
|
315 chuck 1.6 //NoSuchDirectory(const String& directoryName)
316 //: Exception(MSG + directoryName) { }
317 NoSuchDirectory(const String& directoryName)
318 : Exception(MessageLoaderParms(KEY, MSG, directoryName)) { }
|
319 kumpf 1.1 };
320
321 // ATTN: P3 KS documentation Required
322 class PEGASUS_COMMON_LINKAGE CannotCreateDirectory : public Exception
323 {
324 public:
325
326 static const char MSG[];
|
327 chuck 1.6 static const char KEY[];
|
328 kumpf 1.1
|
329 chuck 1.6 //CannotCreateDirectory(const String& path)
330 //: Exception(MSG + path) { }
331 CannotCreateDirectory(const String& path)
332 : Exception(MessageLoaderParms(KEY, MSG, path)) { }
|
333 kumpf 1.1 };
334
335 // ATTN: P3 KS documentation Required
336 class PEGASUS_COMMON_LINKAGE CannotOpenFile : public Exception
337 {
338 public:
339
340 static const char MSG[];
|
341 chuck 1.6 static const char KEY[];
|
342 kumpf 1.1
|
343 chuck 1.6 //CannotOpenFile(const String& path)
344 //: Exception(MSG + path) { }
345 CannotOpenFile(const String& path)
346 : Exception(MessageLoaderParms(KEY, MSG, path)) { }
|
347 kumpf 1.1 };
348
349 // ATTN: P3 KS documentation Required
350 class PEGASUS_COMMON_LINKAGE NotImplemented : public Exception
351 {
352 public:
353
354 static const char MSG[];
|
355 chuck 1.6 static const char KEY[];
|
356 kumpf 1.1
|
357 chuck 1.6 // NotImplemented(const String& method) : Exception(MSG + method) { }
358 NotImplemented(const String& method)
359 : Exception(MessageLoaderParms(KEY, MSG, method)) { }
|
360 kumpf 1.1 };
361
362 class PEGASUS_COMMON_LINKAGE StackUnderflow : public Exception
363 {
364 public:
365
366 static const char MSG[];
|
367 chuck 1.6 static const char KEY[];
|
368 kumpf 1.1
|
369 chuck 1.6 //StackUnderflow() : Exception(MSG) { }
370 StackUnderflow()
371 : Exception(MessageLoaderParms(KEY, MSG)) { }
|
372 kumpf 1.1 };
373
374 class PEGASUS_COMMON_LINKAGE StackOverflow : public Exception
375 {
376 public:
377
378 static const char MSG[];
|
379 chuck 1.6 static const char KEY[];
|
380 kumpf 1.1
|
381 chuck 1.6 //StackOverflow() : Exception(MSG) { }
382 StackOverflow()
383 : Exception(MessageLoaderParms(KEY, MSG)) { }
|
384 kumpf 1.1 };
385
386 class PEGASUS_COMMON_LINKAGE QueueUnderflow : public Exception
387 {
388 public:
389
390 static const char MSG[];
|
391 chuck 1.6 static const char KEY[];
|
392 kumpf 1.1
|
393 chuck 1.6 //QueueUnderflow() : Exception(MSG) { }
394 QueueUnderflow()
395 : Exception(MessageLoaderParms(KEY, MSG)) { }
|
396 kumpf 1.1 };
397
398 class PEGASUS_COMMON_LINKAGE BadFormat : public Exception
399 {
400 public:
401
402 static const char MSG[];
|
403 chuck 1.6 static const char KEY[];
|
404 kumpf 1.1
|
405 chuck 1.6 //BadFormat() : Exception(MSG) { }
406 BadFormat()
407 : Exception(MessageLoaderParms(KEY, MSG)) { }
|
408 kumpf 1.1 };
409
410 class PEGASUS_COMMON_LINKAGE BadlyFormedCGIQueryString : public Exception
411 {
412 public:
413
414 static const char MSG[];
|
415 chuck 1.6 static const char KEY[];
|
416 kumpf 1.1
|
417 chuck 1.6 //BadlyFormedCGIQueryString() : Exception(MSG) { }
418 BadlyFormedCGIQueryString()
419 : Exception(MessageLoaderParms(KEY, MSG)) { }
|
420 kumpf 1.1 };
421
422 class PEGASUS_COMMON_LINKAGE DynamicLoadFailed : public Exception
423 {
424 public:
425
426 static const char MSG[];
|
427 chuck 1.6 static const char KEY[];
|
428 kumpf 1.1
|
429 chuck 1.6 //DynamicLoadFailed(const String& libraryName)
430 //: Exception(MSG + libraryName) { }
|
431 chuck 1.5
|
432 chuck 1.6 DynamicLoadFailed(const String& libraryName)
433 : Exception(MessageLoaderParms(KEY, MSG, libraryName)) { }
|
434 kumpf 1.1 };
435
436 class PEGASUS_COMMON_LINKAGE DynamicLookupFailed : public Exception
437 {
438 public:
439
440 static const char MSG[];
|
441 chuck 1.6 static const char KEY[];
|
442 kumpf 1.1
|
443 chuck 1.6 //DynamicLookupFailed(const String& symbolName)
444 //: Exception(MSG + symbolName) { }
445 DynamicLookupFailed(const String& symbolName)
446 : Exception(MessageLoaderParms(KEY, MSG, symbolName)) { }
|
447 kumpf 1.1 };
448
449 class PEGASUS_COMMON_LINKAGE CannotOpenDirectory : public Exception
450 {
451 public:
452
453 static const char MSG[];
|
454 chuck 1.6 static const char KEY[];
|
455 kumpf 1.1
|
456 chuck 1.6 //CannotOpenDirectory(const String& path) : Exception(MSG + path) { }
457 CannotOpenDirectory(const String& path)
458 : Exception(MessageLoaderParms(KEY, MSG, path)) { }
|
459 kumpf 1.1 };
460
461 class PEGASUS_COMMON_LINKAGE ParseError : public Exception
462 {
463 public:
464
465 static const char MSG[];
|
466 chuck 1.6 static const char KEY[];
|
467 kumpf 1.1
|
468 chuck 1.6 //ParseError(const String& message) : Exception(MSG + message) { }
469 ParseError(const String& message)
470 : Exception(MessageLoaderParms(KEY, MSG, message)) { }
|
471 kumpf 1.1 };
472
473 class PEGASUS_COMMON_LINKAGE MissingNullTerminator : public Exception
474 {
475 public:
476
477 static const char MSG[];
|
478 chuck 1.6 static const char KEY[];
|
479 kumpf 1.1
|
480 chuck 1.6 //MissingNullTerminator() : Exception(MSG) { }
481 MissingNullTerminator()
482 : Exception(MessageLoaderParms(KEY, MSG)) { }
|
483 chuck 1.5 };
484
485 //l10n start
486
487 class PEGASUS_COMMON_LINKAGE MalformedLanguageHeader: public Exception
488 {
489 public:
490
491 static const char MSG[];
|
492 chuck 1.6 static const char KEY[];
|
493 chuck 1.5
|
494 chuck 1.6 //MalformedLanguageHeader(const String& error) : Exception(MSG + error) { }
495 MalformedLanguageHeader(const String& error)
496 : Exception(MessageLoaderParms(KEY, MSG, error)) { }
|
497 chuck 1.5 };
498
499
500 class PEGASUS_COMMON_LINKAGE InvalidAcceptLanguageHeader: public Exception
501 {
502 public:
503
504 static const char MSG[];
|
505 chuck 1.6 static const char KEY[];
|
506 chuck 1.5
|
507 chuck 1.6 //InvalidAcceptLanguageHeader(const String& error) : Exception(MSG + error) { }
508 InvalidAcceptLanguageHeader(const String& error)
509 : Exception(MessageLoaderParms(KEY, MSG, error)) { }
|
510 kumpf 1.1 };
511
|
512 chuck 1.5 class PEGASUS_COMMON_LINKAGE InvalidContentLanguageHeader: public Exception
513 {
514 public:
515
516 static const char MSG[];
|
517 chuck 1.6 static const char KEY[];
|
518 chuck 1.5
|
519 chuck 1.6 //InvalidContentLanguageHeader(const String& error) : Exception(MSG + error) { }
520 InvalidContentLanguageHeader(const String& error)
521 : Exception(MessageLoaderParms(KEY, MSG, error)) { }
|
522 chuck 1.5 };
523
524 //l10n end
525
|
526 kumpf 1.1 class PEGASUS_COMMON_LINKAGE InvalidAuthHeader: public Exception
527 {
528 public:
529
530 static const char MSG[];
|
531 chuck 1.6 static const char KEY[];
|
532 kumpf 1.1
|
533 chuck 1.6 //InvalidAuthHeader() : Exception(MSG) { }
534 InvalidAuthHeader()
535 : Exception(MessageLoaderParms(KEY, MSG)) { }
|
536 kumpf 1.1 };
537
538 class PEGASUS_COMMON_LINKAGE UnauthorizedAccess: public Exception
539 {
540 public:
541
542 static const char MSG[];
|
543 chuck 1.6 static const char KEY[];
|
544 kumpf 1.1
|
545 chuck 1.6 //UnauthorizedAccess() : Exception(MSG) { }
546 UnauthorizedAccess()
547 : Exception(MessageLoaderParms(KEY, MSG)) { }
|
548 kumpf 1.1 };
549
|
550 kumpf 1.4 class PEGASUS_COMMON_LINKAGE IncompatibleTypesException : public Exception
551 {
552 public:
|
553 chuck 1.5 IncompatibleTypesException();
|
554 kumpf 1.4 };
555
|
556 kumpf 1.10 class PEGASUS_COMMON_LINKAGE InternalSystemError : public Exception
557 {
558 public:
559
560 static const char MSG[];
561
562 InternalSystemError()
563 : Exception(MSG) { }
564 };
565
|
566 kumpf 1.4
|
567 kumpf 1.1 /** The CIMException defines the CIM exceptions that are formally defined in
|
568 kumpf 1.2 the CIM Operations over HTTP specification. TraceableCIMException allows
|
569 kumpf 1.1 file name and line number information to be added for diagnostic purposes.
570 */
|
571 kumpf 1.2 class PEGASUS_COMMON_LINKAGE TraceableCIMException : public CIMException
|
572 kumpf 1.1 {
573 public:
574
|
575 kumpf 1.2 TraceableCIMException(
576 CIMStatusCode code,
577 const String& message,
|
578 kumpf 1.11 const String& file,
|
579 kumpf 1.2 Uint32 line);
|
580 humberto 1.7
581 //l10n
582 TraceableCIMException(
583 CIMStatusCode code,
584 MessageLoaderParms parms,
|
585 kumpf 1.11 const String& file,
|
586 humberto 1.7 Uint32 line);
|
587 kumpf 1.2
|
588 chuck 1.5 // l10n
589 TraceableCIMException(
|
590 kumpf 1.16 const ContentLanguageList& langs,
|
591 chuck 1.5 CIMStatusCode code,
592 const String& message,
|
593 kumpf 1.11 const String& file,
|
594 chuck 1.5 Uint32 line);
595
|
596 kumpf 1.2 TraceableCIMException(const CIMException & cimException);
597
598 String getDescription() const;
|
599 kumpf 1.1
600 String getTraceDescription() const;
|
601 kumpf 1.11
602 String getCIMMessage() const;
603 void setCIMMessage(const String& cimMessage);
604
605 String getFile() const;
606 Uint32 getLine() const;
|
607 kumpf 1.16 const ContentLanguageList& getContentLanguages() const;
|
608 kumpf 1.2 };
|
609 kumpf 1.1
|
610 kumpf 1.2 #define PEGASUS_CIM_EXCEPTION(CODE, EXTRA_MESSAGE) \
|
611 kumpf 1.11 TraceableCIMException(CODE, EXTRA_MESSAGE, String(__FILE__), __LINE__)
|
612 chuck 1.5
613 // l10n
614 #define PEGASUS_CIM_EXCEPTION_LANG(LANGS, CODE, EXTRA_MESSAGE) \
|
615 kumpf 1.11 TraceableCIMException( \
616 LANGS, CODE, EXTRA_MESSAGE, String(__FILE__), __LINE__)
|
617 humberto 1.7
618 //l10n
619 #define PEGASUS_CIM_EXCEPTION_L(CODE, MSG_PARMS) \
|
620 kumpf 1.11 TraceableCIMException(CODE, MSG_PARMS, String(__FILE__), __LINE__)
|
621 kumpf 1.1
|
622 dave.sudlik 1.17.2.1 /** Macro to prevent overflow of a signed int value when said value is
623 * doubled. If String/Array/Buffer size is greater than 0x3FFFFFFF, then
624 * something is suspect, throw bad_alloc exception.
625 */
626 #define PEGASUS_CHECK_CAPACITY_OVERFLOW(capacity) \
627 do \
628 { \
629 if (capacity > 0x3FFFFFFF) \
630 throw PEGASUS_STD(bad_alloc)(); \
631 } \
632 while (0)
633
|
634 kumpf 1.1 PEGASUS_NAMESPACE_END
635
636 #endif /* Pegasus_InternalException_h */
|