This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push:
new aebe4f6 CAMEL-15345: camel-twitter - Should validate that mandatory
access token has been configured when creating endpoint to fail fast.
aebe4f6 is described below
commit aebe4f6d325c08c9cc8d40f5ceb36d47948f463c
Author: Claus Ibsen <[email protected]>
AuthorDate: Tue Jul 28 15:13:22 2020 +0200
CAMEL-15345: camel-twitter - Should validate that mandatory access token
has been configured when creating endpoint to fail fast.
---
.../camel/component/twitter/AbstractTwitterComponent.java | 5 ++++-
.../camel/component/twitter/AbstractTwitterEndpoint.java | 1 -
.../camel/component/twitter/UriConfigurationTest.java | 15 +++++++++++----
3 files changed, 15 insertions(+), 6 deletions(-)
diff --git
a/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/AbstractTwitterComponent.java
b/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/AbstractTwitterComponent.java
index 9d8c5a1..a042dc7 100644
---
a/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/AbstractTwitterComponent.java
+++
b/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/AbstractTwitterComponent.java
@@ -71,7 +71,10 @@ public abstract class AbstractTwitterComponent extends
DefaultComponent {
// and then override from parameters
setProperties(properties, parameters);
- return doCreateEndpoint(properties, uri, remaining, parameters);
+ Endpoint answer = doCreateEndpoint(properties, uri, remaining,
parameters);
+ // ensure properties have been configured with required options
+ properties.checkComplete();
+ return answer;
}
protected abstract Endpoint doCreateEndpoint(TwitterConfiguration
properties, String uri, String remaining, Map<String, Object> parameters)
throws Exception;
diff --git
a/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/AbstractTwitterEndpoint.java
b/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/AbstractTwitterEndpoint.java
index 705e3dd..ecb5591 100644
---
a/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/AbstractTwitterEndpoint.java
+++
b/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/AbstractTwitterEndpoint.java
@@ -53,7 +53,6 @@ public abstract class AbstractTwitterEndpoint extends
DefaultPollingEndpoint imp
}
@Override
- @ManagedAttribute
public TwitterConfiguration getProperties() {
return properties;
}
diff --git
a/components/camel-twitter/src/test/java/org/apache/camel/component/twitter/UriConfigurationTest.java
b/components/camel-twitter/src/test/java/org/apache/camel/component/twitter/UriConfigurationTest.java
index 8f02df9..d2497b5 100644
---
a/components/camel-twitter/src/test/java/org/apache/camel/component/twitter/UriConfigurationTest.java
+++
b/components/camel-twitter/src/test/java/org/apache/camel/component/twitter/UriConfigurationTest.java
@@ -47,7 +47,7 @@ public class UriConfigurationTest {
@Test
public void testPageSetting() throws Exception {
- Endpoint endpoint =
context.getEndpoint("twitter-search:foo?count=50&numberOfPages=2");
+ Endpoint endpoint =
context.getEndpoint("twitter-search:foo?count=50&numberOfPages=2&" +
support.getUriTokens());
assertTrue(endpoint instanceof TwitterSearchEndpoint, "Endpoint not a
TwitterSearchEndpoint: " + endpoint);
TwitterSearchEndpoint twitterEndpoint = (TwitterSearchEndpoint)
endpoint;
@@ -57,7 +57,7 @@ public class UriConfigurationTest {
@Test
public void testHttpProxySetting() throws Exception {
- Endpoint endpoint =
context.getEndpoint("twitter-search:foo?httpProxyHost=example.com&httpProxyPort=3338&httpProxyUser=test&httpProxyPassword=pwd");
+ Endpoint endpoint =
context.getEndpoint("twitter-search:foo?httpProxyHost=example.com&httpProxyPort=3338&httpProxyUser=test&httpProxyPassword=pwd&"
+ support.getUriTokens());
assertTrue(endpoint instanceof TwitterSearchEndpoint, "Endpoint not a
TwitterSearchEndpoint: " + endpoint);
TwitterSearchEndpoint twitterEndpoint = (TwitterSearchEndpoint)
endpoint;
@@ -69,18 +69,25 @@ public class UriConfigurationTest {
@Test
public void testDirectMessageEndpoint() throws Exception {
- Endpoint endpoint = context.getEndpoint("twitter-directmessage:foo");
+ Endpoint endpoint = context.getEndpoint("twitter-directmessage:foo?" +
support.getUriTokens());
assertTrue(endpoint instanceof TwitterDirectMessageEndpoint, "Endpoint
not a TwitterDirectMessageEndpoint: " + endpoint);
}
@Test
public void testSearchEndpoint() throws Exception {
- Endpoint endpoint = context.getEndpoint("twitter-search:foo");
+ Endpoint endpoint = context.getEndpoint("twitter-search:foo?" +
support.getUriTokens());
assertTrue(endpoint instanceof TwitterSearchEndpoint, "Endpoint not a
TwitterSearchEndpoint: " + endpoint);
}
@Test
public void testTimelineEndpoint() throws Exception {
+ // set on component level instead
+ AbstractTwitterComponent twitter =
context.getComponent("twitter-timeline", AbstractTwitterComponent.class);
+ twitter.setAccessToken(support.accessToken);
+ twitter.setAccessTokenSecret(support.accessTokenSecret);
+ twitter.setConsumerKey(support.consumerKey);
+ twitter.setConsumerSecret(support.consumerSecret);
+
Endpoint endpoint = context.getEndpoint("twitter-timeline:home");
assertTrue(endpoint instanceof TwitterTimelineEndpoint, "Endpoint not
a TwitterTimelineEndpoint: " + endpoint);
TwitterTimelineEndpoint timelineEndpoint =
(TwitterTimelineEndpoint)endpoint;