Skip to content

Commit eca05c6

Browse files
committed
Rename main components
1 parent 681796a commit eca05c6

File tree

7 files changed

+34
-37
lines changed

7 files changed

+34
-37
lines changed

opa-async-java-client/src/main/java/eu/xenit/contentcloud/abac/opa/client/ReactiveOpaClient.java renamed to opa-async-java-client/src/main/java/eu/xenit/contentcloud/abac/opa/client/OpaClient.java

Lines changed: 21 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -7,30 +7,30 @@
77
import eu.xenit.contentcloud.abac.opa.client.api.PolicyApi;
88
import eu.xenit.contentcloud.abac.opa.client.impl.DataComponent;
99
import eu.xenit.contentcloud.abac.opa.client.impl.CompileComponent;
10-
import eu.xenit.contentcloud.abac.opa.client.rest.OpaRestClient;
10+
import eu.xenit.contentcloud.abac.opa.client.rest.OpaHttpClient;
1111
import eu.xenit.contentcloud.abac.opa.client.rest.RestClientConfiguration.LogSpecification;
12-
import eu.xenit.contentcloud.abac.opa.client.rest.client.jdk.DefaultOpaRestClient;
12+
import eu.xenit.contentcloud.abac.opa.client.rest.client.jdk.DefaultOpaHttpClient;
1313
import java.net.http.HttpClient;
1414
import java.net.http.HttpClient.Redirect;
1515
import java.time.Duration;
1616
import java.util.Objects;
1717
import java.util.concurrent.CompletableFuture;
1818
import lombok.extern.slf4j.Slf4j;
1919

20-
public class ReactiveOpaClient implements PolicyApi, DataApi, CompileApi {
20+
public class OpaClient implements PolicyApi, DataApi, CompileApi {
2121

2222
private final CompileApi compileApi;
2323
private final DataApi dataApi;
2424
private final PolicyApi policyApi;
2525

26-
ReactiveOpaClient(PolicyApi policyApi, DataApi dataApi, CompileApi compileApi) {
26+
OpaClient(PolicyApi policyApi, DataApi dataApi, CompileApi compileApi) {
2727
this.policyApi = policyApi;
2828
this.dataApi = dataApi;
2929
this.compileApi = compileApi;
3030
}
3131

3232
/**
33-
* @return builder for {@link ReactiveOpaClient}
33+
* @return builder for {@link OpaClient}
3434
*/
3535
public static Builder builder() {
3636
return new Builder();
@@ -73,13 +73,22 @@ public <TData> CompletableFuture<TData> getData(String path, Class<TData> respon
7373

7474

7575
/**
76-
* Builder for {@link ReactiveOpaClient}
76+
* Builder for {@link OpaClient}
7777
*/
7878
@Slf4j
7979
public static class Builder {
8080

81+
/**
82+
* The default url
83+
*/
8184
private String url = "http://localhost:8181";
82-
private OpaRestClient restClient = null;
85+
86+
/**
87+
* The default rest-client
88+
*/
89+
private OpaHttpClient restClient = new DefaultOpaHttpClient(
90+
HttpClient.newBuilder().connectTimeout(Duration.ofSeconds(5)).followRedirects(Redirect.NORMAL).build(),
91+
new ObjectMapper());
8392

8493
/**
8594
* @param url URL including protocol and port
@@ -90,40 +99,30 @@ public Builder url(String url) {
9099
return this;
91100
}
92101

93-
public Builder restClient(OpaRestClient restClient) {
102+
public Builder restClient(OpaHttpClient restClient) {
94103
Objects.requireNonNull(restClient);
95104
this.restClient = restClient;
96105
return this;
97106
}
98107

99-
public ReactiveOpaClient build() {
108+
public OpaClient build() {
100109

101110
var opaRestClient = this.getOrCreateDefaultRestClient();
102111

103-
104-
return new ReactiveOpaClient(
112+
return new OpaClient(
105113
new PolicyComponent(opaRestClient),
106114
new DataComponent(opaRestClient),
107115
new CompileComponent(opaRestClient));
108116

109117
}
110118

111-
private OpaRestClient getOrCreateDefaultRestClient() {
119+
private OpaHttpClient getOrCreateDefaultRestClient() {
112120
var client = this.restClient;
113121

114-
// create the default client, if not provided by the builder
115-
if (client == null) {
116-
var httpClient = HttpClient.newBuilder()
117-
.connectTimeout(Duration.ofSeconds(5))
118-
.followRedirects(Redirect.NORMAL)
119-
.build();
120-
client = new DefaultOpaRestClient(httpClient, new ObjectMapper());
121-
}
122-
123122
// configure the provided client
124123
client.configure(config -> config
125124
.baseUrl(this.url)
126-
.logging(LogSpecification::all));
125+
.logging(LogSpecification::verbose));
127126

128127
return client;
129128
}

opa-async-java-client/src/main/java/eu/xenit/contentcloud/abac/opa/client/impl/CompileComponent.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package eu.xenit.contentcloud.abac.opa.client.impl;
22

33
import eu.xenit.contentcloud.abac.opa.client.api.CompileApi;
4-
import eu.xenit.contentcloud.abac.opa.client.rest.OpaRestClient;
4+
import eu.xenit.contentcloud.abac.opa.client.rest.OpaHttpClient;
55
import java.util.concurrent.CompletableFuture;
66
import lombok.RequiredArgsConstructor;
77

@@ -10,7 +10,7 @@ public class CompileComponent implements CompileApi {
1010

1111
private static final String COMPILE_ENDPOINT = "/v1/compile";
1212

13-
private final OpaRestClient restClient;
13+
private final OpaHttpClient restClient;
1414

1515
@Override
1616
public CompletableFuture<PartialEvalResponse> compile(PartialEvaluationRequest request) {

opa-async-java-client/src/main/java/eu/xenit/contentcloud/abac/opa/client/impl/DataComponent.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package eu.xenit.contentcloud.abac.opa.client.impl;
22

33
import eu.xenit.contentcloud.abac.opa.client.api.DataApi;
4-
import eu.xenit.contentcloud.abac.opa.client.rest.OpaRestClient;
4+
import eu.xenit.contentcloud.abac.opa.client.rest.OpaHttpClient;
55
import java.util.concurrent.CompletableFuture;
66
import lombok.RequiredArgsConstructor;
77

@@ -10,16 +10,16 @@ public class DataComponent implements DataApi {
1010

1111
private static final String DATA_ENDPOINT = "/v1/data/";
1212

13-
private final OpaRestClient opaRestClient;
13+
private final OpaHttpClient opaHttpClient;
1414

1515
@Override
1616
public <TData> CompletableFuture<Void> upsertData(String path, TData data) {
17-
return opaRestClient.put(DATA_ENDPOINT + path, data);
17+
return opaHttpClient.put(DATA_ENDPOINT + path, data);
1818
}
1919

2020
@Override
2121
public <TData> CompletableFuture<TData> getData(String path, Class<TData> responseType) {
22-
return opaRestClient.get(DATA_ENDPOINT + path, responseType);
22+
return opaHttpClient.get(DATA_ENDPOINT + path, responseType);
2323
}
2424

2525

opa-async-java-client/src/main/java/eu/xenit/contentcloud/abac/opa/client/impl/PolicyComponent.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package eu.xenit.contentcloud.abac.opa.client.impl;
22

33
import eu.xenit.contentcloud.abac.opa.client.api.PolicyApi;
4-
import eu.xenit.contentcloud.abac.opa.client.rest.OpaRestClient;
4+
import eu.xenit.contentcloud.abac.opa.client.rest.OpaHttpClient;
55
import eu.xenit.contentcloud.abac.opa.client.rest.http.MediaType;
66
import java.util.concurrent.CompletableFuture;
77
import lombok.RequiredArgsConstructor;
@@ -11,7 +11,7 @@ public class PolicyComponent implements PolicyApi {
1111

1212
private static final String POLICY_ENDPOINT = "/v1/policies";
1313

14-
private final OpaRestClient restClient;
14+
private final OpaHttpClient restClient;
1515

1616
@Override
1717
public CompletableFuture<ListPoliciesResponse> listPolicies() {

opa-async-java-client/src/main/java/eu/xenit/contentcloud/abac/opa/client/rest/OpaRestClient.java renamed to opa-async-java-client/src/main/java/eu/xenit/contentcloud/abac/opa/client/rest/OpaHttpClient.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import java.util.concurrent.CompletableFuture;
55
import java.util.function.Consumer;
66

7-
public interface OpaRestClient {
7+
public interface OpaHttpClient {
88

99
<TResponse> CompletableFuture<TResponse> get(String path,
1010
Consumer<HttpRequestHeaders> headersCallback, Class<TResponse> responseType);
@@ -44,6 +44,4 @@ default <TResponse> CompletableFuture<TResponse> delete(String path, Class<TResp
4444

4545
void configure(Consumer<RestClientConfiguration> callback);
4646

47-
48-
4947
}

opa-async-java-client/src/main/java/eu/xenit/contentcloud/abac/opa/client/rest/client/jdk/DefaultOpaRestClient.java renamed to opa-async-java-client/src/main/java/eu/xenit/contentcloud/abac/opa/client/rest/client/jdk/DefaultOpaHttpClient.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package eu.xenit.contentcloud.abac.opa.client.rest.client.jdk;
22

33
import com.fasterxml.jackson.databind.ObjectMapper;
4-
import eu.xenit.contentcloud.abac.opa.client.rest.OpaRestClient;
4+
import eu.xenit.contentcloud.abac.opa.client.rest.OpaHttpClient;
55
import eu.xenit.contentcloud.abac.opa.client.rest.client.jdk.converter.JacksonBodyConverter;
66
import eu.xenit.contentcloud.abac.opa.client.rest.http.HttpMethod;
77
import eu.xenit.contentcloud.abac.opa.client.rest.http.HttpRequestHeaders;
@@ -24,7 +24,7 @@
2424
import lombok.extern.slf4j.Slf4j;
2525

2626
@Slf4j
27-
public class DefaultOpaRestClient implements OpaRestClient {
27+
public class DefaultOpaHttpClient implements OpaHttpClient {
2828

2929
private final HttpClient httpClient;
3030
private final ObjectMapper objectMapper;
@@ -40,7 +40,7 @@ public class DefaultOpaRestClient implements OpaRestClient {
4040
private static final String HEADER_ACCEPT = "Accept";
4141
private static final String HEADER_CONTENT_TYPE = "Content-Type";
4242

43-
public DefaultOpaRestClient(HttpClient httpClient, ObjectMapper objectMapper) {
43+
public DefaultOpaHttpClient(HttpClient httpClient, ObjectMapper objectMapper) {
4444
this.httpClient = httpClient;
4545
this.objectMapper = objectMapper;
4646

opa-async-java-client/src/test/java/eu/xenit/contentcloud/abac/opa/client/OpaClientIntegrationTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ class OpaClientIntegrationTests {
4242
.withExposedPorts(OPA_EXPOSED_PORT)
4343
.waitingFor(Wait.forHttp("/"));
4444

45-
private final ReactiveOpaClient opaClient = ReactiveOpaClient.builder()
45+
private final OpaClient opaClient = OpaClient.builder()
4646
.url("http://" + opaContainer.getHost() + ":" + opaContainer.getMappedPort(OPA_EXPOSED_PORT))
4747
.build();
4848

0 commit comments

Comments
 (0)