STREAMS-476: Remove guava dependency from streams-example project, this closes apache/incubator-streams#27
diff --git a/local/twitter-follow-neo4j/src/main/java/org/apache/streams/example/TwitterFollowNeo4j.java b/local/twitter-follow-neo4j/src/main/java/org/apache/streams/example/TwitterFollowNeo4j.java
index 5ffb6ed..e00e4a0 100644
--- a/local/twitter-follow-neo4j/src/main/java/org/apache/streams/example/TwitterFollowNeo4j.java
+++ b/local/twitter-follow-neo4j/src/main/java/org/apache/streams/example/TwitterFollowNeo4j.java
@@ -36,10 +36,12 @@
import org.apache.streams.twitter.converter.TwitterFollowActivityConverter;
import org.apache.streams.twitter.provider.TwitterFollowingProvider;
-import com.google.common.collect.Lists;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
/**
* Collects friend and follow connections for a set of twitter users and builds a graph
* database in neo4j.
@@ -48,7 +50,7 @@
private final static Logger LOGGER = LoggerFactory.getLogger(TwitterFollowNeo4j.class);
- TwitterFollowNeo4jConfiguration config;
+ private TwitterFollowNeo4jConfiguration config;
public TwitterFollowNeo4j() {
this(new ComponentConfigurator<>(TwitterFollowNeo4jConfiguration.class).detectConfiguration(StreamsConfigurator.getConfig()));
@@ -66,8 +68,8 @@
ActivityConverterProcessorConfiguration activityConverterProcessorConfiguration =
new ActivityConverterProcessorConfiguration()
- .withClassifiers(Lists.newArrayList((DocumentClassifier) new TwitterDocumentClassifier()))
- .withConverters(Lists.newArrayList((ActivityConverter) new TwitterFollowActivityConverter()));
+ .withClassifiers(Stream.of((DocumentClassifier) new TwitterDocumentClassifier()).collect(Collectors.toList()))
+ .withConverters(Stream.of((ActivityConverter) new TwitterFollowActivityConverter()).collect(Collectors.toList()));
ActivityConverterProcessor activity = new ActivityConverterProcessor(activityConverterProcessorConfiguration);
GraphHttpConfiguration graphWriterConfiguration = config.getGraph();
diff --git a/local/twitter-userstream-elasticsearch/src/main/java/org/apache/streams/example/TwitterUserstreamElasticsearch.java b/local/twitter-userstream-elasticsearch/src/main/java/org/apache/streams/example/TwitterUserstreamElasticsearch.java
index 369ec0b..61cd582 100644
--- a/local/twitter-userstream-elasticsearch/src/main/java/org/apache/streams/example/TwitterUserstreamElasticsearch.java
+++ b/local/twitter-userstream-elasticsearch/src/main/java/org/apache/streams/example/TwitterUserstreamElasticsearch.java
@@ -38,14 +38,15 @@
import org.apache.streams.verbs.ObjectCombination;
import org.apache.streams.verbs.VerbDefinition;
-import com.google.common.base.Preconditions;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
-import org.elasticsearch.common.Strings;
+import org.apache.commons.lang3.StringUtils;
+import org.hamcrest.MatcherAssert;
+import org.hamcrest.core.IsInstanceOf;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
/**
* Example stream that populates elasticsearch with activities from twitter userstream in real-time
@@ -60,9 +61,9 @@
private static VerbDefinition deleteVerbDefinition =
new VerbDefinition()
.withValue("delete")
- .withObjects(Lists.newArrayList(new ObjectCombination()));
+ .withObjects(Stream.of(new ObjectCombination()).collect(Collectors.toList()));
- TwitterUserstreamElasticsearchConfiguration config;
+ private TwitterUserstreamElasticsearchConfiguration config;
public TwitterUserstreamElasticsearch() {
this(new ComponentConfigurator<>(TwitterUserstreamElasticsearchConfiguration.class).detectConfiguration(StreamsConfigurator.getConfig()));
@@ -90,9 +91,9 @@
TwitterStreamProvider stream = new TwitterStreamProvider(twitterStreamConfiguration);
ActivityConverterProcessor converter = new ActivityConverterProcessor();
- VerbDefinitionDropFilter noDeletesProcessor = new VerbDefinitionDropFilter(Sets.newHashSet(deleteVerbDefinition));
+ VerbDefinitionDropFilter noDeletesProcessor = new VerbDefinitionDropFilter(Stream.of(deleteVerbDefinition).collect(Collectors.toSet()));
ElasticsearchPersistWriter writer = new ElasticsearchPersistWriter(elasticsearchWriterConfiguration);
- VerbDefinitionKeepFilter deleteOnlyProcessor = new VerbDefinitionKeepFilter(Sets.newHashSet(deleteVerbDefinition));
+ VerbDefinitionKeepFilter deleteOnlyProcessor = new VerbDefinitionKeepFilter(Stream.of(deleteVerbDefinition).collect(Collectors.toSet()));
SetDeleteIdProcessor setDeleteIdProcessor = new SetDeleteIdProcessor();
ElasticsearchPersistDeleter deleter = new ElasticsearchPersistDeleter(elasticsearchWriterConfiguration);
@@ -121,14 +122,14 @@
@Override
public List<StreamsDatum> process(StreamsDatum entry) {
- Preconditions.checkArgument(entry.getDocument() instanceof Activity);
+ MatcherAssert.assertThat(entry.getDocument(), IsInstanceOf.instanceOf(Activity.class));
String id = entry.getId();
// replace delete with post in id
// ensure ElasticsearchPersistDeleter will remove original post if present
- id = Strings.replace(id, "delete", "post");
+ id = StringUtils.replace(id, "delete", "post");
entry.setId(id);
- return Lists.newArrayList(entry);
+ return Stream.of(entry).collect(Collectors.toList());
}
@Override