IP Library Granted Patent US 9,864,645
Granted Patent B2
US 9,864,645 · App. 15/439,745 · Granted Jan 9, 2018

Exception wrapping system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,864,645
App. No.
15/439,745
Granted
Jan 9, 2018
Kind
B2
Abstract

The described technology is directed towards handling errors in an application program that allows for a taxonomy and precedence order of errors. Exception wrapping includes preserving relevant information with an exception, and consolidates a series of errors into a single dominant exception instance that is handled appropriately depending on the exception type. Also described is a centralized exception manager that outputs an interactive dialog based upon the exception type, and takes a recovery action based upon user interaction with the dialog.

Claims (24)

1. A system comprising:

wrapping code coupled to an error handler of a routine, in which the routine produces an error and the wrapping code wraps the error with relevant information to provide a wrapped exception instance, including to use an exception type hierarchy to preserve information in the wrapped exception instance including an exception type, and wherein the wrapped exception instance comprises a single exception instance transformed from a series of errors; and

an exception manager that receives the wrapped exception instance and determines one or more actions to take based upon the exception type of the wrapped exception instance.

2. The system of claim 1 wherein the wrapped exception type is derived from a higher-level exception type in the exception type hierarchy.

3. The system of claim 1 wherein the exception manager takes the one or more actions, including to present an interactive dialog associated with the exception type.

4. The system of claim 3 wherein the exception manager accesses an exception type table that associates exception types with dialogs to select the interactive dialog for the exception type.

5. The system of claim 3 wherein the dialog includes an interactive input mechanism, which when selected, results in the exception manager taking further action to navigate to a location in a program that contains the routine, in which the location is determined based upon information in the wrapped exception type.

6. The system of claim 3 wherein the exception manager accesses an exception type table that associates exception types with dialogs to select the interactive dialog for the exception type.

7. The system of claim 3 wherein the dialog includes an interactive input mechanism, which when selected, results in the exception manager taking further action to navigate to a location in a program that contains the routine, in which the location is determined based upon information in the wrapped exception type.

8. The system of claim 1 further comprising a logging mechanism that logs data corresponding to the wrapped exception instance.

9. The system of claim 1 wherein the wrapping code is configured to determine if the error corresponds to a native error, and if so, to create a new exception instance and preserve at least some available data associated with the native error, if any, in the new exception instance.

10. The system of claim 1 wherein the wrapping code is called with a calling exception type, and wherein the wrapping code determines if the calling exception type is an ancestor type of a passed exception instance type, and if so, to preserve the passed exception instance as the wrapped exception instance, and if not, to create a new exception instance corresponding to the calling exception type.

11. The system of claim 10 wherein the wrapping code creates a new exception instance type, and wherein the wrapping code is further configured to preserve at least some data of the passed exception instance type in the new exception instance type.

12. The system of claim 10 wherein the wrapping code creates a new exception instance type, and wherein the wrapping code is further configured to preserve at least some data of the passed exception instance type in the new exception instance type.

13. The system of claim 1 wherein the wrapped exception instance corresponds to one link in an asynchronous callback chain.

14. The system of claim 1 wherein the wrapped exception type is derived from a higher-level exception type in the exception type hierarchy.

15. The system of claim 1 wherein the exception manager takes the one or more actions, including to present an interactive dialog associated with the exception type.

16. The system of claim 1 further comprising a logging mechanism that logs data corresponding to the wrapped exception instance.

17. The system of claim 1 wherein the wrapping code is configured to determine if the error corresponds to a native error, and if so, to create a new exception instance and preserve at least some available data associated with the native error, if any, in the new exception instance.

18. The system of claim 1 wherein the wrapping code is called with a calling exception type, and wherein the wrapping code determines if the calling exception type is an ancestor type of a passed exception instance type, and if so, to preserve the passed exception instance as the wrapped exception instance, and if not, to create a new exception instance corresponding to the calling exception type.

19. The system of claim 1 wherein the wrapped exception instance comprises a single exception instance transformed from a series of errors.

20. A system comprising:

wrapping code coupled to an error handler of a routine, in which the routine produces an error and the wrapping code wraps the error with relevant information to provide a wrapped exception instance, including to use an exception type hierarchy to preserve information in the wrapped exception instance including an exception type, and wherein the wrapped exception instance corresponds to one link in an asynchronous callback chain; and

an exception manager that receives the wrapped exception instance and determines one or more actions to take based upon the exception type of the wrapped exception instance.

Assignments (2)
SECURITY INTEREST Recorded Oct 1, 2025
From: WARNER BROS. DISCOVERY, INC.; WARNER MEDIA, LLC; TURNER BROADCASTING SYSTEM, INC.; HOME BOX OFFICE, INC.; DISCOVERY COMMUNICATIONS, LLC; WARNERMEDIA DIRECT LLC; DISCOVERY.COM LLC; WARNER BROS. ENTERTAINMENT INC.; CNN INTERACTIVE GROUP, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 072995/0858 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 22, 2017
From: FINNIGAN, PATRICK; CLARK, BRENDAN JOSEPH; FURTWANGLER, BRANDON C.; FURTWANGLER, STEVEN N.
To: HOME BOX OFFICE, INC.
Reel/Frame 041346/0574 →