Mock Exception Handling in Host Add-in Environments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software architectures that support plug-ins often lack integrated exception handling mechanisms, leading to inconsistencies and inflexibility in managing exceptions between host and plug-in interactions, particularly in scenarios involving network connection failures.

Innovation Solution

The introduction of a mock exception mechanism, where a mock exception is raised in a plug-in, serialized, and transported to the host for further handling, allowing for sanitization and mapping to a real exception, enabling consistent and version-resilient exception handling across the host and plug-in boundaries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If exception handling code is centralized in the host, then exception handling consistency is improved, but plug-in implementation flexibility deteriorates

Engineering Contradiction:
Improveexception handling consistencyVSAvoidplug-in implementation flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces mock exceptions as an intermediary mechanism between plug-ins and the host. Plug-ins raise mock exceptions that are serialized and transported to the host, where they are converted to real exceptions. This intermediary approach allows plug-ins to have flexible implementation while maintaining consistent exception handling in the host, resolving the contradiction between centralization and flexibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The exception handling process is segmented into distinct phases: mock exception creation in the plug-in, serialization and transport, and conversion to real exceptions in the host. This segmentation allows each component to operate independently with its own flexibility while maintaining overall system consistency through the structured exception handling pipeline.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If plug-in implementation details are hidden inside the plug-in, then plug-in vendor flexibility is improved, but exception handling integration with host deteriorates

Engineering Contradiction:
Improveplug-in vendor flexibilityVSAvoidexception handling integration
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

Mock exceptions serve as an intermediary that enables plug-ins to maintain implementation flexibility while ensuring proper integration with host exception handling. The mock exception mechanism allows plug-ins to handle exceptions internally without exposing implementation details, yet still integrates seamlessly with the host's exception handling system through serialization and conversion.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If mock exceptions are serialized and transported to host, then exception handling consistency is improved, but system complexity increases

Engineering Contradiction:
Improveexception handling consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The mock exception class is designed as a universal mechanism that handles multiple functions: representing exceptions from any plug-in, carrying serialized exception data, and enabling conversion to various host exception types. This multi-functionality reduces the need for separate handling mechanisms for different exception scenarios, thereby managing system complexity while maintaining consistency.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Ease of repair

If exception handling is separated from main logic, then maintenance ease is improved, but exception handling integration between host and plug-in deteriorates

Engineering Contradiction:
Improvemaintenance easeVSAvoidexception handling integration
Core Design Contradiction:
Ease of repairVSReliability

Solution Approach 1:

The mock exception mechanism acts as an intermediary that maintains separate exception handling logic in plug-ins while ensuring proper integration with the host. By serializing mock exceptions and converting them to host exceptions, the system achieves both separation of concerns for maintenance ease and proper integration for reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7844975B2Mock exceptions in a host add-in environment
Publication Date: 2010.11.30 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7844975B2 patent drawing
  • US7844975B2 patent drawing
  • US7844975B2 patent drawing

AI summary

Mock exceptions, including mock exception types, are defined by a host to be raised in a plug-in. The mock exceptions might be sanitized. They might be transported from the plug-in to the host. Mock exceptions might also be mapped to real exceptions, which are raised in the host and handled by the host.