NehanPathan opened a new pull request, #1182:
URL: https://github.com/apache/lucenenet/pull/1182

   @paulirwin @NightOwl888 
   ---
   **Fixes:**
   Fixes #1181
   
   **Summary of the changes:**
   Implemented `IAsyncReplicator` and async methods in `ReplicationClient` for 
non-blocking replication operations.
   
   ---
   
   ## Description
   
   This PR introduces an async Task-based API for the replication client, 
allowing operations such as checking for updates, obtaining files, and 
releasing sessions to be executed asynchronously.
   
   Key changes:
   
   * Added `IAsyncReplicator` interface.
   * Updated `HttpReplicator` to implement async versions of the operations 
(`CheckForUpdateAsync`, `ObtainFileAsync`, `ReleaseAsync`, `PublishAsync`).
   * Added async helper methods in `HttpReplicator` to wrap HTTP requests using 
`HttpClient`.
   * `ReplicationClient` now exposes async methods that call into 
`IAsyncReplicator`.
   
   This avoids synchronous HTTP calls that could deadlock or cause performance 
issues, while keeping `IReplicationHandler` synchronous, as Lucene.NET APIs 
currently do not have async equivalents.
   
   **Additional context:**
   This implementation has been tested and works successfully when using 
`UpdateNowAsync` in the GSoC project by referencing the Lucene.NET repository 
in the GSoC extensions project.
   
   ---
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@lucenenet.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to