Transparent Service Control via Pre-Post Event Listeners
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing service-oriented software platforms lack complete control over infrastructure service methods, requiring significant coding for higher level application components to meet specific needs, and existing solutions do not allow for execution flow changes, argument transformations, or return value modifications.
Innovation Solution
A system that enables pre and post-events for infrastructure service methods, allowing higher level application components to associate listener objects for executing code before or after service method execution, providing complete control over infrastructure services with minimal code changes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If higher level application components re-implement infrastructure services to meet specific needs, then the specific requirements are satisfied, but significant coding is required and code reuse is limited
Solution Approach 1:
The patent introduces an intermediary layer between application components and infrastructure services that enables customization without requiring components to re-implement services. This intermediary provides hooks and filters that can be configured to meet specific requirements while maintaining the original infrastructure service implementation, thus reducing coding effort while preserving adaptability.
Solution Approach 2:
The patent segments the service invocation process into distinct phases (pre-invocation hooks, invocation, post-invocation hooks) where customization can be applied at specific points. This segmentation allows application components to add their specific logic at defined interfaces rather than rewriting entire services, reducing complexity while maintaining adaptability.
2Adaptability or versatility
If higher level application components include service-related business logic within themselves, then specific needs are met, but overall system maintenance becomes difficult
Solution Approach 1:
By introducing an intermediary layer with standardized hooks, the patent separates business logic from infrastructure services. Application components can configure their specific needs through the intermediary without embedding service logic within themselves, making the system easier to maintain while still meeting specific requirements.
Solution Approach 2:
The intermediary layer provides universal hooks that can be configured to meet various specific service needs. This multi-functional approach allows different application components to use the same infrastructure services with different configurations, simplifying maintenance while preserving adaptability to specific needs.
3Ease of operation
If existing event broker systems are used to dispatch method calls, then some control over service methods is provided, but complete control over execution flow and arguments is not achieved
Solution Approach 1:
The patent enables preliminary action by providing pre-invocation hooks that execute before the actual service method call. These hooks allow application components to modify arguments, cancel invocations, or route to alternative services, achieving complete control over execution flow without requiring complex coding in the service methods themselves.
Solution Approach 2:
The patent introduces dynamic control mechanisms where the execution flow can be changed at runtime through configurable hooks. The system can dynamically redirect service calls, modify arguments on the fly, or cancel invocations based on conditions, providing complete control without requiring static complex coding in the service layer.
Data Source
AI summary
A method and system for transparently controlling infrastructure service methods in a service oriented architecture by enabling a higher level application component that is a consumer of infrastructure services to be alerted both before and after an infrastructure service is executed, by either that component or from an external source, such as another higher level application component. The pre-execution event enables a higher level application component to run additional business logic, change arguments passed to the infrastructure service before the call to the infrastructure service, or completely cancel execution of the infrastructure service method and route execution flow to other business logic. Since higher level application components can also be alerted after infrastructure service execution, they can also introduce additional business logic at that point, and/or change the return value passed from the service call. The system advantageously provides transparent control over behavior of infrastructure services without requiring large amounts of code to be added to providers and consumers of such services.


