Dynamic Service Endpoint Configuration for Native Clients
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems face challenges in efficiently updating native client applications to accommodate changes in server-side software, leading to costly and time-consuming redistribution of client-side software.
Innovation Solution
A method that involves a known-capabilities service on the server, which provides configuration information to native client devices, enabling them to access and leverage server capabilities at runtime, allowing for modifications to service definitions without redistributing the client application.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If client-side software is redistributed to account for server-side changes, then compatibility with server-side software is improved, but delivery cost and time consumption increase
Solution Approach 1:
The patent extracts service endpoint configuration information from the client application binary and places it on the server side. The client application retrieves this configuration dynamically at runtime, separating the configuration data from the client software distribution process. This allows server-side changes to be reflected without redistributing client applications.
Solution Approach 2:
The patent implements dynamic service endpoint configuration where the client application can retrieve and adapt to changing server configurations at runtime. The service endpoint mapping is no longer static in the client binary but becomes a dynamic resource fetched from the server, enabling real-time adaptation to server-side changes.
2Adaptability or versatility
If client-side software is redistributed to account for server-side changes, then service functionality is updated, but distribution cost increases
Solution Approach 1:
The patent extracts service endpoint configuration information from the client application binary and places it on the server side. The client application retrieves this configuration dynamically at runtime, separating the configuration data from the client software distribution process. This allows server-side changes to be reflected without redistributing client applications.
Solution Approach 2:
The patent introduces a service endpoint configuration service as an intermediary between the server and client applications. This intermediary service provides the configuration information that bridges the gap between server-side changes and client-side functionality, eliminating the need for costly client redistributions.
3Speed
If service endpoint configuration is hardcoded in client applications, then client performance is improved, but flexibility to accommodate server changes is reduced
Solution Approach 1:
The patent implements dynamic service endpoint configuration where the client application can retrieve and adapt to changing server configurations at runtime. The service endpoint mapping is no longer static in the client binary but becomes a dynamic resource fetched from the server, enabling real-time adaptation to server-side changes.
Solution Approach 2:
The patent performs preliminary configuration retrieval by having the client application fetch service endpoint mappings before executing business logic. This preliminary action ensures that the client has the necessary configuration information cached locally, maintaining performance while enabling flexibility through dynamic updates.
Data Source
AI summary
A system and method for facilitating efficient interaction between a client device and a server. An example method includes receiving at a server, a request for server configuration information sent to the server by a client device, and then employing a first web service in communication with the server to convey configuration information about a server to a client device in response to the request message received therefrom by the server. The configuration information includes information pertaining to known capabilities that may be offered by the server to the client device. Generally, embodiments described herein provide various features for facilitating configuring service endpoints in native client applications at runtime, thereby enabling implementation of changes to server-side components that a client application invokes or communicates with, without needing to change the client application.


