Skip to content

Commit fab8464

Browse files
SDK regeneration
1 parent 01f7891 commit fab8464

40 files changed

+912
-62
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ Add the dependency in your `pom.xml` file:
4040
<dependency>
4141
<groupId>com.pipedream</groupId>
4242
<artifactId>pipedream</artifactId>
43-
<version>1.1.5</version>
43+
<version>1.1.6</version>
4444
</dependency>
4545
```
4646

@@ -119,7 +119,7 @@ try{
119119

120120
### Custom Client
121121

122-
This SDK is built to work with any instance of `OkHttpClient`. By default, if no client is provided, the SDK will construct one.
122+
This SDK is built to work with any instance of `OkHttpClient`. By default, if no client is provided, the SDK will construct one.
123123
However, you can pass your own client like so:
124124

125125
```java

build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ java {
4949

5050
group = 'com.pipedream'
5151

52-
version = '1.1.5'
52+
version = '1.1.6'
5353

5454
jar {
5555
dependsOn(":generatePomFileForMavenPublication")
@@ -80,7 +80,7 @@ publishing {
8080
maven(MavenPublication) {
8181
groupId = 'com.pipedream'
8282
artifactId = 'pipedream'
83-
version = '1.1.5'
83+
version = '1.1.6'
8484
from components.java
8585
pom {
8686
name = 'pipedream'

src/main/java/com/pipedream/api/AsyncBaseClient.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import com.pipedream.api.resources.proxy.AsyncProxyClient;
1818
import com.pipedream.api.resources.tokens.AsyncTokensClient;
1919
import com.pipedream.api.resources.triggers.AsyncTriggersClient;
20+
import com.pipedream.api.resources.usage.AsyncUsageClient;
2021
import com.pipedream.api.resources.users.AsyncUsersClient;
2122
import java.util.function.Supplier;
2223

@@ -47,6 +48,8 @@ public class AsyncBaseClient {
4748

4849
protected final Supplier<AsyncTokensClient> tokensClient;
4950

51+
protected final Supplier<AsyncUsageClient> usageClient;
52+
5053
protected final Supplier<AsyncOauthTokensClient> oauthTokensClient;
5154

5255
public AsyncBaseClient(ClientOptions clientOptions) {
@@ -63,6 +66,7 @@ public AsyncBaseClient(ClientOptions clientOptions) {
6366
this.fileStashClient = Suppliers.memoize(() -> new AsyncFileStashClient(clientOptions));
6467
this.proxyClient = Suppliers.memoize(() -> new AsyncProxyClient(clientOptions));
6568
this.tokensClient = Suppliers.memoize(() -> new AsyncTokensClient(clientOptions));
69+
this.usageClient = Suppliers.memoize(() -> new AsyncUsageClient(clientOptions));
6670
this.oauthTokensClient = Suppliers.memoize(() -> new AsyncOauthTokensClient(clientOptions));
6771
}
6872

@@ -114,6 +118,10 @@ public AsyncTokensClient tokens() {
114118
return this.tokensClient.get();
115119
}
116120

121+
public AsyncUsageClient usage() {
122+
return this.usageClient.get();
123+
}
124+
117125
public AsyncOauthTokensClient oauthTokens() {
118126
return this.oauthTokensClient.get();
119127
}

src/main/java/com/pipedream/api/BaseClient.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import com.pipedream.api.resources.proxy.ProxyClient;
1818
import com.pipedream.api.resources.tokens.TokensClient;
1919
import com.pipedream.api.resources.triggers.TriggersClient;
20+
import com.pipedream.api.resources.usage.UsageClient;
2021
import com.pipedream.api.resources.users.UsersClient;
2122
import java.util.function.Supplier;
2223

@@ -47,6 +48,8 @@ public class BaseClient {
4748

4849
protected final Supplier<TokensClient> tokensClient;
4950

51+
protected final Supplier<UsageClient> usageClient;
52+
5053
protected final Supplier<OauthTokensClient> oauthTokensClient;
5154

5255
public BaseClient(ClientOptions clientOptions) {
@@ -63,6 +66,7 @@ public BaseClient(ClientOptions clientOptions) {
6366
this.fileStashClient = Suppliers.memoize(() -> new FileStashClient(clientOptions));
6467
this.proxyClient = Suppliers.memoize(() -> new ProxyClient(clientOptions));
6568
this.tokensClient = Suppliers.memoize(() -> new TokensClient(clientOptions));
69+
this.usageClient = Suppliers.memoize(() -> new UsageClient(clientOptions));
6670
this.oauthTokensClient = Suppliers.memoize(() -> new OauthTokensClient(clientOptions));
6771
}
6872

@@ -114,6 +118,10 @@ public TokensClient tokens() {
114118
return this.tokensClient.get();
115119
}
116120

121+
public UsageClient usage() {
122+
return this.usageClient.get();
123+
}
124+
117125
public OauthTokensClient oauthTokens() {
118126
return this.oauthTokensClient.get();
119127
}

src/main/java/com/pipedream/api/core/ClientOptions.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,10 @@ private ClientOptions(
3535
this.headers.putAll(headers);
3636
this.headers.putAll(new HashMap<String, String>() {
3737
{
38-
put("User-Agent", "com.pipedream:pipedream/1.1.5");
38+
put("User-Agent", "com.pipedream:pipedream/1.1.6");
3939
put("X-Fern-Language", "JAVA");
4040
put("X-Fern-SDK-Name", "com.pipedream.fern:api-sdk");
41-
put("X-Fern-SDK-Version", "1.1.5");
41+
put("X-Fern-SDK-Version", "1.1.6");
4242
}
4343
});
4444
this.headerSuppliers = headerSuppliers;

src/main/java/com/pipedream/api/resources/oauthtokens/requests/CreateOAuthTokenOpts.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public String getClientSecret() {
5353
}
5454

5555
/**
56-
* @return Optional space-separated scopes for the access token. Defaults to '*'.
56+
* @return Optional space-separated scopes for the access token. Defaults to <code>*</code>.
5757
*/
5858
@JsonProperty("scope")
5959
public Optional<String> getScope() {
@@ -103,7 +103,7 @@ public interface _FinalStage {
103103
CreateOAuthTokenOpts build();
104104

105105
/**
106-
* <p>Optional space-separated scopes for the access token. Defaults to '*'.</p>
106+
* <p>Optional space-separated scopes for the access token. Defaults to <code>*</code>.</p>
107107
*/
108108
_FinalStage scope(Optional<String> scope);
109109

@@ -146,7 +146,7 @@ public _FinalStage clientSecret(@NotNull String clientSecret) {
146146
}
147147

148148
/**
149-
* <p>Optional space-separated scopes for the access token. Defaults to '*'.</p>
149+
* <p>Optional space-separated scopes for the access token. Defaults to <code>*</code>.</p>
150150
* @return Reference to {@code this} so that method calls can be chained together.
151151
*/
152152
@java.lang.Override
@@ -156,7 +156,7 @@ public _FinalStage scope(String scope) {
156156
}
157157

158158
/**
159-
* <p>Optional space-separated scopes for the access token. Defaults to '*'.</p>
159+
* <p>Optional space-separated scopes for the access token. Defaults to <code>*</code>.</p>
160160
*/
161161
@java.lang.Override
162162
@JsonSetter(value = "scope", nulls = Nulls.SKIP)
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
/**
2+
* This file was auto-generated by Fern from our API Definition.
3+
*/
4+
package com.pipedream.api.resources.usage;
5+
6+
import com.fasterxml.jackson.core.JsonProcessingException;
7+
import com.pipedream.api.core.BaseClientApiException;
8+
import com.pipedream.api.core.BaseClientException;
9+
import com.pipedream.api.core.BaseClientHttpResponse;
10+
import com.pipedream.api.core.ClientOptions;
11+
import com.pipedream.api.core.ObjectMappers;
12+
import com.pipedream.api.core.QueryStringMapper;
13+
import com.pipedream.api.core.RequestOptions;
14+
import com.pipedream.api.errors.BadRequestError;
15+
import com.pipedream.api.errors.TooManyRequestsError;
16+
import com.pipedream.api.resources.usage.requests.UsageListRequest;
17+
import com.pipedream.api.types.ConnectUsageResponse;
18+
import java.io.IOException;
19+
import java.util.concurrent.CompletableFuture;
20+
import okhttp3.Call;
21+
import okhttp3.Callback;
22+
import okhttp3.Headers;
23+
import okhttp3.HttpUrl;
24+
import okhttp3.OkHttpClient;
25+
import okhttp3.Request;
26+
import okhttp3.Response;
27+
import okhttp3.ResponseBody;
28+
import org.jetbrains.annotations.NotNull;
29+
30+
public class AsyncRawUsageClient {
31+
protected final ClientOptions clientOptions;
32+
33+
public AsyncRawUsageClient(ClientOptions clientOptions) {
34+
this.clientOptions = clientOptions;
35+
}
36+
37+
/**
38+
* Retrieve Connect usage records for a time window
39+
*/
40+
public CompletableFuture<BaseClientHttpResponse<ConnectUsageResponse>> list(UsageListRequest request) {
41+
return list(request, null);
42+
}
43+
44+
/**
45+
* Retrieve Connect usage records for a time window
46+
*/
47+
public CompletableFuture<BaseClientHttpResponse<ConnectUsageResponse>> list(
48+
UsageListRequest request, RequestOptions requestOptions) {
49+
HttpUrl.Builder httpUrl = HttpUrl.parse(this.clientOptions.environment().getUrl())
50+
.newBuilder()
51+
.addPathSegments("v1/connect/usage");
52+
QueryStringMapper.addQueryParameter(httpUrl, "start_ts", request.getStartTs(), false);
53+
QueryStringMapper.addQueryParameter(httpUrl, "end_ts", request.getEndTs(), false);
54+
Request.Builder _requestBuilder = new Request.Builder()
55+
.url(httpUrl.build())
56+
.method("GET", null)
57+
.headers(Headers.of(clientOptions.headers(requestOptions)))
58+
.addHeader("Accept", "application/json");
59+
Request okhttpRequest = _requestBuilder.build();
60+
OkHttpClient client = clientOptions.httpClient();
61+
if (requestOptions != null && requestOptions.getTimeout().isPresent()) {
62+
client = clientOptions.httpClientWithTimeout(requestOptions);
63+
}
64+
CompletableFuture<BaseClientHttpResponse<ConnectUsageResponse>> future = new CompletableFuture<>();
65+
client.newCall(okhttpRequest).enqueue(new Callback() {
66+
@Override
67+
public void onResponse(@NotNull Call call, @NotNull Response response) throws IOException {
68+
try (ResponseBody responseBody = response.body()) {
69+
if (response.isSuccessful()) {
70+
future.complete(new BaseClientHttpResponse<>(
71+
ObjectMappers.JSON_MAPPER.readValue(responseBody.string(), ConnectUsageResponse.class),
72+
response));
73+
return;
74+
}
75+
String responseBodyString = responseBody != null ? responseBody.string() : "{}";
76+
try {
77+
switch (response.code()) {
78+
case 400:
79+
future.completeExceptionally(new BadRequestError(
80+
ObjectMappers.JSON_MAPPER.readValue(responseBodyString, Object.class),
81+
response));
82+
return;
83+
case 429:
84+
future.completeExceptionally(new TooManyRequestsError(
85+
ObjectMappers.JSON_MAPPER.readValue(responseBodyString, Object.class),
86+
response));
87+
return;
88+
}
89+
} catch (JsonProcessingException ignored) {
90+
// unable to map error response, throwing generic error
91+
}
92+
future.completeExceptionally(new BaseClientApiException(
93+
"Error with status code " + response.code(),
94+
response.code(),
95+
ObjectMappers.JSON_MAPPER.readValue(responseBodyString, Object.class),
96+
response));
97+
return;
98+
} catch (IOException e) {
99+
future.completeExceptionally(new BaseClientException("Network error executing HTTP request", e));
100+
}
101+
}
102+
103+
@Override
104+
public void onFailure(@NotNull Call call, @NotNull IOException e) {
105+
future.completeExceptionally(new BaseClientException("Network error executing HTTP request", e));
106+
}
107+
});
108+
return future;
109+
}
110+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
/**
2+
* This file was auto-generated by Fern from our API Definition.
3+
*/
4+
package com.pipedream.api.resources.usage;
5+
6+
import com.pipedream.api.core.ClientOptions;
7+
import com.pipedream.api.core.RequestOptions;
8+
import com.pipedream.api.resources.usage.requests.UsageListRequest;
9+
import com.pipedream.api.types.ConnectUsageResponse;
10+
import java.util.concurrent.CompletableFuture;
11+
12+
public class AsyncUsageClient {
13+
protected final ClientOptions clientOptions;
14+
15+
private final AsyncRawUsageClient rawClient;
16+
17+
public AsyncUsageClient(ClientOptions clientOptions) {
18+
this.clientOptions = clientOptions;
19+
this.rawClient = new AsyncRawUsageClient(clientOptions);
20+
}
21+
22+
/**
23+
* Get responses with HTTP metadata like headers
24+
*/
25+
public AsyncRawUsageClient withRawResponse() {
26+
return this.rawClient;
27+
}
28+
29+
/**
30+
* Retrieve Connect usage records for a time window
31+
*/
32+
public CompletableFuture<ConnectUsageResponse> list(UsageListRequest request) {
33+
return this.rawClient.list(request).thenApply(response -> response.body());
34+
}
35+
36+
/**
37+
* Retrieve Connect usage records for a time window
38+
*/
39+
public CompletableFuture<ConnectUsageResponse> list(UsageListRequest request, RequestOptions requestOptions) {
40+
return this.rawClient.list(request, requestOptions).thenApply(response -> response.body());
41+
}
42+
}
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
/**
2+
* This file was auto-generated by Fern from our API Definition.
3+
*/
4+
package com.pipedream.api.resources.usage;
5+
6+
import com.fasterxml.jackson.core.JsonProcessingException;
7+
import com.pipedream.api.core.BaseClientApiException;
8+
import com.pipedream.api.core.BaseClientException;
9+
import com.pipedream.api.core.BaseClientHttpResponse;
10+
import com.pipedream.api.core.ClientOptions;
11+
import com.pipedream.api.core.ObjectMappers;
12+
import com.pipedream.api.core.QueryStringMapper;
13+
import com.pipedream.api.core.RequestOptions;
14+
import com.pipedream.api.errors.BadRequestError;
15+
import com.pipedream.api.errors.TooManyRequestsError;
16+
import com.pipedream.api.resources.usage.requests.UsageListRequest;
17+
import com.pipedream.api.types.ConnectUsageResponse;
18+
import java.io.IOException;
19+
import okhttp3.Headers;
20+
import okhttp3.HttpUrl;
21+
import okhttp3.OkHttpClient;
22+
import okhttp3.Request;
23+
import okhttp3.Response;
24+
import okhttp3.ResponseBody;
25+
26+
public class RawUsageClient {
27+
protected final ClientOptions clientOptions;
28+
29+
public RawUsageClient(ClientOptions clientOptions) {
30+
this.clientOptions = clientOptions;
31+
}
32+
33+
/**
34+
* Retrieve Connect usage records for a time window
35+
*/
36+
public BaseClientHttpResponse<ConnectUsageResponse> list(UsageListRequest request) {
37+
return list(request, null);
38+
}
39+
40+
/**
41+
* Retrieve Connect usage records for a time window
42+
*/
43+
public BaseClientHttpResponse<ConnectUsageResponse> list(UsageListRequest request, RequestOptions requestOptions) {
44+
HttpUrl.Builder httpUrl = HttpUrl.parse(this.clientOptions.environment().getUrl())
45+
.newBuilder()
46+
.addPathSegments("v1/connect/usage");
47+
QueryStringMapper.addQueryParameter(httpUrl, "start_ts", request.getStartTs(), false);
48+
QueryStringMapper.addQueryParameter(httpUrl, "end_ts", request.getEndTs(), false);
49+
Request.Builder _requestBuilder = new Request.Builder()
50+
.url(httpUrl.build())
51+
.method("GET", null)
52+
.headers(Headers.of(clientOptions.headers(requestOptions)))
53+
.addHeader("Accept", "application/json");
54+
Request okhttpRequest = _requestBuilder.build();
55+
OkHttpClient client = clientOptions.httpClient();
56+
if (requestOptions != null && requestOptions.getTimeout().isPresent()) {
57+
client = clientOptions.httpClientWithTimeout(requestOptions);
58+
}
59+
try (Response response = client.newCall(okhttpRequest).execute()) {
60+
ResponseBody responseBody = response.body();
61+
if (response.isSuccessful()) {
62+
return new BaseClientHttpResponse<>(
63+
ObjectMappers.JSON_MAPPER.readValue(responseBody.string(), ConnectUsageResponse.class),
64+
response);
65+
}
66+
String responseBodyString = responseBody != null ? responseBody.string() : "{}";
67+
try {
68+
switch (response.code()) {
69+
case 400:
70+
throw new BadRequestError(
71+
ObjectMappers.JSON_MAPPER.readValue(responseBodyString, Object.class), response);
72+
case 429:
73+
throw new TooManyRequestsError(
74+
ObjectMappers.JSON_MAPPER.readValue(responseBodyString, Object.class), response);
75+
}
76+
} catch (JsonProcessingException ignored) {
77+
// unable to map error response, throwing generic error
78+
}
79+
throw new BaseClientApiException(
80+
"Error with status code " + response.code(),
81+
response.code(),
82+
ObjectMappers.JSON_MAPPER.readValue(responseBodyString, Object.class),
83+
response);
84+
} catch (IOException e) {
85+
throw new BaseClientException("Network error executing HTTP request", e);
86+
}
87+
}
88+
}

0 commit comments

Comments
 (0)