Client-Side Persistence via Server Metadata Relay

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing client-server architectures require developers to manually include persistence metadata in client-side applications, making the development process tedious and limiting the robustness of offline functionality.

Innovation Solution

A client application can utilize server-side persistence metadata, obtained through a metadata relay module, to store and manage data locally, even when a data provider is not available, by mapping object data into database structures, and updating the database structure as needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If developers manually include persistence metadata in client-side applications, then the client application can maintain local database functionality, but the development process becomes tedious and complex

Engineering Contradiction:
Improveoffline data storage capabilityVSAvoiddevelopment process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a server-side metadata relay module that acts as an intermediary between the server and client applications. This relay module automatically provides persistence metadata to client applications, eliminating the need for developers to manually include metadata in client code. The relay module receives metadata from the server, processes it, and delivers it to clients, thereby resolving the technical contradiction by maintaining offline storage capability while simplifying the development process.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If persistence metadata is hardcoded in client-side applications, then offline functionality is achieved, but the application lacks adaptability to server changes

Engineering Contradiction:
Improveoffline data storage capabilityVSAvoidadaptability to server-side changes
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent implements a dynamic metadata delivery mechanism where persistence metadata is not statically embedded in client applications but is dynamically provided by the server through the metadata relay module. This allows the client application to adapt to server-side changes automatically, as the metadata can be updated and redistributed without requiring client application modifications. The system transitions from a static, hardcoded metadata approach to a dynamic, server-driven metadata distribution model.

Inventive Principle:
Principle #15Dynamics

3Manufacturing precision

If developers manually configure persistence metadata for each client application, then precise data mapping is achieved, but the time and effort required increases significantly

Engineering Contradiction:
Improvedata mapping precisionVSAvoiddevelopment speed
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent utilizes a copying mechanism where persistence metadata is generated on the server side and then copied and distributed to multiple client applications through the metadata relay module. Instead of manually configuring metadata for each client application, the server creates a standardized metadata template that can be replicated and delivered to numerous clients simultaneously. This maintains data mapping precision while dramatically increasing development productivity by eliminating repetitive manual configuration tasks.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8655910B1Methods and systems for coupling client-side and server-side persistence frameworks
Publication Date: 2014.02.18 ADOBE INC
  • US8655910B1 patent drawing
  • US8655910B1 patent drawing
  • US8655910B1 patent drawing

AI summary

A client application can be configured to use a client-side persistence framework to maintain a local database for use in storing data even when a data provider is not available. In accordance with the present subject matter, the client application can be configured to obtain and rely on server-side persistence metadata rather than requiring the persistence metadata to be specifically included in the code for the client-side application. In some instances, this can simplify the development process and/or allow for more robust client-side applications.