You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2022/12/01 06:30:30 UTC
[isis] branch master updated: ISIS-3275: re-implement OutboxClient on top of RestClient (2)
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/master by this push:
new 8d65df4883 ISIS-3275: re-implement OutboxClient on top of RestClient (2)
8d65df4883 is described below
commit 8d65df4883f57e5deda996459817509800d6475f
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu Dec 1 07:30:25 2022 +0100
ISIS-3275: re-implement OutboxClient on top of RestClient (2)
- support for RestfulClientConfig builder
---
.../secondary/fetch/CommandFetcher.java | 13 +++++------
.../testdomain/util/rest/RestEndpointService.java | 25 ++++++++++------------
.../client/src/main/java/module-info.java | 6 +++---
.../restfulobjects/client/RestfulClient.java | 13 +++++------
.../restfulobjects/client/RestfulClientConfig.java | 10 +++++++--
5 files changed, 36 insertions(+), 31 deletions(-)
diff --git a/incubator/extensions/core/commandreplay/secondary/src/main/java/org/apache/causeway/extensions/commandreplay/secondary/fetch/CommandFetcher.java b/incubator/extensions/core/commandreplay/secondary/src/main/java/org/apache/causeway/extensions/commandreplay/secondary/fetch/CommandFetcher.java
index ab022ac5c2..5c9817651d 100644
--- a/incubator/extensions/core/commandreplay/secondary/src/main/java/org/apache/causeway/extensions/commandreplay/secondary/fetch/CommandFetcher.java
+++ b/incubator/extensions/core/commandreplay/secondary/src/main/java/org/apache/causeway/extensions/commandreplay/secondary/fetch/CommandFetcher.java
@@ -131,14 +131,15 @@ public class CommandFetcher {
final SecondaryConfig secondaryConfig,
final boolean useRequestDebugLogging) {
- val clientConfig = new RestfulClientConfig();
- clientConfig.setRestfulBase(secondaryConfig.getPrimaryBaseUrlRestful());
+ val clientConfig = RestfulClientConfig.builder()
+ .restfulBase(secondaryConfig.getPrimaryBaseUrlRestful())
// setup basic-auth
- clientConfig.setUseBasicAuth(true);
- clientConfig.setRestfulAuthUser(secondaryConfig.getPrimaryUser());
- clientConfig.setRestfulAuthPassword(secondaryConfig.getPrimaryPassword());
+ .useBasicAuth(true)
+ .restfulAuthUser(secondaryConfig.getPrimaryUser())
+ .restfulAuthPassword(secondaryConfig.getPrimaryPassword())
// setup request/response debug logging
- clientConfig.setUseRequestDebugLogging(useRequestDebugLogging);
+ .useRequestDebugLogging(useRequestDebugLogging)
+ .build();
val client = RestfulClient.ofConfig(clientConfig);
return client;
diff --git a/regressiontests/stable/src/main/java/org/apache/causeway/testdomain/util/rest/RestEndpointService.java b/regressiontests/stable/src/main/java/org/apache/causeway/testdomain/util/rest/RestEndpointService.java
index ecba8bfe1e..aa295008bb 100644
--- a/regressiontests/stable/src/main/java/org/apache/causeway/testdomain/util/rest/RestEndpointService.java
+++ b/regressiontests/stable/src/main/java/org/apache/causeway/testdomain/util/rest/RestEndpointService.java
@@ -88,22 +88,19 @@ public class RestEndpointService {
log.debug("new restful client created for {}", restRootPath);
- val clientConfig = new RestfulClientConfig();
- clientConfig.setRestfulBase(restRootPath);
- // setup basic-auth
- clientConfig.setUseBasicAuth(true); // default = false
- clientConfig.setRestfulAuthUser(LdapConstants.SVEN_PRINCIPAL);
- clientConfig.setRestfulAuthPassword("pass");
- // setup request/response debug logging
- clientConfig.setUseRequestDebugLogging(useRequestDebugLogging);
- // register additional filter if any
- additionalFilters.forEach(clientConfig.getClientConversationFilters()::add);
-
- //debug
- //clientConfig.setUseRequestDebugLogging(true);
+ val clientConfig = RestfulClientConfig.builder()
+ .restfulBase(restRootPath)
+ // setup basic-auth
+ .useBasicAuth(true)
+ .restfulAuthUser(LdapConstants.SVEN_PRINCIPAL)
+ .restfulAuthPassword("pass")
+ // setup request/response debug logging
+ .useRequestDebugLogging(useRequestDebugLogging)
+ // register additional filter if any
+ .clientConversationFilters(additionalFilters.toList())
+ .build();
val client = RestfulClient.ofConfig(clientConfig);
-
return client;
}
diff --git a/viewers/restfulobjects/client/src/main/java/module-info.java b/viewers/restfulobjects/client/src/main/java/module-info.java
index d0d437acbb..18615e6f43 100644
--- a/viewers/restfulobjects/client/src/main/java/module-info.java
+++ b/viewers/restfulobjects/client/src/main/java/module-info.java
@@ -27,9 +27,9 @@ module org.apache.causeway.viewer.restfulobjects.client {
requires java.ws.rs;
requires java.xml.bind;
requires lombok;
- requires org.apache.causeway.applib;
- requires org.apache.causeway.commons;
- requires org.apache.causeway.viewer.restfulobjects.applib;
+ requires transitive org.apache.causeway.applib;
+ requires transitive org.apache.causeway.commons;
+ requires transitive org.apache.causeway.viewer.restfulobjects.applib;
requires org.apache.logging.log4j;
requires spring.core;
}
\ No newline at end of file
diff --git a/viewers/restfulobjects/client/src/main/java/org/apache/causeway/viewer/restfulobjects/client/RestfulClient.java b/viewers/restfulobjects/client/src/main/java/org/apache/causeway/viewer/restfulobjects/client/RestfulClient.java
index b9898e91b0..8a6874632e 100644
--- a/viewers/restfulobjects/client/src/main/java/org/apache/causeway/viewer/restfulobjects/client/RestfulClient.java
+++ b/viewers/restfulobjects/client/src/main/java/org/apache/causeway/viewer/restfulobjects/client/RestfulClient.java
@@ -51,14 +51,15 @@ import lombok.extern.log4j.Log4j2;
* </p>
*
* <blockquote><pre>
-RestfulClientConfig clientConfig = new RestfulClientConfig();
-clientConfig.setRestfulBase("http://localhost:8080/helloworld/restful/");
+RestfulClientConfig clientConfig = RestfulClientConfig.builder();
+.restfulBase("http://localhost:8080/helloworld/restful/")
// setup basic-auth
-clientConfig.setUseBasicAuth(true); // default = false
-clientConfig.setRestfulAuthUser("sven");
-clientConfig.setRestfulAuthPassword("pass");
+.useBasicAuth(true) // default = false
+.restfulAuthUser("sven")
+.restfulAuthPassword("pass")
// setup request/response debug logging
-clientConfig.setUseRequestDebugLogging(true); // default = false
+.useRequestDebugLogging(true) // default = false
+.build();
RestfulClient client = RestfulClient.ofConfig(clientConfig);
* </pre></blockquote>
diff --git a/viewers/restfulobjects/client/src/main/java/org/apache/causeway/viewer/restfulobjects/client/RestfulClientConfig.java b/viewers/restfulobjects/client/src/main/java/org/apache/causeway/viewer/restfulobjects/client/RestfulClientConfig.java
index 1428db7d1a..4384ad519a 100644
--- a/viewers/restfulobjects/client/src/main/java/org/apache/causeway/viewer/restfulobjects/client/RestfulClientConfig.java
+++ b/viewers/restfulobjects/client/src/main/java/org/apache/causeway/viewer/restfulobjects/client/RestfulClientConfig.java
@@ -29,14 +29,19 @@ import javax.xml.bind.annotation.XmlTransient;
import org.apache.causeway.viewer.restfulobjects.client.log.ClientConversationFilter;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
import lombok.Data;
+import lombok.NoArgsConstructor;
/**
* @since 2.0 {@index}
*/
@XmlRootElement(name="restful-client-config")
@XmlAccessorType(XmlAccessType.FIELD)
-@Data
+@Data @Builder
+@AllArgsConstructor
+@NoArgsConstructor
public class RestfulClientConfig {
@XmlElement(name="restfulBase")
@@ -55,6 +60,7 @@ public class RestfulClientConfig {
private boolean useRequestDebugLogging;
@XmlTransient
- private List<ClientConversationFilter> clientConversationFilters = new ArrayList<>();
+ @Builder.Default
+ private final List<ClientConversationFilter> clientConversationFilters = new ArrayList<>();
}