Skip to content

Commit

Permalink
SDK regeneration
Browse files Browse the repository at this point in the history
  • Loading branch information
fern-api[bot] committed Mar 11, 2024
1 parent 5c18aa3 commit dc78ca3
Show file tree
Hide file tree
Showing 10 changed files with 400 additions and 105 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ publishing {
maven(MavenPublication) {
groupId = 'com.assemblyai'
artifactId = 'assemblyai-java'
version = '1.0.7'
version = '1.0.9'
from components.java
}
}
Expand Down
20 changes: 12 additions & 8 deletions src/main/java/com/assemblyai/api/AssemblyAIBuilder.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,17 @@
import com.assemblyai.api.core.Environment;

public final class AssemblyAIBuilder {
private final ClientOptions.Builder clientOptionsBuilder = ClientOptions.builder();
private final ClientOptions.Builder lemurClientOptionsBuilder = ClientOptions.builder();
private ClientOptions.Builder clientOptionsBuilder = ClientOptions.builder();

private String apiKey = null;

private Environment environment = Environment.DEFAULT;

/**
* Sets apiKey
*/
public AssemblyAIBuilder apiKey(String apiKey) {
this.clientOptionsBuilder.addHeader("Authorization", apiKey);
this.lemurClientOptionsBuilder.addHeader("Authorization", apiKey);
this.apiKey = apiKey;
return this;
}

Expand All @@ -29,10 +32,11 @@ public AssemblyAIBuilder url(String url) {
}

public AssemblyAI build() {
if (apiKey == null) {
throw new RuntimeException("Please provide apiKey");
}
this.clientOptionsBuilder.addHeader("Authorization", this.apiKey);
clientOptionsBuilder.environment(this.environment);
lemurClientOptionsBuilder
.environment(this.environment)
.disableTimeouts();
return new AssemblyAI(clientOptionsBuilder.build(), lemurClientOptionsBuilder.build());
return new AssemblyAI(clientOptionsBuilder.build());
}
}
57 changes: 25 additions & 32 deletions src/main/java/com/assemblyai/api/core/ClientOptions.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.function.Supplier;

import okhttp3.OkHttpClient;

public final class ClientOptions {
Expand All @@ -27,13 +26,16 @@ private ClientOptions(
this.environment = environment;
this.headers = new HashMap<>();
this.headers.putAll(headers);
this.headers.putAll(new HashMap<String, String>() {{
put("X-Fern-SDK-Name", "com.assemblyai.fern:api-sdk");
put("X-Fern-SDK-Version", "1.0.2");
put("X-Fern-Language", "JAVA");
}});
this.headers.putAll(Map.of(
"X-Fern-SDK-Name",
"com.assemblyai.fern:api-sdk",
"X-Fern-SDK-Version",
"1.0.9",
"X-Fern-Language",
"JAVA"));
this.headerSuppliers = headerSuppliers;
this.httpClient = httpClient;
;
}

public Environment environment() {
Expand All @@ -55,6 +57,19 @@ public OkHttpClient httpClient() {
return this.httpClient;
}

public OkHttpClient httpClientWithTimeout(RequestOptions requestOptions) {
if (requestOptions == null) {
return this.httpClient;
}
return this.httpClient
.newBuilder()
.callTimeout(requestOptions.getTimeout().get(), requestOptions.getTimeoutTimeUnit())
.connectTimeout(0, TimeUnit.SECONDS)
.writeTimeout(0, TimeUnit.SECONDS)
.readTimeout(0, TimeUnit.SECONDS)
.build();
}

public static Builder builder() {
return new Builder();
}
Expand All @@ -65,7 +80,6 @@ public static final class Builder {
private final Map<String, String> headers = new HashMap<>();

private final Map<String, Supplier<String>> headerSuppliers = new HashMap<>();
private boolean disableTimeouts = false;

public Builder environment(Environment environment) {
this.environment = environment;
Expand All @@ -82,32 +96,11 @@ public Builder addHeader(String key, Supplier<String> value) {
return this;
}

/**
* This is a temporary measure ot disable timeouts for LeMUR client.
* Don't use this method.
*
* @return ClientOptionsBuilder
* @deprecated
*/
public Builder disableTimeouts() {
this.disableTimeouts = true;
return this;
}

public ClientOptions build() {
OkHttpClient.Builder okhttpClientBuilder = new OkHttpClient.Builder()
.addInterceptor(new RetryInterceptor(3));
if (this.disableTimeouts) {
okhttpClientBuilder
.readTimeout(0, TimeUnit.SECONDS)
.callTimeout(0, TimeUnit.SECONDS);
}
return new ClientOptions(
environment,
headers,
headerSuppliers,
okhttpClientBuilder.build()
);
OkHttpClient okhttpClient = new OkHttpClient.Builder()
.addInterceptor(new RetryInterceptor(3))
.build();
return new ClientOptions(environment, headers, headerSuppliers, okhttpClient);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,8 @@ public UploadedFile upload(byte[] request, RequestOptions requestOptions) {
.build();
try {
OkHttpClient client = clientOptions.httpClient();
if (requestOptions.getTimeout().isPresent()) {
client = client.newBuilder()
.readTimeout(requestOptions.getTimeout().get(), requestOptions.getTimeoutTimeUnit())
.build();
if (requestOptions != null && requestOptions.getTimeout().isPresent()) {
client = clientOptions.httpClientWithTimeout(requestOptions);
}
Response response = client.newCall(okhttpRequest).execute();
if (response.isSuccessful()) {
Expand Down
30 changes: 10 additions & 20 deletions src/main/java/com/assemblyai/api/resources/lemur/LemurClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,8 @@ public LemurTaskResponse task(LemurTaskParams request, RequestOptions requestOpt
.build();
try {
OkHttpClient client = clientOptions.httpClient();
if (requestOptions.getTimeout().isPresent()) {
client = client.newBuilder()
.readTimeout(requestOptions.getTimeout().get(), requestOptions.getTimeoutTimeUnit())
.build();
if (requestOptions != null && requestOptions.getTimeout().isPresent()) {
client = clientOptions.httpClientWithTimeout(requestOptions);
}
Response response = client.newCall(okhttpRequest).execute();
if (response.isSuccessful()) {
Expand Down Expand Up @@ -116,10 +114,8 @@ public LemurSummaryResponse summary(LemurSummaryParams request, RequestOptions r
.build();
try {
OkHttpClient client = clientOptions.httpClient();
if (requestOptions.getTimeout().isPresent()) {
client = client.newBuilder()
.readTimeout(requestOptions.getTimeout().get(), requestOptions.getTimeoutTimeUnit())
.build();
if (requestOptions != null && requestOptions.getTimeout().isPresent()) {
client = clientOptions.httpClientWithTimeout(requestOptions);
}
Response response = client.newCall(okhttpRequest).execute();
if (response.isSuccessful()) {
Expand Down Expand Up @@ -164,10 +160,8 @@ public LemurQuestionAnswerResponse questionAnswer(
.build();
try {
OkHttpClient client = clientOptions.httpClient();
if (requestOptions.getTimeout().isPresent()) {
client = client.newBuilder()
.readTimeout(requestOptions.getTimeout().get(), requestOptions.getTimeoutTimeUnit())
.build();
if (requestOptions != null && requestOptions.getTimeout().isPresent()) {
client = clientOptions.httpClientWithTimeout(requestOptions);
}
Response response = client.newCall(okhttpRequest).execute();
if (response.isSuccessful()) {
Expand Down Expand Up @@ -218,10 +212,8 @@ public LemurActionItemsResponse actionItems(LemurActionItemsParams request, Requ
.build();
try {
OkHttpClient client = clientOptions.httpClient();
if (requestOptions.getTimeout().isPresent()) {
client = client.newBuilder()
.readTimeout(requestOptions.getTimeout().get(), requestOptions.getTimeoutTimeUnit())
.build();
if (requestOptions != null && requestOptions.getTimeout().isPresent()) {
client = clientOptions.httpClientWithTimeout(requestOptions);
}
Response response = client.newCall(okhttpRequest).execute();
if (response.isSuccessful()) {
Expand Down Expand Up @@ -261,10 +253,8 @@ public PurgeLemurRequestDataResponse purgeRequestData(String requestId, RequestO
.build();
try {
OkHttpClient client = clientOptions.httpClient();
if (requestOptions.getTimeout().isPresent()) {
client = client.newBuilder()
.readTimeout(requestOptions.getTimeout().get(), requestOptions.getTimeoutTimeUnit())
.build();
if (requestOptions != null && requestOptions.getTimeout().isPresent()) {
client = clientOptions.httpClientWithTimeout(requestOptions);
}
Response response = client.newCall(okhttpRequest).execute();
if (response.isSuccessful()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,10 +56,8 @@ public RealtimeTemporaryTokenResponse createTemporaryToken(
.build();
try {
OkHttpClient client = clientOptions.httpClient();
if (requestOptions.getTimeout().isPresent()) {
client = client.newBuilder()
.readTimeout(requestOptions.getTimeout().get(), requestOptions.getTimeoutTimeUnit())
.build();
if (requestOptions != null && requestOptions.getTimeout().isPresent()) {
client = clientOptions.httpClientWithTimeout(requestOptions);
}
Response response = client.newCall(okhttpRequest).execute();
if (response.isSuccessful()) {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
/**
* This file was auto-generated by Fern from our API Definition.
*/
package com.assemblyai.api.resources.realtime.types;

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;

public final class Realtime {
public static final Realtime PCM_S16LE = new Realtime(Value.PCM_S16LE, "pcm_s16le");

public static final Realtime PCM_MULAW = new Realtime(Value.PCM_MULAW, "pcm_mulaw");

private final Value value;

private final String string;

Realtime(Value value, String string) {
this.value = value;
this.string = string;
}

public Value getEnumValue() {
return value;
}

@java.lang.Override
@JsonValue
public String toString() {
return this.string;
}

@java.lang.Override
public boolean equals(Object other) {
return (this == other) || (other instanceof Realtime && this.string.equals(((Realtime) other).string));
}

@java.lang.Override
public int hashCode() {
return this.string.hashCode();
}

public <T> T visit(Visitor<T> visitor) {
switch (value) {
case PCM_S16LE:
return visitor.visitPcmS16le();
case PCM_MULAW:
return visitor.visitPcmMulaw();
case UNKNOWN:
default:
return visitor.visitUnknown(string);
}
}

@JsonCreator(mode = JsonCreator.Mode.DELEGATING)
public static Realtime valueOf(String value) {
switch (value) {
case "pcm_s16le":
return PCM_S16LE;
case "pcm_mulaw":
return PCM_MULAW;
default:
return new Realtime(Value.UNKNOWN, value);
}
}

public enum Value {
PCM_S16LE,

PCM_MULAW,

UNKNOWN
}

public interface Visitor<T> {
T visitPcmS16le();

T visitPcmMulaw();

T visitUnknown(String unknownType);
}
}
Loading

0 comments on commit dc78ca3

Please sign in to comment.