Skip to content

Commit efdacd7

Browse files
authored
Add default methods in proxy interface (#263)
1 parent 5dc7d30 commit efdacd7

File tree

1 file changed

+16
-8
lines changed

1 file changed

+16
-8
lines changed

src/main/java/software/amazon/cloudformation/proxy/ProxyClient.java

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,11 @@ public interface ProxyClient<ClientT> {
7272
* {@link software.amazon.awssdk.core.exception.SdkClientException} if
7373
* there is client side problem
7474
*/
75-
<RequestT extends AwsRequest, ResponseT extends AwsResponse>
75+
default <RequestT extends AwsRequest, ResponseT extends AwsResponse>
7676
CompletableFuture<ResponseT>
77-
injectCredentialsAndInvokeV2Async(RequestT request, Function<RequestT, CompletableFuture<ResponseT>> requestFunction);
77+
injectCredentialsAndInvokeV2Async(RequestT request, Function<RequestT, CompletableFuture<ResponseT>> requestFunction) {
78+
throw new UnsupportedOperationException();
79+
}
7880

7981
/**
8082
* This is a synchronous version of making API calls which implement Iterable in
@@ -92,9 +94,11 @@ public interface ProxyClient<ClientT> {
9294
* {@link software.amazon.awssdk.core.exception.SdkClientException} if
9395
* there is client side problem
9496
*/
95-
<RequestT extends AwsRequest, ResponseT extends AwsResponse, IterableT extends SdkIterable<ResponseT>>
97+
default <RequestT extends AwsRequest, ResponseT extends AwsResponse, IterableT extends SdkIterable<ResponseT>>
9698
IterableT
97-
injectCredentialsAndInvokeIterableV2(RequestT request, Function<RequestT, IterableT> requestFunction);
99+
injectCredentialsAndInvokeIterableV2(RequestT request, Function<RequestT, IterableT> requestFunction) {
100+
throw new UnsupportedOperationException();
101+
}
98102

99103
/**
100104
* This is a synchronous version of making API calls which implement
@@ -111,10 +115,12 @@ public interface ProxyClient<ClientT> {
111115
* {@link software.amazon.awssdk.core.exception.SdkClientException} if
112116
* there is client side problem
113117
*/
114-
<RequestT extends AwsRequest, ResponseT extends AwsResponse>
118+
default <RequestT extends AwsRequest, ResponseT extends AwsResponse>
115119
ResponseInputStream<ResponseT>
116120
injectCredentialsAndInvokeV2InputStream(RequestT request,
117-
Function<RequestT, ResponseInputStream<ResponseT>> requestFunction);
121+
Function<RequestT, ResponseInputStream<ResponseT>> requestFunction) {
122+
throw new UnsupportedOperationException();
123+
}
118124

119125
/**
120126
* This is a synchronous version of making API calls which implement
@@ -131,9 +137,11 @@ public interface ProxyClient<ClientT> {
131137
* {@link software.amazon.awssdk.core.exception.SdkClientException} if
132138
* there is client side problem
133139
*/
134-
<RequestT extends AwsRequest, ResponseT extends AwsResponse>
140+
default <RequestT extends AwsRequest, ResponseT extends AwsResponse>
135141
ResponseBytes<ResponseT>
136-
injectCredentialsAndInvokeV2Bytes(RequestT request, Function<RequestT, ResponseBytes<ResponseT>> requestFunction);
142+
injectCredentialsAndInvokeV2Bytes(RequestT request, Function<RequestT, ResponseBytes<ResponseT>> requestFunction) {
143+
throw new UnsupportedOperationException();
144+
}
137145

138146
/**
139147
* @return the actual AWS service client that we need to use to provide the

0 commit comments

Comments
 (0)