Exception chaining: Difference between revisions

Content deleted Content added
Raxmus (talk | contribs)
m typo
No edit summary
Line 1:
'''Exception chaining''', or '''exception wrapping''', is an [[object-oriented programming]] technique of [[exception handling|handling exceptions]] by re-throwing a catchedcaught exception after wrapping it inside a new exception. The original exception is saved as a property (such as ''cause'') of the new exception. The idea is that a method should throw exceptions defined at the same abstraction level as the method itself, but without discarding information from the lower levels.
 
For example, a method to play a movie file might handle exceptions in reading the file by re-throwing them inside an exception of movie playing. The user interface might display the time the error occurred extracted from the movie playing exception (<code>movieplayingexception.time</code>) and the name of the file extracted from the file reading exception (<code>movieplayingexception.cause.filename</code>).