You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2022/10/31 21:13:43 UTC
[camel] 02/02: CAMEL-18665: camel-core: JsseParameters should use the camel provided resource loader instead of its own
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch CAMEL-18665
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 8ee424af24fc7f638c8de526eaa4c3714e14f1d0
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Oct 31 22:06:30 2022 +0100
CAMEL-18665: camel-core: JsseParameters should use the camel provided resource loader instead of its own
---
.../java/org/apache/camel/support/jsse/JsseParameters.java | 10 +++-------
.../apache/camel/support/jsse/KeyManagersParametersTest.java | 5 ++++-
.../org/apache/camel/support/jsse/KeyStoreParametersTest.java | 8 +++++++-
.../apache/camel/support/jsse/TrustManagersParametersTest.java | 4 +++-
4 files changed, 17 insertions(+), 10 deletions(-)
diff --git a/core/camel-api/src/main/java/org/apache/camel/support/jsse/JsseParameters.java b/core/camel-api/src/main/java/org/apache/camel/support/jsse/JsseParameters.java
index 4e3bce57ec4..ff3bb669ff7 100644
--- a/core/camel-api/src/main/java/org/apache/camel/support/jsse/JsseParameters.java
+++ b/core/camel-api/src/main/java/org/apache/camel/support/jsse/JsseParameters.java
@@ -16,11 +16,8 @@
*/
package org.apache.camel.support.jsse;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
-import java.net.URL;
import java.util.ArrayList;
import java.util.List;
@@ -31,16 +28,13 @@ import org.apache.camel.RuntimeCamelException;
import org.apache.camel.spi.ClassResolver;
import org.apache.camel.spi.Resource;
import org.apache.camel.spi.ResourceLoader;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.apache.camel.util.ObjectHelper;
/**
* Base class that provides optional integration with core Camel capabilities.
*/
public class JsseParameters implements CamelContextAware {
- private static final Logger LOG = LoggerFactory.getLogger(JsseParameters.class);
-
private CamelContext context;
/**
@@ -119,6 +113,8 @@ public class JsseParameters implements CamelContextAware {
* @throws IOException if the resource cannot be resolved using any of the above methods
*/
protected InputStream resolveResource(String resource) throws IOException {
+ ObjectHelper.notNull(getCamelContext(), "CamelContext", this);
+
Resource res = getCamelContext().adapt(ExtendedCamelContext.class).getResourceLoader().resolveResource(resource);
if (res == null) {
throw new IOException("Could not open " + resource + " as a file, class path resource, or URL.");
diff --git a/core/camel-core/src/test/java/org/apache/camel/support/jsse/KeyManagersParametersTest.java b/core/camel-core/src/test/java/org/apache/camel/support/jsse/KeyManagersParametersTest.java
index 22f124a53c1..6187b4b6396 100644
--- a/core/camel-core/src/test/java/org/apache/camel/support/jsse/KeyManagersParametersTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/support/jsse/KeyManagersParametersTest.java
@@ -25,6 +25,7 @@ import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.X509KeyManager;
import org.apache.camel.CamelContext;
+import org.apache.camel.impl.DefaultCamelContext;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
@@ -33,6 +34,7 @@ public class KeyManagersParametersTest extends AbstractJsseParametersTest {
protected KeyStoreParameters createMinimalKeyStoreParameters() {
KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setCamelContext(new DefaultCamelContext());
ksp.setResource("org/apache/camel/support/jsse/localhost.p12");
ksp.setPassword("changeit");
@@ -43,6 +45,8 @@ public class KeyManagersParametersTest extends AbstractJsseParametersTest {
protected KeyManagersParameters createMinimalKeyManagersParameters() {
KeyManagersParameters kmp = new KeyManagersParameters();
+ kmp.setCamelContext(new DefaultCamelContext());
+
kmp.setKeyStore(this.createMinimalKeyStoreParameters());
kmp.setKeyPassword("changeit");
@@ -51,7 +55,6 @@ public class KeyManagersParametersTest extends AbstractJsseParametersTest {
@Test
public void testPropertyPlaceholders() throws Exception {
-
CamelContext context = this.createPropertiesPlaceholderAwareContext();
KeyStoreParameters ksp = new KeyStoreParameters();
diff --git a/core/camel-core/src/test/java/org/apache/camel/support/jsse/KeyStoreParametersTest.java b/core/camel-core/src/test/java/org/apache/camel/support/jsse/KeyStoreParametersTest.java
index 03ea54850cb..33f79aaabca 100644
--- a/core/camel-core/src/test/java/org/apache/camel/support/jsse/KeyStoreParametersTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/support/jsse/KeyStoreParametersTest.java
@@ -26,6 +26,7 @@ import java.security.KeyStoreException;
import java.security.NoSuchProviderException;
import org.apache.camel.CamelContext;
+import org.apache.camel.impl.DefaultCamelContext;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertNotNull;
@@ -62,6 +63,7 @@ public class KeyStoreParametersTest extends AbstractJsseParametersTest {
@Test
public void testValidParameters() throws GeneralSecurityException, IOException, URISyntaxException {
KeyStoreParameters ksp = this.createMinimalKeyStoreParameters();
+ ksp.setCamelContext(new DefaultCamelContext());
KeyStore ks = ksp.createKeyStore();
assertNotNull(ks.getCertificate("localhost"));
@@ -73,7 +75,7 @@ public class KeyStoreParametersTest extends AbstractJsseParametersTest {
resourceUrl = this.getClass().getResource("/org/apache/camel/support/jsse/localhost.p12");
File file = new File(resourceUrl.toURI());
- ksp.setResource(file.getAbsolutePath());
+ ksp.setResource("file:" + file.getAbsolutePath());
ks = ksp.createKeyStore();
assertNotNull(ks.getCertificate("localhost"));
}
@@ -81,6 +83,7 @@ public class KeyStoreParametersTest extends AbstractJsseParametersTest {
@Test
public void testExplicitType() throws Exception {
KeyStoreParameters ksp = this.createMinimalKeyStoreParameters();
+ ksp.setCamelContext(new DefaultCamelContext());
ksp.setType("jks");
KeyStore ks = ksp.createKeyStore();
@@ -90,6 +93,7 @@ public class KeyStoreParametersTest extends AbstractJsseParametersTest {
@Test
public void testExplicitProvider() throws Exception {
KeyStoreParameters ksp = this.createMinimalKeyStoreParameters();
+ ksp.setCamelContext(new DefaultCamelContext());
ksp.setProvider(ksp.createKeyStore().getProvider().getName());
KeyStore ks = ksp.createKeyStore();
@@ -140,6 +144,7 @@ public class KeyStoreParametersTest extends AbstractJsseParametersTest {
@Test
public void testIncorrectPassword() throws Exception {
KeyStoreParameters ksp = this.createMinimalKeyStoreParameters();
+ ksp.setCamelContext(new DefaultCamelContext());
ksp.setPassword("");
try {
@@ -153,6 +158,7 @@ public class KeyStoreParametersTest extends AbstractJsseParametersTest {
@Test
public void testIncorrectResource() throws Exception {
KeyStoreParameters ksp = this.createMinimalKeyStoreParameters();
+ ksp.setCamelContext(new DefaultCamelContext());
ksp.setResource("");
try {
diff --git a/core/camel-core/src/test/java/org/apache/camel/support/jsse/TrustManagersParametersTest.java b/core/camel-core/src/test/java/org/apache/camel/support/jsse/TrustManagersParametersTest.java
index d97965ac572..4e7e0e4982b 100644
--- a/core/camel-core/src/test/java/org/apache/camel/support/jsse/TrustManagersParametersTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/support/jsse/TrustManagersParametersTest.java
@@ -25,6 +25,7 @@ import javax.net.ssl.TrustManagerFactory;
import javax.net.ssl.X509TrustManager;
import org.apache.camel.CamelContext;
+import org.apache.camel.impl.DefaultCamelContext;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
@@ -33,6 +34,7 @@ public class TrustManagersParametersTest extends AbstractJsseParametersTest {
protected KeyStoreParameters createMinimalKeyStoreParameters() {
KeyStoreParameters ksp = new KeyStoreParameters();
+ ksp.setCamelContext(new DefaultCamelContext());
ksp.setResource("org/apache/camel/support/jsse/localhost.p12");
ksp.setPassword("changeit");
@@ -42,8 +44,8 @@ public class TrustManagersParametersTest extends AbstractJsseParametersTest {
protected TrustManagersParameters createMinimalTrustManagersParameters() {
TrustManagersParameters tmp = new TrustManagersParameters();
+ tmp.setCamelContext(new DefaultCamelContext());
tmp.setKeyStore(this.createMinimalKeyStoreParameters());
-
return tmp;
}