Class ProtifyHttpClient
- java.lang.Object
-
- ai.protify.core.internal.util.http.ProtifyHttpClient
-
public class ProtifyHttpClient extends java.lang.ObjectA thread-safe, singleton HTTP client for Protify AI, featuring built-in LRU caching and thundering-herd protection without external dependencies.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static java.lang.RuntimeExceptioncreateApiException(int statusCode, java.lang.String responseBody)static ProtifyHttpClientgetInstance()static voidinitialize()static voidinitialize(long ttlMillis, int maxCacheSize)Initializes the singleton with specific configurations.ProtifyHttpResponsepost(AIProviderRequest request, java.lang.String uri)java.util.concurrent.CompletableFuture<ProtifyHttpResponse>postAsync(AIProviderRequest request, java.lang.String uri)java.util.concurrent.CompletableFuture<java.lang.Void>postStream(AIProviderRequest request, java.lang.String uri, java.util.function.Consumer<java.lang.String> onEvent, java.lang.Runnable onComplete)
-
-
-
Method Detail
-
initialize
public static void initialize()
-
getInstance
public static ProtifyHttpClient getInstance()
-
initialize
public static void initialize(long ttlMillis, int maxCacheSize)Initializes the singleton with specific configurations. Call this during application startup before the first getInstance().
-
post
public ProtifyHttpResponse post(AIProviderRequest request, java.lang.String uri)
-
postAsync
public java.util.concurrent.CompletableFuture<ProtifyHttpResponse> postAsync(AIProviderRequest request, java.lang.String uri)
-
postStream
public java.util.concurrent.CompletableFuture<java.lang.Void> postStream(AIProviderRequest request, java.lang.String uri, java.util.function.Consumer<java.lang.String> onEvent, java.lang.Runnable onComplete)
-
createApiException
public static java.lang.RuntimeException createApiException(int statusCode, java.lang.String responseBody)
-
-