Mutable Key Persistent Objects for Dynamic User Identity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Enterprise JavaBeans and similar persistent objects have immutable primary keys, which restrict their ability to adapt to changing user identification information across multiple media servers, such as email and audio-conferencing servers, as user log-in status changes over time.
Innovation Solution
Generating object classes with persistent fields and methods that allow for the creation of mutable keys, enabling the use of multiple identifying fields like email addresses and phone numbers, and implementing finder methods to manage these keys dynamically.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If primary keys are made immutable as per EJB specification, then data integrity and consistency are improved, but adaptability to changing user identification information deteriorates
Solution Approach 1:
The primary key is segmented into multiple fields (email address field and phone number field) rather than using a single immutable key. This allows the system to maintain key integrity through the combination of fields while adapting to changes in individual fields, resolving the contradiction between data integrity and adaptability.
Solution Approach 2:
The patent introduces dynamic key management by allowing the primary key to transition from an immutable specification to a mutable structure. The finder methods dynamically search for objects based on current key values, enabling the system to adapt to changing user identification information while maintaining referential integrity.
2Measurement precision
If comprehensive log-in information is required initially, then object identification accuracy is improved, but ease of operation deteriorates
Solution Approach 1:
The system accepts partial log-in information initially (either email or phone number) rather than requiring complete information upfront. The finder methods can search using available partial information and retrieve objects accurately, eliminating the need for comprehensive initial data entry while maintaining identification accuracy.
Solution Approach 2:
The finder methods act as intermediaries that bridge the gap between partial user-provided information and complete object identification. These methods perform the search and retrieval operations, allowing users to operate with minimal information while the system ensures accurate object identification through its search logic.
3Adaptability or versatility
If multiple identifying fields are used, then adaptability to different media servers is improved, but device complexity increases
Solution Approach 1:
The primary key structure is designed with multi-functionality to serve different media servers (email server, audio-conferencing server, etc.). The combination of email address field and phone number field creates a universal key that can identify users across multiple servers and contexts, providing adaptability without requiring separate key systems for each server.
Solution Approach 2:
The system manages complexity by allowing parameter changes in the key fields while maintaining a consistent key structure. The finder methods handle the complexity of searching across multiple fields, allowing the system to adapt to different identification parameters (email, phone number) without exposing this complexity to users or requiring manual management of multiple key systems.
Data Source
AI summary
An object persistence mechanism is disclosed that enables the generation of software objects that have persistent data and a mutable key. A mutable key capability is advantageous in a variety of applications, such as monitoring a set of users and their login status on a plurality of media servers (e.g., an email server, an instant messaging server, a voice mail server, a video server, an audio-conferencing server, etc.). Implementations based on the Enterprise JavaBean specification are disclosed for three illustrative embodiments of the present invention. The illustrative embodiments of the present invention can also be implemented in accordance with object persistence mechanisms other than Enterprise JavaBeans.


