1461160908-a8bbd0af-4c58-4d88-9edc-4881fd20b49a

1. A method implemented on one or more machines for adding functionality to existing object code, the method comprising:
adding exit code to said existing object code, said existing object code includes a method having original byte code, said exit code is part of a profiling process;
adding a new entry in an exceptions data store for said existing object code, said new entry points to said exit code, said exceptions data store is an exception table for said method, said adding a new entry in said exceptions data store includes adding said new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said exit code and said new entry indicates that said new entry pertains to multiple types of exceptions; and
performing said profiling process.
2. A method according to claim 1, wherein:
said exit code is to be performed upon exiting said method.
3. A method according to claim 1, further comprising:
creating a path to said exit code from said existing object code.
4. A method according to claim 3, wherein
said creating a path includes adding a jump instruction.
5. A method according to claim 1, further comprising:
adding start code to said existing object code.
6. A method according to claim 5, wherein:
said start code is to be performed upon starting said method.
7. A method according to claim 6, wherein:
said start code is a call to a start method;
said exit code is a call to an exit method;
said start method starts said profiling process; and
said exit method stops said profiling process.
8. A method according to claim 5, wherein:
said adding start code includes adding new byte code to said method and adjusting indices for said original byte code.
9. A method according to claim 5, wherein:
said adding start code includes adding new byte code to said method and adjusting indices for said original byte code, said new byte code is positioned to be executed prior to said original byte code.
10. A method according to claim 9, wherein:
said start code starts said profiling process;
said exit code stops said profiling process;
said exit code is positioned to be executed subsequent to said original byte code; and
said adding exit code includes adding an instruction to jump to said exit code from said original byte code; and
said new entry indicates that said new entry pertains to all types of exceptions.
11. A method according to claim 5, wherein:
said adding exit code and adding a new entry include adding try and finally functionality to said original byte code.
12. A method according to claim 1, further comprising the step of:
storing said exit code.
13. A method according to claim 1, wherein:
said adding exit code and adding a new entry add instructions to be executed upon any exit from said method.
14. A method according to claim 1, wherein:
said method is a Java method;
said exit code is Java; and
said exception table is a Java exception table for said Java method.
15. A method according to claim 1, wherein said adding exit code includes:
adding new finalization code;
adding new code that calls said new finalization code if no exceptions occur; and
adding a new exception handler, said new exception handler is performed if an otherwise unhandled exception occurs, said new exception handler calls said new finalization code.
16. A method according to claim 15, wherein:
said new entry includes a reference to said new exception handler.
17. A method according to claim 1, wherein:
said adding a new entry in an exceptions data store creates a grouping of a portion of said existing object code and references a portion of said exit code that is to be performed if an exception occurs during execution of said portion of said existing object code.
18. A method according to claim 1, wherein:
said adding a new entry in an exceptions data store comprises creating a new grouping of at least a portion of said existing object code; and
said adding exit code includes adding new finalization code for said grouping, adding new code that calls said new finalization code if no exceptions occur, and adding new code that is performed if an exception occurs, said new code that is performed if an exception occurs calls said new finalization code.
19. A method according to claim 18, wherein:
said new entry includes a reference to said grouping and a reference to said new finalization code.
20. A method according to claim 1, wherein:
said adding exit code and adding a new entry include adding try and finally functionality to said existing object code.
21. The method of claim 1, wherein said adding exit code and adding a new entry are performed automatically.
22. A method implemented on one or more machines for adding functionality to existing object code, the method comprising:
adding new exit functionality to said existing object code, said existing object code includes a method having original byte code, said new exit functionality is part of a profiling process;
creating a grouping of all or a portion of said existing object code; and
associating said grouping of said existing object code with at least a portion of said new exit functionality that is to be performed if an exception occurs during execution of said grouping of said existing object code, said associating includes adding a new entry into an exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said new exit functionality and said new entry indicates that said new entry pertains to multiple types of exceptions.
23. A method according to claim 22, further comprising:
adding start functionality to said existing object code.
24. A method according to claim 23, wherein:
said start functionality is to be performed upon starting said method;
said exit functionality is performed upon existing said method;
said start functionality is a call to a start method;
said exit functionality is a call to an exit method;
said start method starts said profiling process; and
said exit method stops said profiling process.
25. A method according to claim 23, wherein:
said adding start functionality includes adding new byte code to said method and adjusting indices for said original byte code, said new byte code is positioned to be executed prior to said original byte code.
26. A method according to claim 25, wherein:
said start functionality starts said profiling process;
said exit functionality stops said profiling process;
said exit functionality is positioned to be executed subsequent to said original byte code;
said adding exit functionality includes adding an instruction to jump to new exit code from said original byte code; and
said new entry indicates that said new entry pertains to all types of exceptions.
27. A method according to claim 22, wherein:
said creating a grouping and associating implement try and finally functionality.
28. A method according to claim 22, wherein:
said exit functionality is to be performed upon exiting said method.
29. A method according to claim 22, wherein:
said adding exit functionality and associating includes adding instructions to be executed upon any exit from said method.
30. A method according to claim 22, wherein:
said method is a Java method; and
said exit functionality is Java code.
31. A method according to claim 22, wherein said adding new exit functionality includes:
adding new finalization code;
adding new code that calls said new finalization code if no exceptions occur; and
adding a new exception handler, said new exception handler is performed if an otherwise unhandled exception occurs, said new exception handler calls said new finalization code.
32. A method according to claim 31, wherein:
said new entry includes a reference to said new exception handler.
33. A method according to claim 22, wherein:
said adding, creating and associating include adding try and finally functionality to said existing object code.
34. The method of claim 22, wherein said adding, creating, and associating are performed automatically.
35. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising:
adding exit code to existing object code, said existing object code includes a method having original byte code, said exit code is part of a profiling process; and
adding an entry in an exceptions data store pointing to said exit code, said exceptions data store is an exception table for said method, said entry indicates that said entry pertains to two or more types of exceptions, said adding an entry in said exceptions data store includes adding a new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said exit code.
36. One or more processor readable storage devices according to claim 35, wherein said method further comprises:
adding start code to said existing object code.
37. One or more processor readable storage devices according to claim 36, wherein:
said adding start code includes adding new byte code to said method and adjusting indices for said original byte code.
38. One or more processor readable storage devices according to claim 36, wherein:
said adding start code includes adding new byte code to said method and adjusting indices for said original byte code, said new byte code is positioned to be executed prior to said original byte code.
39. One or more processor readable storage devices according to claim 38, wherein:
said start code starts said profiling process;
said exit code stops said profiling process;
said exit code is positioned to be executed subsequent to said original byte code;
said adding exit code includes adding an instruction to jump to said exit code from said original byte code; and
said new entry indicates that said new entry pertains to all types of exceptions.
40. One or more processor readable storage devices according to claim 35, wherein:
said adding exit code includes adding new byte code to said method.
41. One or more processor readable storage devices according to claim 35, wherein:
said adding exit code and adding an entry add instructions to be executed upon any exit from said method.
42. One or more processor readable storage devices according to claim 35, wherein:
said method is a Java method;
said exit code is Java; and
said exceptions data store is a Java exception table for said Java method.
43. One or more processor readable storage devices according to claim 35, wherein said adding exit code includes:
adding new finalization code;
adding new code that calls said new finalization code if no exceptions occur; and
adding a new exception handler, said new exception handler is performed if an otherwise unhandled exception occurs, said new exception handler calls said new finalization code, said new entry includes a reference to said new exception handler.
44. One or more processor readable storage devices according to claim 35, wherein:
said adding an entry in an exceptions data store creates a grouping of a portion of said existing object code and references a portion of said exit code that is to be performed if an exception occurs during execution of said portion of said existing object code.
45. One or more processor readable storage devices according to claim 35, wherein:
said adding an entry in an exceptions data store comprises creating a new grouping of at least a portion of said existing object code; and
said adding exit code includes adding new finalization code for said grouping, adding new code that calls said new finalization code if no exceptions occur, and adding new code that is performed if an exception occurs, said new code that is performed if an exception occurs calls said new finalization code.
46. One or more processor readable storage devices according to claim 35, wherein:
said adding exit code and adding an entry include adding try and finally functionality to said existing object code.
47. An apparatus, comprising:
one or more storage devices; and
one or more processors in communication with said one or more storage devices, said one or more processors programmed to perform a method comprising:
adding exit code to existing object code, said existing object code includes a method having original byte code, said exit code is part of a profiling process; and
adding an entry in an exceptions data store pointing to said exit code, said exceptions data store is an exception table for said method, said adding an entry in said exceptions data store includes adding a new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said exit code and said new entry indicates that said new entry pertains to multiple types of exceptions.
48. An apparatus according to claim 47, wherein said method further comprises:
adding start code to said existing object code.
49. An apparatus according to claim 48, wherein:
said adding start code includes adding new byte code to said method and adjusting indices for said original byte code.
50. An apparatus according to claim 49, wherein:
said start code starts said profiling process;
said exit code stops said profiling process;
said exit code is positioned to be executed subsequent to said original byte code;
said adding exit code includes adding an instruction to jump to said exit code from said original byte code; and
said new entry indicates that said new entry pertains to all types of exceptions.
51. An apparatus according to claim 47, wherein:
said adding exit code and adding an entry add instructions to be executed upon any exit from said method.
52. An apparatus according to claim 47, wherein:
said method is a Java method;
said exit code is Java; and
said exceptions data store is a Java exception table for said Java method.
53. An apparatus according to claim 47, wherein said adding exit code includes:
adding new finalization code;
adding new code that calls said new finalization code if no exceptions occur; and
adding a new exception handler, said new exception handler is performed if an otherwise unhandled exception occurs, said new exception handler calls said new finalization code, said new entry includes a reference to said new exception handler.
54. An apparatus according to claim 47, wherein:
said adding an entry in an exceptions data store comprises creating a new grouping of at least a portion of said existing object code; and
said adding exit code includes adding new finalization code for said grouping, adding new code that calls said new finalization code if no exceptions occur, and adding new code that is performed if an exception occurs, said new code that is performed if an exception calls said new finalization code.
55. An apparatus according to claim 47, wherein:
said adding exit code and adding an entry include adding try and finally functionality to said existing object code.
56. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising:
adding exit functionality to existing object code, said existing object code includes a method having original byte code, said exit functionality is part of a profiling process;
creating a grouping of all or part of said existing object code; and
associating said exit functionality as a clean up process for said all or part of said existing object code grouped together, said associating includes adding a new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said exit functionality and said new entry indicates that said new entry pertains to multiple types of exceptions.
57. One or more processor readable storage devices according to claim 56, wherein said method further comprises:
adding start functionality to said existing object code.
58. One or more processor readable storage devices according to claim 57, wherein:
said adding start functionality includes adding new byte code to said method and adjusting indices for said original byte code, said new byte code is positioned to be executed prior to said original byte code;
said start functionality starts said profiling process;
said exit functionality stops said profiling process;
said exit functionality is positioned to be executed subsequent to said original byte code;
said adding exit functionality includes adding an instruction to jump to new exit code from said original byte code; and
said new entry indicates that said new entry pertains to all types of exceptions.
59. One or more processor readable storage devices according to claim 56, wherein:
said creating a grouping and associating implement try and finally functionality.
60. One or more processor readable storage devices according to claim 56, wherein:
said adding exit functionality and associating includes adding instructions to be executed upon any exit from said method.
61. One or more processor readable storage devices according to claim 56, wherein said adding, creating, and associating are performed automatically.
62. An apparatus, comprising:
one or more storage devices; and
one or more processors in communication with said one or more storage devices, said one or more processors programmed to perform a method comprising:
adding exit functionality to existing object code, said existing object code includes a method having original byte code, said exit functionality is part of a profiling process,
creating a new grouping of all or part of said existing object code; and
associating said exit functionality as a clean up process for said all or part of said existing object code grouped together,
said creating a grouping and associating include adding a new entry into an exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said exit functionality and said new entry indicates that said new entry pertains to multiple types of exceptions.
63. An apparatus according to claim 62 wherein said method further comprises:
adding start functionality to said existing object code.
64. An apparatus according to claim 63, wherein:
said adding start functionality includes adding new byte code to said method and adjusting indices for said original byte code, said new byte code is positioned to be executed prior to said original byte code;
said start functionality starts said profiling process;
said exit functionality stops said profiling process;
said exit functionality is positioned to be executed subsequent to said original byte code; and
said new entry indicates that said new entry pertains to all types of exceptions.
65. An apparatus according to claim 62, wherein:
said creating a grouping and associating implement try and finally functionality.
66. An apparatus according to claim 62, wherein:
said adding exit functionality, creating a grouping and associating includes adding instructions to be executed upon any exit from said method.
67. A method implemented on one or more machines for adding functionality to existing object code, the method comprising:
accessing said existing object code; and
adding try and finally functionality to said existing object code, said adding try and finally functionality includes:
adding new finalization code;
adding new code that calls said new finalization code if no exceptions occur,
adding a new exception handler, said new exception handler is performed if an otherwise unhandled exception occurs, said new exception handler calls said new finalization code, and
adding a new entry in an exceptions table, said new entry includes a reference to a portion of said existing object code and a reference to said new exception handler, said new entry indicates that said new entry pertains to multiple types of exceptions.
68. The method of claim 67, wherein said accessing and adding are performed automatically.
69. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising:
adding exit code to said existing object code, said existing object code includes a method having original byte code, said adding exit code includes adding start code to said existing object code, said adding start code includes adding new byte code to said method and adjusting indices for said original byte code, said new byte code is positioned to be executed prior to said original byte code, said start code starts a profiling process, said exit code stops a profiling process, said exit code is positioned to be executed subsequent to said original byte code, said adding exit code includes adding an instruction to jump to said exit code from said original byte code; and
adding a new entry in an exceptions data store for said existing object code, said new entry points to said exit code, said exceptions data store is an exception table for said method, said adding a new entry in said exceptions data store includes adding said new entry into said exception table for said method, said new entry indicates a range of indices corresponding to said original byte code, said new entry includes a reference to said exit code and said new entry indicates that said new entry pertains to all types of exceptions.
70. One or more processor readable storage devices according to claim 69, wherein adding exit code includes:
adding new finalization code;
adding new code that calls said new finalization code if no exceptions occur; and
adding a new exception handler, said new exception handler is performed if an otherwise unhandled exception occurs, said new exception handler calls said new finalization code, said new entry includes a reference to said new exception handler.
71. One or more processor readable storage devices according to claim 69, wherein said adding exit code and adding a new entry are performed automatically.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method of visualizing data comprising:
using one or more data sources that include data as part of providing a visualization interface;
providing a treemap representation as part of the visualization interface;
providing a first visual control interface that includes a first adjustable boundary control and a second adjustable boundary control used in part to control a first aspect of the treemap representation;
providing a second visual control interface that includes a first adjustable boundary control and a second adjustable boundary control to control a second aspect of the treemap representation; and
displaying aspects of the treemap representation based in part on visualization settings associated with the first visual control interface and the second visual control interface.
2. The method of claim 1, further comprising controlling the aspects of the treemap representation based in part on positioning the first adjustable boundary control of the first visual control interface from a first position to a second position to define a lower range boundary of a color spectrum for treemap element representations.
3. The method of claim 2, further comprising controlling the aspects of the treemap representation based in part on positioning the second adjustable boundary control of the first visual control interface from a first position to a second position to define an upper range boundary of the color spectrum for the treemap element representations.
4. The method of claim 1, further comprising controlling the aspects of the treemap representation based in part on positioning the first adjustable boundary control of the second visual control interface from a first position to a second position to define a lower range boundary of a size spectrum for treemap elements.
5. The method of claim 4, further comprising controlling the aspects of the treemap representation based in part on positioning the second adjustable boundary control of the second visual control interface from a first position to a second position to thereby define an upper range boundary of the size spectrum for the treemap elements.
6. The method of claim 1, further comprising providing the first visual control interface to include histogram based visual range filtering features that include measures of a color spectrum and a histogram representation including representative bars and value indicators to indicate a number of associated treemap elements associated with each representative bar.
7. The method of claim 6, further comprising updating a color gradient for the representative bars of the histogram as part of adjusting a color value range of defined treemap values using the first visual control interface.
8. The method of claim 1, further comprising providing the second visual control interface to include histogram based visual range filtering features that include measures of a size spectrum and a histogram representation including representative bars and value indicators to indicate a number of associated treemap elements associated with each representative bar.
9. The method of claim 8, further comprising updating sizes of the representative bars of the histogram as part of adjusting a size range of defined treemap values using the second visual control interface.
10. The method of claim 1, further comprising using the treemap representation to examine aspects of business data including providing cross-hatching representations to delineate portions of histogram bars filtered out by a different visual control interface.
11. The method of claim 1, further comprising displaying the treemap representation based in part on changes to a visualization range defined in part by settings of a color range filter including transitioning one or more treemap elements from a first color to a second color while displaying the treemap representation.
12. The method of claim 1, further comprising displaying the treemap representation based in part on changes to a visualization range defined in part by settings of the size range filter including transitioning one or more sizes of one or more treemap elements while displaying the treemap representation.
13. The method of claim 1, further comprising implementing the first visual control interface as a first visual filter and the second control interface as a second visual control filter and displaying the treemap representation based in part on changes to visualization ranges defined in part by settings of the first visual filter and the second visual filter including transitioning one or more treemap elements using color and size representations.
14. The method of claim 1, further comprising displaying the treemap representation and highlighting outlier-values as part of identifying a proportional impact of a first measure controlled by the first visual control interface and a second measure controlled by the second visual control interface including dynamically animating visualization elements to be hidden or shown.
15. A system comprising:
processing and memory resources used in part to render a treemap representation of data including dynamically rendering treemap elements;
a number of data sources including enterprise data and other information to populate a treemap data structure corresponding to the treemap representation;
a visualization component to provide the treemap representation including using first visual filter settings to define a first visualization aspect of the treemap representation based in part on a first measure of the data and second visual filter settings to define a second visualization aspect of the treemap representation based in part on a second measure of the data; and
a display component to display the treemap representation based in part on the first and second visual filter settings.
16. The system of claim 15, further comprising a histogram-based color control interface to dynamically control renderings of treemap field regions using a range of colors and a linear color gradient.
17. The system of claim 15, further comprising a histogram-based size control interface to dynamically control renderings of treemap field regions using a range of sizes and corresponding value ranges.
18. A computer implemented visualization interface comprising:
a treemap interface that includes a plurality of treemap fields having size features and color features;
a first adjustable visual filter including a range of size settings to control the size features of one or more treemap fields according to a first measure of data, wherein each size represents a range of values associated with a first visual range to control presentation of the one or more treemap fields;
a second adjustable visual filter including a range of color settings to control the color features of one or more treemap fields according to a second measure of data, wherein each color represents a range of values associated with a second visual range to control presentation of the one or more treemap fields; and
a detail pane to provide entity details for a select treemap field.
19. The visualization interface of claim 18, further comprising selection controls to select a first type of measure and a second type of measure as part of providing a visualization of data, wherein each field of the treemap interface includes one of a color and size as controlled by the first and second adjustable visual filters.
20. The visualization interface of claim 18, wherein the first and second adjustable visual filters are disposed adjacent to the treemap interface and used to adjust a selection of data for color and a selection of data for size adjustments including displaying a color legend with a color measure selector that includes a full color range for data values that occur in a visualized data set.