class dev.langchain4j.model.nomic.NomicClient extends java.lang.Object
{
private static final com.google.gson.Gson GSON;
private final dev.langchain4j.model.nomic.NomicApi nomicApi;
private final java.lang.String authorizationHeader;
void <init>(java.lang.String, java.lang.String, java.time.Duration, java.lang.Boolean, java.lang.Boolean)
{
com.google.gson.Gson v;
java.time.Duration v;
dev.langchain4j.model.nomic.NomicClient v;
retrofit.converter.gson.GsonConverterFactory v;
java.lang.Boolean v, v;
java.lang.String v, v, v, v;
boolean v, v;
retrofit.Retrofit$Builder v, v, v, v;
dev.langchain4j.model.nomic.ResponseLoggingInterceptor v;
retrofit.Retrofit v;
okhttp.OkHttpClient v;
dev.langchain4j.model.nomic.RequestLoggingInterceptor v;
java.lang.Object v;
okhttp.OkHttpClient$Builder v, v, v, v, v;
v := @this: dev.langchain4j.model.nomic.NomicClient;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.time.Duration;
v := @parameter: java.lang.Boolean;
v := @parameter: java.lang.Boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new okhttp.OkHttpClient$Builder;
specialinvoke v.<okhttp.OkHttpClient$Builder: void <init>()>();
v = virtualinvoke v.<okhttp.OkHttpClient$Builder: okhttp.OkHttpClient$Builder callTimeout(java.time.Duration)>(v);
v = virtualinvoke v.<okhttp.OkHttpClient$Builder: okhttp.OkHttpClient$Builder connectTimeout(java.time.Duration)>(v);
v = virtualinvoke v.<okhttp.OkHttpClient$Builder: okhttp.OkHttpClient$Builder readTimeout(java.time.Duration)>(v);
v = virtualinvoke v.<okhttp.OkHttpClient$Builder: okhttp.OkHttpClient$Builder writeTimeout(java.time.Duration)>(v);
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
v = new dev.langchain4j.model.nomic.RequestLoggingInterceptor;
specialinvoke v.<dev.langchain4j.model.nomic.RequestLoggingInterceptor: void <init>()>();
virtualinvoke v.<okhttp.OkHttpClient$Builder: okhttp.OkHttpClient$Builder addInterceptor(okhttp.Interceptor)>(v);
label:
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
v = new dev.langchain4j.model.nomic.ResponseLoggingInterceptor;
specialinvoke v.<dev.langchain4j.model.nomic.ResponseLoggingInterceptor: void <init>()>();
virtualinvoke v.<okhttp.OkHttpClient$Builder: okhttp.OkHttpClient$Builder addInterceptor(okhttp.Interceptor)>(v);
label:
v = new retrofit.Retrofit$Builder;
specialinvoke v.<retrofit.Retrofit$Builder: void <init>()>();
v = virtualinvoke v.<retrofit.Retrofit$Builder: retrofit.Retrofit$Builder baseUrl(java.lang.String)>(v);
v = virtualinvoke v.<okhttp.OkHttpClient$Builder: okhttp.OkHttpClient build()>();
v = virtualinvoke v.<retrofit.Retrofit$Builder: retrofit.Retrofit$Builder client(okhttp.OkHttpClient)>(v);
v = <dev.langchain4j.model.nomic.NomicClient: com.google.gson.Gson GSON>;
v = staticinvoke <retrofit.converter.gson.GsonConverterFactory: retrofit.converter.gson.GsonConverterFactory create(com.google.gson.Gson)>(v);
v = virtualinvoke v.<retrofit.Retrofit$Builder: retrofit.Retrofit$Builder addConverterFactory(retrofit.Converter$Factory)>(v);
v = virtualinvoke v.<retrofit.Retrofit$Builder: retrofit.Retrofit build()>();
v = virtualinvoke v.<retrofit.Retrofit: java.lang.Object create(java.lang.Class)>(class "Ldev/langchain4j/model/nomic/NomicApi;");
v.<dev.langchain4j.model.nomic.NomicClient: dev.langchain4j.model.nomic.NomicApi nomicApi> = v;
v = staticinvoke <dev.langchain4j.internal.ValidationUtils: java.lang.String ensureNotBlank(java.lang.String,java.lang.String)>(v, "apiKey");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Bearer \u0001");
v.<dev.langchain4j.model.nomic.NomicClient: java.lang.String authorizationHeader> = v;
return;
}
public dev.langchain4j.model.nomic.EmbeddingResponse embed(dev.langchain4j.model.nomic.EmbeddingRequest)
{
dev.langchain4j.model.nomic.EmbeddingRequest v;
java.io.IOException v;
java.lang.RuntimeException v, v;
retrofit.Response v;
dev.langchain4j.model.nomic.NomicApi v;
dev.langchain4j.model.nomic.NomicClient v;
java.lang.Object v;
java.lang.String v;
retrofit.Call v;
boolean v;
v := @this: dev.langchain4j.model.nomic.NomicClient;
v := @parameter: dev.langchain4j.model.nomic.EmbeddingRequest;
label:
v = v.<dev.langchain4j.model.nomic.NomicClient: dev.langchain4j.model.nomic.NomicApi nomicApi>;
v = v.<dev.langchain4j.model.nomic.NomicClient: java.lang.String authorizationHeader>;
v = interfaceinvoke v.<dev.langchain4j.model.nomic.NomicApi: retrofit.Call embed(dev.langchain4j.model.nomic.EmbeddingRequest,java.lang.String)>(v, v);
v = interfaceinvoke v.<retrofit.Call: retrofit.Response execute()>();
v = virtualinvoke v.<retrofit.Response: boolean isSuccessful()>();
if v == 0 goto label;
v = virtualinvoke v.<retrofit.Response: java.lang.Object body()>();
label:
return v;
label:
v = staticinvoke <dev.langchain4j.model.nomic.NomicClient: java.lang.RuntimeException toException(retrofit.Response)>(v);
throw v;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.Throwable)>(v);
throw v;
catch java.io.IOException from label to label with label;
}
private static java.lang.RuntimeException toException(retrofit.Response) throws java.io.IOException
{
java.lang.Object[] v;
java.lang.RuntimeException v;
retrofit.Response v;
java.lang.Integer v;
int v;
java.lang.String v, v;
okhttp.ResponseBody v;
v := @parameter: retrofit.Response;
v = virtualinvoke v.<retrofit.Response: int code()>();
v = virtualinvoke v.<retrofit.Response: okhttp.ResponseBody errorBody()>();
v = virtualinvoke v.<okhttp.ResponseBody: java.lang.String string()>();
v = newarray (java.lang.Object)[2];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v[1] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("status code: %s; body: %s", v);
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>(v);
return v;
}
public static dev.langchain4j.model.nomic.NomicClient$NomicClientBuilder builder()
{
dev.langchain4j.model.nomic.NomicClient$NomicClientBuilder v;
v = new dev.langchain4j.model.nomic.NomicClient$NomicClientBuilder;
specialinvoke v.<dev.langchain4j.model.nomic.NomicClient$NomicClientBuilder: void <init>()>();
return v;
}
static void <clinit>()
{
com.google.gson.FieldNamingPolicy v;
com.google.gson.Gson v;
com.google.gson.GsonBuilder v, v, v;
v = new com.google.gson.GsonBuilder;
specialinvoke v.<com.google.gson.GsonBuilder: void <init>()>();
v = <com.google.gson.FieldNamingPolicy: com.google.gson.FieldNamingPolicy LOWER_CASE_WITH_UNDERSCORES>;
v = virtualinvoke v.<com.google.gson.GsonBuilder: com.google.gson.GsonBuilder setFieldNamingPolicy(com.google.gson.FieldNamingPolicy)>(v);
v = virtualinvoke v.<com.google.gson.GsonBuilder: com.google.gson.GsonBuilder setPrettyPrinting()>();
v = virtualinvoke v.<com.google.gson.GsonBuilder: com.google.gson.Gson create()>();
<dev.langchain4j.model.nomic.NomicClient: com.google.gson.Gson GSON> = v;
return;
}
}