This is an automated email from the ASF dual-hosted git repository. rombert pushed a commit to annotated tag org.apache.sling.testing.clients-1.0.1 in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-testing-clients.git
commit 2eefa29ec5987725f94cd9d2390046ee78eb3737 Author: Andrei Dulvac <[email protected]> AuthorDate: Fri Jan 6 09:25:24 2017 +0000 SLING-6431 and some cosmetic changes git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/testing/http/clients@1777545 13f79535-47bb-0310-9956-ffa450edef68 --- pom.xml | 6 +++--- .../sling/testing/clients/AbstractSlingClient.java | 12 ++++++++++- .../apache/sling/testing/clients/SlingClient.java | 4 ++++ .../sling/testing/clients/html/package-info.java | 2 +- .../clients/instance/InstanceConfiguration.java | 21 ++++++++++++++++++- .../testing/clients/instance/InstanceSetup.java | 24 +++++++++++++++++----- .../clients/{ => instance}/package-info.java | 2 +- .../interceptors/TestDescriptionInterceptor.java | 2 +- .../sling/testing/clients/osgi/package-info.java | 2 +- .../apache/sling/testing/clients/package-info.java | 2 +- .../{ => util/config/impl}/package-info.java | 4 ++-- .../clients/{ => util/poller}/package-info.java | 4 ++-- 12 files changed, 66 insertions(+), 19 deletions(-) diff --git a/pom.xml b/pom.xml index 1267c96..4a326bd 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache.sling</groupId> <artifactId>sling</artifactId> - <version>26</version> + <version>28</version> <relativePath /> </parent> @@ -77,7 +77,7 @@ <dependencies> <dependency> <groupId>org.osgi</groupId> - <artifactId>org.osgi.core</artifactId> + <artifactId>osgi.core</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> @@ -151,7 +151,7 @@ <dependency> <groupId>org.apache.sling</groupId> <artifactId>org.apache.sling.hapi.client</artifactId> - <version>1.0.1-SNAPSHOT</version> + <version>1.0.0</version> </dependency> </dependencies> </project> diff --git a/src/main/java/org/apache/sling/testing/clients/AbstractSlingClient.java b/src/main/java/org/apache/sling/testing/clients/AbstractSlingClient.java index 24d731f..51c57d8 100644 --- a/src/main/java/org/apache/sling/testing/clients/AbstractSlingClient.java +++ b/src/main/java/org/apache/sling/testing/clients/AbstractSlingClient.java @@ -28,6 +28,7 @@ import org.apache.http.protocol.HttpContext; import org.apache.sling.testing.clients.util.HttpUtils; import org.slf4j.LoggerFactory; +import java.io.Closeable; import java.io.IOException; import java.lang.reflect.Constructor; import java.net.URI; @@ -41,7 +42,7 @@ import java.util.UUID; * The abstract base client for all implementing integration test clients. */ @Immutable -public class AbstractSlingClient implements HttpClient { +public class AbstractSlingClient implements HttpClient, Closeable { private final org.slf4j.Logger log = LoggerFactory.getLogger(getClass()); @@ -648,6 +649,15 @@ public class AbstractSlingClient implements HttpClient { return doRequest(request, headers, expectedStatus); } + @Override + /** + * <p>Closes the http client and makes sure all the underlying resources, like the connection manager, shut down </p> + * + */ + public void close() throws IOException { + this.http.close(); + } + // // HttpClient base methods diff --git a/src/main/java/org/apache/sling/testing/clients/SlingClient.java b/src/main/java/org/apache/sling/testing/clients/SlingClient.java index 7d9bbe3..ede00b5 100644 --- a/src/main/java/org/apache/sling/testing/clients/SlingClient.java +++ b/src/main/java/org/apache/sling/testing/clients/SlingClient.java @@ -21,6 +21,7 @@ import org.apache.http.HttpEntity; import org.apache.http.HttpRequestInterceptor; import org.apache.http.HttpResponseInterceptor; import org.apache.http.NameValuePair; +import org.apache.http.annotation.Immutable; import org.apache.http.client.CookieStore; import org.apache.http.client.CredentialsProvider; import org.apache.http.client.RedirectStrategy; @@ -31,6 +32,7 @@ import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClientBuilder; import org.apache.sling.testing.clients.interceptors.DelayRequestInterceptor; +import org.apache.sling.testing.clients.interceptors.TestDescriptionInterceptor; import org.apache.sling.testing.clients.util.FormEntityBuilder; import org.apache.sling.testing.clients.util.HttpUtils; import org.apache.sling.testing.clients.util.JsonUtils; @@ -51,6 +53,7 @@ import static org.apache.http.HttpStatus.SC_OK; * <p>It has methods to perform simple node operations on the server like creating and deleting nodes, etc. * on the server using requests. </p> */ +@Immutable public class SlingClient extends AbstractSlingClient { public static final String DEFAULT_NODE_TYPE = "sling:OrderedFolder"; @@ -557,6 +560,7 @@ public class SlingClient extends AbstractSlingClient { httpClientBuilder.setMaxConnPerRoute(10); httpClientBuilder.setMaxConnTotal(100); // Interceptors + httpClientBuilder.addInterceptorLast(new TestDescriptionInterceptor()); httpClientBuilder.addInterceptorLast(new DelayRequestInterceptor(Constants.HTTP_DELAY)); return this; diff --git a/src/main/java/org/apache/sling/testing/clients/html/package-info.java b/src/main/java/org/apache/sling/testing/clients/html/package-info.java index 764e51d..97b22cb 100644 --- a/src/main/java/org/apache/sling/testing/clients/html/package-info.java +++ b/src/main/java/org/apache/sling/testing/clients/html/package-info.java @@ -17,7 +17,7 @@ * under the License. */ -@Version("2.0.0") +@Version("2.1.0") package org.apache.sling.testing.clients.html; import aQute.bnd.annotation.Version; diff --git a/src/main/java/org/apache/sling/testing/clients/instance/InstanceConfiguration.java b/src/main/java/org/apache/sling/testing/clients/instance/InstanceConfiguration.java index 168e6ab..4081bd5 100644 --- a/src/main/java/org/apache/sling/testing/clients/instance/InstanceConfiguration.java +++ b/src/main/java/org/apache/sling/testing/clients/instance/InstanceConfiguration.java @@ -23,12 +23,23 @@ import java.net.URI; */ public class InstanceConfiguration { + public static final String DEFAULT_ADMIN_USER = "admin"; + public static final String DEFAULT_ADMIN_PASSWORD = "admin"; + private URI url; private final String runmode; + private String adminUser; + private String adminPassword; - public InstanceConfiguration(final URI url, final String runmode) { + public InstanceConfiguration(final URI url, final String runmode, String adminUser, String adminPassword) { this.url = url; this.runmode = runmode; + this.adminUser = adminUser; + this.adminPassword = adminPassword; + } + + public InstanceConfiguration(URI url, String runmode) { + this(url, runmode, DEFAULT_ADMIN_USER, DEFAULT_ADMIN_PASSWORD); } public URI getUrl() { @@ -38,4 +49,12 @@ public class InstanceConfiguration { public String getRunmode() { return runmode; } + + public String getAdminUser() { + return adminUser; + } + + public String getAdminPassword() { + return adminPassword; + } } \ No newline at end of file diff --git a/src/main/java/org/apache/sling/testing/clients/instance/InstanceSetup.java b/src/main/java/org/apache/sling/testing/clients/instance/InstanceSetup.java index de4e5a3..051b4c9 100644 --- a/src/main/java/org/apache/sling/testing/clients/instance/InstanceSetup.java +++ b/src/main/java/org/apache/sling/testing/clients/instance/InstanceSetup.java @@ -29,10 +29,16 @@ import java.util.List; * Utility class for getting the current instance setup */ public final class InstanceSetup { - private static final Logger LOG = LoggerFactory.getLogger(InstanceSetup.class); private static InstanceSetup SINGLETON; + // TODO: JAVADOC + public static final String INSTANCE_CONFIG_INSTANCES = Constants.CONFIG_PROP_PREFIX + "instances"; + public static final String INSTANCE_CONFIG_URL = Constants.CONFIG_PROP_PREFIX + "instance.url."; + public static final String INSTANCE_CONFIG_RUNMODE = Constants.CONFIG_PROP_PREFIX + "instance.runmode."; + public static final String INSTANCE_CONFIG_ADMINUSER = Constants.CONFIG_PROP_PREFIX + "instance.adminUser."; + public static final String INSTANCE_CONFIG_ADMINPASSWORD = Constants.CONFIG_PROP_PREFIX + "instance.adminPassword."; + /** * @return the current setup object. */ @@ -46,18 +52,26 @@ public final class InstanceSetup { private final List<InstanceConfiguration> configs = new ArrayList<InstanceConfiguration>(); private InstanceSetup() { - final int number = Integer.valueOf(System.getProperty(Constants.CONFIG_PROP_PREFIX + "instances", "0")); + final int number = Integer.valueOf(System.getProperty(INSTANCE_CONFIG_INSTANCES, "0")); for (int i=1; i<=number; i++ ) { URI url; try { - url = new URI(System.getProperty(Constants.CONFIG_PROP_PREFIX + "instance.url." + String.valueOf(i))); + url = new URI(System.getProperty(INSTANCE_CONFIG_URL + String.valueOf(i))); } catch (URISyntaxException e) { LOG.error("Could not read URL for instance"); continue; } - final String runmode = System.getProperty(Constants.CONFIG_PROP_PREFIX + "instance.runmode." + String.valueOf(i)); + final String runmode = System.getProperty(INSTANCE_CONFIG_RUNMODE + String.valueOf(i)); + final String adminUser = System.getProperty(INSTANCE_CONFIG_ADMINUSER + String.valueOf(i)); + final String adminPassword = System.getProperty(INSTANCE_CONFIG_ADMINPASSWORD + String.valueOf(i)); - final InstanceConfiguration qc = new InstanceConfiguration(url, runmode); + final InstanceConfiguration qc; + // Only pass in the admin user name and password if they're both set + if ((null == adminUser) || (null == adminPassword)) { + qc = new InstanceConfiguration(url, runmode); + } else { + qc = new InstanceConfiguration(url, runmode, adminUser, adminPassword); + } this.configs.add(qc); } diff --git a/src/main/java/org/apache/sling/testing/clients/package-info.java b/src/main/java/org/apache/sling/testing/clients/instance/package-info.java similarity index 94% copy from src/main/java/org/apache/sling/testing/clients/package-info.java copy to src/main/java/org/apache/sling/testing/clients/instance/package-info.java index 406e979..43010e9 100644 --- a/src/main/java/org/apache/sling/testing/clients/package-info.java +++ b/src/main/java/org/apache/sling/testing/clients/instance/package-info.java @@ -18,7 +18,7 @@ */ @Version("1.1.0") -package org.apache.sling.testing.clients; +package org.apache.sling.testing.clients.instance; import aQute.bnd.annotation.Version; diff --git a/src/main/java/org/apache/sling/testing/clients/interceptors/TestDescriptionInterceptor.java b/src/main/java/org/apache/sling/testing/clients/interceptors/TestDescriptionInterceptor.java index ad91912..baad350 100644 --- a/src/main/java/org/apache/sling/testing/clients/interceptors/TestDescriptionInterceptor.java +++ b/src/main/java/org/apache/sling/testing/clients/interceptors/TestDescriptionInterceptor.java @@ -42,7 +42,7 @@ public class TestDescriptionInterceptor implements HttpRequestInterceptor{ } private static void addHeader(HttpRequest httpRequest, String name, String value){ - if (value != null){ + if (value != null) { httpRequest.addHeader(name, value); } } diff --git a/src/main/java/org/apache/sling/testing/clients/osgi/package-info.java b/src/main/java/org/apache/sling/testing/clients/osgi/package-info.java index 3deee0a..3a2f85e 100644 --- a/src/main/java/org/apache/sling/testing/clients/osgi/package-info.java +++ b/src/main/java/org/apache/sling/testing/clients/osgi/package-info.java @@ -19,5 +19,5 @@ /** * OSGI testing tools. */ [email protected]("1.0.0") [email protected]("1.1.0") package org.apache.sling.testing.clients.osgi; diff --git a/src/main/java/org/apache/sling/testing/clients/package-info.java b/src/main/java/org/apache/sling/testing/clients/package-info.java index 406e979..d9cf961 100644 --- a/src/main/java/org/apache/sling/testing/clients/package-info.java +++ b/src/main/java/org/apache/sling/testing/clients/package-info.java @@ -17,7 +17,7 @@ * under the License. */ -@Version("1.1.0") +@Version("1.2.0") package org.apache.sling.testing.clients; import aQute.bnd.annotation.Version; diff --git a/src/main/java/org/apache/sling/testing/clients/package-info.java b/src/main/java/org/apache/sling/testing/clients/util/config/impl/package-info.java similarity index 91% copy from src/main/java/org/apache/sling/testing/clients/package-info.java copy to src/main/java/org/apache/sling/testing/clients/util/config/impl/package-info.java index 406e979..d6bfe66 100644 --- a/src/main/java/org/apache/sling/testing/clients/package-info.java +++ b/src/main/java/org/apache/sling/testing/clients/util/config/impl/package-info.java @@ -17,8 +17,8 @@ * under the License. */ -@Version("1.1.0") -package org.apache.sling.testing.clients; +@Version("1.0.0") +package org.apache.sling.testing.clients.util.config.impl; import aQute.bnd.annotation.Version; diff --git a/src/main/java/org/apache/sling/testing/clients/package-info.java b/src/main/java/org/apache/sling/testing/clients/util/poller/package-info.java similarity index 92% copy from src/main/java/org/apache/sling/testing/clients/package-info.java copy to src/main/java/org/apache/sling/testing/clients/util/poller/package-info.java index 406e979..6367401 100644 --- a/src/main/java/org/apache/sling/testing/clients/package-info.java +++ b/src/main/java/org/apache/sling/testing/clients/util/poller/package-info.java @@ -17,8 +17,8 @@ * under the License. */ -@Version("1.1.0") -package org.apache.sling.testing.clients; +@Version("1.0.0") +package org.apache.sling.testing.clients.util.poller; import aQute.bnd.annotation.Version; -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
