From 79612a553cdaf8dfb2deaccb83de1bb5b0a8fd5e Mon Sep 17 00:00:00 2001 From: Fabrice Daugan Date: Tue, 13 Feb 2024 14:11:18 +0100 Subject: [PATCH] Bump plugin-api to 4.1.5 --- pom.xml | 2 +- .../plugin/qa/sonar/AuthCurlProcessor.java | 60 ------------------- .../qa/sonar/SessionAuthCurlProcessor.java | 36 ----------- .../plugin/qa/sonar/SonarCurlProcessor.java | 1 + 4 files changed, 2 insertions(+), 97 deletions(-) delete mode 100644 src/main/java/org/ligoj/app/plugin/qa/sonar/AuthCurlProcessor.java delete mode 100644 src/main/java/org/ligoj/app/plugin/qa/sonar/SessionAuthCurlProcessor.java diff --git a/pom.xml b/pom.xml index 2da9d61..f0b31cb 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ org.ligoj.api plugin-parent - 4.1.4 + 4.1.5 diff --git a/src/main/java/org/ligoj/app/plugin/qa/sonar/AuthCurlProcessor.java b/src/main/java/org/ligoj/app/plugin/qa/sonar/AuthCurlProcessor.java deleted file mode 100644 index 8105024..0000000 --- a/src/main/java/org/ligoj/app/plugin/qa/sonar/AuthCurlProcessor.java +++ /dev/null @@ -1,60 +0,0 @@ -package org.ligoj.app.plugin.qa.sonar; - -import org.apache.commons.codec.binary.Base64; -import org.apache.commons.lang3.StringUtils; -import org.apache.hc.core5.http.HttpHeaders; -import org.ligoj.bootstrap.core.curl.CurlProcessor; -import org.ligoj.bootstrap.core.curl.CurlRequest; -import org.ligoj.bootstrap.core.curl.HttpResponseCallback; - -import java.nio.charset.StandardCharsets; -import java.util.Objects; - -public class AuthCurlProcessor extends CurlProcessor { - - private final String username; - private final String password; - private static final Base64 BASE64_CODEC = new Base64(0); - - /** - * Full constructor holding credential and callback. - * - * @param username the user login. Empty or null login are accepted, but no authentication will be used. - * @param password the user password or API token. null Password is converted to empty string, and still - * used when user is not empty. - * @param callback Not null {@link org.ligoj.bootstrap.core.curl.HttpResponseCallback} used for each response. - */ - public AuthCurlProcessor(final String username, final String password, final HttpResponseCallback callback) { - super(callback, DEFAULT_CONNECTION_TIMEOUT, DEFAULT_RESPONSE_TIMEOUT, true, null, null); - this.username = StringUtils.trimToNull(username); - this.password = Objects.toString(password); - } - - /** - * Process the given request. - */ - @Override - protected boolean process(final CurlRequest request) { - addAuthenticationHeader(request); - return super.process(request); - } - - /** - * Add the basic authentication header. - * - * @param request The request to complete header. - */ - protected void addAuthenticationHeader(final CurlRequest request) { - // Check the authentication is needed or not - if (username != null) { - - // Build the Basic authentication header - final var tmp = username + ':' + password; - - // Use the preempted authentication processor - request.getHeaders().put(HttpHeaders.AUTHORIZATION, - "Basic " + BASE64_CODEC.encodeToString(tmp.getBytes(StandardCharsets.UTF_8))); - } - } - -} \ No newline at end of file diff --git a/src/main/java/org/ligoj/app/plugin/qa/sonar/SessionAuthCurlProcessor.java b/src/main/java/org/ligoj/app/plugin/qa/sonar/SessionAuthCurlProcessor.java deleted file mode 100644 index 683c412..0000000 --- a/src/main/java/org/ligoj/app/plugin/qa/sonar/SessionAuthCurlProcessor.java +++ /dev/null @@ -1,36 +0,0 @@ -package org.ligoj.app.plugin.qa.sonar; - -import org.ligoj.bootstrap.core.curl.CurlRequest; -import org.ligoj.bootstrap.core.curl.HttpResponseCallback; - -/** - * Basic authenticated CURL processor where credentials are only sent one in order to get a session cookie. - */ -public class SessionAuthCurlProcessor extends AuthCurlProcessor { - - /** - * Full constructor holding credential and callback. - * - * @param username - * the user login. - * @param password - * the user password or API token. - * @param callback - * Not null {@link org.ligoj.bootstrap.core.curl.HttpResponseCallback} used for each response. - */ - public SessionAuthCurlProcessor(final String username, final String password, final HttpResponseCallback callback) { - super(username, password, callback); - } - - /** - * Manage authentication only for the first request. - */ - @Override - protected void addAuthenticationHeader(final CurlRequest request) { - if (request.getCounter() == 0) { - // Manage authentication only for the first request. - super.addAuthenticationHeader(request); - } - } - -} \ No newline at end of file diff --git a/src/main/java/org/ligoj/app/plugin/qa/sonar/SonarCurlProcessor.java b/src/main/java/org/ligoj/app/plugin/qa/sonar/SonarCurlProcessor.java index 52f2df5..4a02803 100644 --- a/src/main/java/org/ligoj/app/plugin/qa/sonar/SonarCurlProcessor.java +++ b/src/main/java/org/ligoj/app/plugin/qa/sonar/SonarCurlProcessor.java @@ -5,6 +5,7 @@ import org.ligoj.bootstrap.core.curl.CurlProcessor; import org.ligoj.bootstrap.core.curl.HttpResponseCallback; +import org.ligoj.bootstrap.core.curl.SessionAuthCurlProcessor; import java.util.Map; import java.util.regex.Pattern;