Skip to content

Commit ed938f1

Browse files
authored
Merge pull request #40 from ConvertAPI/bearer-auth
Use bearer auth
2 parents 6500a84 + dafd887 commit ed938f1

File tree

4 files changed

+42
-116
lines changed

4 files changed

+42
-116
lines changed

src/main/java/com/convertapi/client/Config.java

Lines changed: 13 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -6,83 +6,44 @@
66

77
public class Config {
88

9-
private static String defaultSecret;
10-
private static String defaultToken;
11-
private static String defaultApiKey;
9+
private static String defaultApiCredentials;
1210
private static int defaultTimeout = 0; // Infinite read waiting
1311
private static Function<OkHttpClient.Builder, OkHttpClient.Builder> defaultHttpClientBuilder = b -> b;
1412
private static final String SCHEME = "https";
1513
private static final String HOST = "v2.convertapi.com";
1614
private final String scheme;
1715
private final String host;
18-
private final String secret;
19-
private final String token;
20-
private final String apiKey;
16+
private final String apiCredentials;
2117
private final int timeout;
2218
private final Function<OkHttpClient.Builder, OkHttpClient.Builder> httpClientBuilder;
2319

2420
@SuppressWarnings("unused")
25-
public Config(String secret, String scheme, String host, int timeout, Function<OkHttpClient.Builder, OkHttpClient.Builder> httpClientBuilder) {
21+
public Config(String apiCredentials, String scheme, String host, int timeout, Function<OkHttpClient.Builder, OkHttpClient.Builder> httpClientBuilder) {
2622
this.scheme = scheme;
2723
this.host = host;
28-
this.secret = secret;
29-
this.token = null;
30-
this.apiKey = null;
31-
this.timeout = timeout;
32-
this.httpClientBuilder = httpClientBuilder;
33-
}
34-
35-
@SuppressWarnings("unused")
36-
public Config(String token, String apiKey, String scheme, String host, int timeout, Function<OkHttpClient.Builder, OkHttpClient.Builder> httpClientBuilder) {
37-
this.scheme = scheme;
38-
this.host = host;
39-
this.secret = null;
40-
this.token = token;
41-
this.apiKey = apiKey;
24+
this.apiCredentials = apiCredentials;
4225
this.timeout = timeout;
4326
this.httpClientBuilder = httpClientBuilder;
4427
}
4528

4629
@SuppressWarnings("WeakerAccess")
4730
public static Config defaults() {
48-
if (Config.defaultSecret != null)
49-
return new Config(Config.defaultSecret, SCHEME, HOST, defaultTimeout, Config.defaultHttpClientBuilder);
50-
return new Config(Config.defaultToken, Config.defaultApiKey, SCHEME, HOST, defaultTimeout, Config.defaultHttpClientBuilder);
51-
}
52-
53-
@SuppressWarnings("WeakerAccess")
54-
public static Config defaults(String secret) {
55-
return new Config(secret, SCHEME, HOST, defaultTimeout, Config.defaultHttpClientBuilder);
31+
return new Config(Config.defaultApiCredentials, SCHEME, HOST, defaultTimeout, Config.defaultHttpClientBuilder);
5632
}
5733

5834
@SuppressWarnings("WeakerAccess")
59-
public static Config defaults(String token, String apiKey) {
60-
return new Config(token, apiKey, SCHEME, HOST, defaultTimeout, Config.defaultHttpClientBuilder);
35+
public static Config defaults(String apiCredentials) {
36+
return new Config(apiCredentials, SCHEME, HOST, defaultTimeout, Config.defaultHttpClientBuilder);
6137
}
6238

6339
@SuppressWarnings("WeakerAccess")
64-
public static Config defaults(String secret, Function<OkHttpClient.Builder, OkHttpClient.Builder> httpClientBuilder) {
65-
return new Config(secret, SCHEME, HOST, defaultTimeout, httpClientBuilder);
66-
}
67-
68-
@SuppressWarnings("WeakerAccess")
69-
public static Config defaults(String token, String apiKey, Function<OkHttpClient.Builder, OkHttpClient.Builder> httpClientBuilder) {
70-
return new Config(token, apiKey, SCHEME, HOST, defaultTimeout, httpClientBuilder);
71-
}
72-
73-
@SuppressWarnings("unused")
74-
public static void setDefaultSecret(String defaultSecret) {
75-
Config.defaultSecret = defaultSecret;
40+
public static Config defaults(String apiCredentials, Function<OkHttpClient.Builder, OkHttpClient.Builder> httpClientBuilder) {
41+
return new Config(apiCredentials, SCHEME, HOST, defaultTimeout, httpClientBuilder);
7642
}
7743

7844
@SuppressWarnings("unused")
79-
public static void setDefaultToken(String defaultToken) {
80-
Config.defaultToken = defaultToken;
81-
}
82-
83-
@SuppressWarnings("unused")
84-
public static void setDefaultApiKey(String defaultApiKey) {
85-
Config.defaultApiKey = defaultApiKey;
45+
public static void setDefaultApiCredentials(String defaultApiCredentials) {
46+
Config.defaultApiCredentials = defaultApiCredentials;
8647
}
8748

8849
@SuppressWarnings("unused")
@@ -107,16 +68,8 @@ String getHost() {
10768
return host;
10869
}
10970

110-
String getSecret() {
111-
return secret;
112-
}
113-
114-
String getToken() {
115-
return token;
116-
}
117-
118-
String getApiKey() {
119-
return apiKey;
71+
String getApiCredentials() {
72+
return apiCredentials;
12073
}
12174

12275
Function<OkHttpClient.Builder, OkHttpClient.Builder> getHttpClientBuilder() {

src/main/java/com/convertapi/client/ConvertApi.java

Lines changed: 14 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ public static CompletableFuture<ConversionResult> convert(String fromFormat, Str
6868
}
6969
}
7070

71-
Request request = Http.getRequestBuilder()
71+
Request request = Http.getRequestBuilder(config)
7272
.url(url)
7373
.addHeader("Accept", "application/json")
7474
.addHeader("Content-Type", "multipart/form-data")
@@ -99,7 +99,7 @@ public static User getUser() {
9999

100100
public static User getUser(Config config) {
101101
HttpUrl url = Http.getUrlBuilder(config).addPathSegment("user").build();
102-
Request request = Http.getRequestBuilder()
102+
Request request = Http.getRequestBuilder(config)
103103
.url(url)
104104
.addHeader("Accept", "application/json")
105105
.build();
@@ -124,13 +124,8 @@ public static CompletableFuture<ConversionResult> convertFile(Path fromFile, Str
124124
}
125125

126126
@SuppressWarnings("unused")
127-
public static CompletableFuture<ConversionResult> convertFile(Path fromFile, String toFormat, String secret, Param... params) throws IOException {
128-
return convertFile(fromFile, toFormat, Config.defaults(secret), params);
129-
}
130-
131-
@SuppressWarnings("unused")
132-
public static CompletableFuture<ConversionResult> convertFile(Path fromFile, String toFormat, String token, String apiKey, Param... params) throws IOException {
133-
return convertFile(fromFile, toFormat, Config.defaults(token, apiKey), params);
127+
public static CompletableFuture<ConversionResult> convertFile(Path fromFile, String toFormat, String apiCredentials, Param... params) throws IOException {
128+
return convertFile(fromFile, toFormat, Config.defaults(apiCredentials), params);
134129
}
135130

136131
public static CompletableFuture<ConversionResult> convertFile(Path fromFile, String toFormat, Config config, Param... params) throws IOException {
@@ -144,13 +139,8 @@ public static void convertFile(String fromPathToFile, String toPathToFile) {
144139
}
145140

146141
@SuppressWarnings("unused")
147-
public static void convertFile(String fromPathToFile, String toPathToFile, String secret) {
148-
convertFile(fromPathToFile, toPathToFile, Config.defaults(secret));
149-
}
150-
151-
@SuppressWarnings("unused")
152-
public static void convertFile(String fromPathToFile, String toPathToFile, String token, String apiKey) {
153-
convertFile(fromPathToFile, toPathToFile, Config.defaults(token, apiKey));
142+
public static void convertFile(String fromPathToFile, String toPathToFile, String apiCredentials) {
143+
convertFile(fromPathToFile, toPathToFile, Config.defaults(apiCredentials));
154144
}
155145

156146
public static void convertFile(String fromPathToFile, String toPathToFile, Config config) {
@@ -169,13 +159,8 @@ public static List<Path> convertFileToDir(String fromPathToFile, String toFormat
169159
}
170160

171161
@SuppressWarnings("unused")
172-
public static List<Path> convertFileToDir(String fromPathToFile, String toFormat, String outputDirectory, String secret, Param... params) {
173-
return convertFileToDir(fromPathToFile, toFormat, outputDirectory, Config.defaults(secret), params);
174-
}
175-
176-
@SuppressWarnings("unused")
177-
public static List<Path> convertFileToDir(String fromPathToFile, String toFormat, String outputDirectory, String token, String apiKey, Param... params) {
178-
return convertFileToDir(fromPathToFile, toFormat, outputDirectory, Config.defaults(token, apiKey), params);
162+
public static List<Path> convertFileToDir(String fromPathToFile, String toFormat, String outputDirectory, String apiCredentials, Param... params) {
163+
return convertFileToDir(fromPathToFile, toFormat, outputDirectory, Config.defaults(apiCredentials), params);
179164
}
180165

181166
public static List<Path> convertFileToDir(String fromPathToFile, String toFormat, String outputDirectory, Config config, Param... params) {
@@ -194,13 +179,8 @@ public static Path convertUrl(String url, String toPathToFile, Param... params)
194179
}
195180

196181
@SuppressWarnings("unused")
197-
public static Path convertUrl(String url, String toPathToFile, String secret, Param... params) {
198-
return convertUrl(url, toPathToFile, Config.defaults(secret), params);
199-
}
200-
201-
@SuppressWarnings("unused")
202-
public static Path convertUrl(String url, String toPathToFile, String token, String apiKey, Param... params) {
203-
return convertUrl(url, toPathToFile, Config.defaults(token, apiKey), params);
182+
public static Path convertUrl(String url, String toPathToFile, String apiCredentials, Param... params) {
183+
return convertUrl(url, toPathToFile, Config.defaults(apiCredentials), params);
204184
}
205185

206186
public static Path convertUrl(String url, String toPathToFile, Config config, Param... params) {
@@ -219,13 +199,8 @@ public static Path convertRemoteFile(String url, String toPathToFile, Param... p
219199
}
220200

221201
@SuppressWarnings("unused")
222-
public static Path convertRemoteFile(String url, String toPathToFile, String secret, Param... params) {
223-
return convertRemoteFile(url, toPathToFile, Config.defaults(secret), params);
224-
}
225-
226-
@SuppressWarnings("unused")
227-
public static Path convertRemoteFile(String url, String toPathToFile, String token, String apiKey, Param... params) {
228-
return convertRemoteFile(url, toPathToFile, Config.defaults(token, apiKey), params);
202+
public static Path convertRemoteFile(String url, String toPathToFile, String apiCredentials, Param... params) {
203+
return convertRemoteFile(url, toPathToFile, Config.defaults(apiCredentials), params);
229204
}
230205

231206
public static Path convertRemoteFile(String url, String toPathToFile, Config config, Param... params) {
@@ -245,13 +220,8 @@ public static List<Path> convertRemoteFileToDir(String url, String toFormat, Str
245220
}
246221

247222
@SuppressWarnings("unused")
248-
public static List<Path> convertRemoteFileToDir(String url, String toFormat, String outputDirectory, String secret, Param... params) {
249-
return convertRemoteFileToDir(url, toFormat, outputDirectory, Config.defaults(secret), params);
250-
}
251-
252-
@SuppressWarnings("unused")
253-
public static List<Path> convertRemoteFileToDir(String url, String toFormat, String outputDirectory, String token, String apiKey, Param... params) {
254-
return convertRemoteFileToDir(url, toFormat, outputDirectory, Config.defaults(token, apiKey), params);
223+
public static List<Path> convertRemoteFileToDir(String url, String toFormat, String outputDirectory, String apiCredentials, Param... params) {
224+
return convertRemoteFileToDir(url, toFormat, outputDirectory, Config.defaults(apiCredentials), params);
255225
}
256226

257227
public static List<Path> convertRemoteFileToDir(String url, String toFormat, String outputDirectory, Config config, Param... params) {

src/main/java/com/convertapi/client/Http.java

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.convertapi.client.model.RemoteUploadResponse;
44
import com.google.gson.Gson;
55
import okhttp3.*;
6+
import org.jetbrains.annotations.Nullable;
67

78
import java.io.IOException;
89
import java.io.InputStream;
@@ -26,17 +27,9 @@ static OkHttpClient getClient(Config config) {
2627
}
2728

2829
static HttpUrl.Builder getUrlBuilder(Config config) {
29-
HttpUrl.Builder urlBuilder = new HttpUrl.Builder()
30+
return new HttpUrl.Builder()
3031
.scheme(config.getScheme())
3132
.host(config.getHost());
32-
33-
if (config.getSecret() != null) {
34-
return urlBuilder.addQueryParameter("secret", config.getSecret());
35-
} else {
36-
return urlBuilder
37-
.addQueryParameter("token", config.getToken())
38-
.addQueryParameter("apikey", config.getApiKey());
39-
}
4033
}
4134

4235
static CompletableFuture<InputStream> requestGet(String url) {
@@ -71,8 +64,18 @@ static CompletableFuture<Void> requestDelete(String url) {
7164
}
7265

7366
static Request.Builder getRequestBuilder() {
67+
return getRequestBuilder(null);
68+
}
69+
70+
static Request.Builder getRequestBuilder(@Nullable Config config) {
7471
String agent = String.format("ConvertAPI-Java/%s (%s)", Http.class.getPackage().getImplementationVersion(), System.getProperty("os.name"));
75-
return new Request.Builder().header("User-Agent", agent);
72+
Request.Builder request = new Request.Builder()
73+
.header("User-Agent", agent);
74+
75+
if (config != null) {
76+
request = request.header("Authorization", "Bearer " + config.getApiCredentials());
77+
}
78+
return request;
7679
}
7780

7881
static RemoteUploadResponse remoteUpload(String urlToFile, Config config) {
@@ -81,7 +84,7 @@ static RemoteUploadResponse remoteUpload(String urlToFile, Config config) {
8184
.addQueryParameter("url", urlToFile)
8285
.build();
8386

84-
Request request = Http.getRequestBuilder()
87+
Request request = Http.getRequestBuilder(config)
8588
.url(url)
8689
.method("POST", RequestBody.create("", null))
8790
.addHeader("Accept", "application/json")

src/main/java/com/convertapi/client/Param.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ public List<String> getValue() throws ExecutionException, InterruptedException {
105105

106106
private static CompletableFuture<List<String>> upload(InputStream stream, String fileName, Config config) {
107107
return CompletableFuture.supplyAsync(() -> {
108-
Request request = Http.getRequestBuilder()
108+
Request request = Http.getRequestBuilder(config)
109109
.url(Http.getUrlBuilder(config).addPathSegment("upload")
110110
.addQueryParameter("filename", fileName)
111111
.build())

0 commit comments

Comments
 (0)