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