Dynamic Delegation Chain for Runtime Code Adaptation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current dynamic AOP environments lack the ability to dynamically adapt code units to runtime environments, leading to concerns about application integrity and inefficient resource management, as they either hardcode registration sequences or require special wrapper methods, and do not support runtime selection and manipulation of aspects.

Innovation Solution

A dynamic delegation chain of executor objects is used to adapt code units prior to execution, allowing each member to adapt, submit, and reject the code unit based on the current environment state, implementing aspects such as resource management, security, and logging policies, ensuring application integrity and adaptive resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If dynamic AOP environments are used to add aspects at runtime, then adaptability of code units to environment is improved, but application integrity is compromised due to inability to prevent execution without knowledge of current state

Engineering Contradiction:
Improveadaptability of code units to runtime environmentVSAvoidapplication integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies preliminary action by requiring code units to register with resource dispensing computations before execution. The registration sequence is injected before the original code unit entry point, ensuring that resource management policies are established in advance. This prevents execution without proper environmental knowledge while maintaining adaptability through runtime registration decisions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary mechanism in the form of a delegation chain of executor objects that mediates between code units and the runtime environment. Each executor in the chain can adapt, submit, or reject code units based on current environment state, acting as a buffer that maintains application integrity while enabling dynamic adaptation.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If registration sequences are hardcoded into code units, then resource management policies are enforced, but dependency between unrelated APIs is created

Engineering Contradiction:
Improveresource management policy enforcementVSAvoiddependency between unrelated APIs
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the resource management functionality into separate executor objects in a delegation chain. Each executor handles specific aspects of resource management independently, allowing policies to be enforced without creating monolithic dependencies between unrelated APIs. The segmentation enables modular composition of resource management behaviors.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates universal executor objects that can handle multiple types of resource management policies through a common registration interface. These executors serve multiple functions including resource allocation, policy enforcement, and adaptive decision-making, eliminating the need for separate hardcoded sequences for each policy type.

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

3Reliability

If special wrapper methods are required for code unit creation, then resource management policies are ensured, but ease of operation is reduced

Engineering Contradiction:
Improveresource management policy complianceVSAvoidcode unit creation simplicity
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent implements self-service by enabling code units to automatically register themselves with resource dispensing computations through the delegation chain. The registration sequence is injected automatically before the code unit entry point without requiring special wrapper methods or manual intervention, thus maintaining ease of operation while ensuring policy compliance.

Inventive Principle:
Principle #25Self-service

4Adaptability or versatility

If existing dynamic AOP environments are used, then aspects can be added dynamically, but structural mechanism for runtime decisions on aspect composition is lacking

Engineering Contradiction:
Improvedynamic aspect additionVSAvoidaspect composition management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces dynamics by creating a runtime-decomposable delegation chain where executor objects can dynamically add, remove, and compose aspects based on current environment state. The chain structure allows executors to inspect and modify the composition of aspects at runtime, providing a structural mechanism for dynamic aspect management that existing environments lack.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7849451B2Dynamic delegation chain for runtime adaptation of a code unit to an environment
Publication Date: 2010.12.07 ORACLE AMERICAN INC
  • US7849451B2 patent drawing
  • US7849451B2 patent drawing
  • US7849451B2 patent drawing

AI summary

A dynamic delegation chain of executor objects can, at runtime, adapt code units to be executed as isolated computations prior to their execution to comport with current state of an environment. A dynamic delegation chain performs the dynamic runtime adaptation of the code unit in accordance with isolated computations that host the executor objects of the delegation chain. Adapting a code unit prior to execution of the code unit allows adaptation of the code unit to a current state, as well as at least reducing concerns of program integrity.