From 484679d5c247c800f9c9c0772c5c99c35698406a Mon Sep 17 00:00:00 2001
From: Jeffrey Phillips Freeman <jeffrey.freeman@syncleus.com>
Date: Tue, 25 Oct 2016 20:40:29 -0400
Subject: [PATCH] Moved back to java 8, too many nbugs introduced by reverting.

Change-Id: I6240e469cdd47571c14e61a5036dde7d01b567de
---
 pom.xml                                         |  5 +++--
 .../com/syncleus/ferma/AbstractEdgeFrame.java   |  2 +-
 .../com/syncleus/ferma/AbstractVertexFrame.java |  2 +-
 .../com/syncleus/ferma/DefaultTraversable.java  | 10 +++++-----
 .../syncleus/ferma/DelegatingFramedGraph.java   |  6 +++---
 src/main/java/com/syncleus/ferma/EdgeFrame.java |  2 +-
 .../java/com/syncleus/ferma/FramedGraph.java    |  2 +-
 .../java/com/syncleus/ferma/Traversable.java    |  2 +-
 .../java/com/syncleus/ferma/VertexFrame.java    |  2 +-
 .../annotation/AdjacencyMethodHandler.java      |  2 +-
 .../annotation/InVertexMethodHandler.java       |  2 +-
 .../annotation/IncidenceMethodHandler.java      |  2 +-
 .../annotation/OutVertexMethodHandler.java      |  2 +-
 .../ferma/AbstractElementFrameTest.java         | 17 +++++++++--------
 .../java/com/syncleus/ferma/FramedEdgeTest.java |  2 +-
 .../com/syncleus/ferma/FramedGraphTest.java     |  2 +-
 .../com/syncleus/ferma/FramedVertexTest.java    |  2 +-
 src/test/java/com/syncleus/ferma/Person.java    |  2 +-
 .../ferma/PolymorphicTypeResolverTest.java      |  2 +-
 .../annotations/AdjacencyMethodHandlerTest.java |  2 +-
 .../annotations/InVertexMethodHandlerTest.java  |  2 +-
 .../annotations/IncidenceMethodHandlerTest.java |  2 +-
 .../annotations/OutVertexMethodHandlerTest.java |  2 +-
 .../annotations/PropertyMethodHandlerTest.java  |  2 +-
 24 files changed, 40 insertions(+), 38 deletions(-)

diff --git a/pom.xml b/pom.xml
index ea28d8b3..ea988e85 100644
--- a/pom.xml
+++ b/pom.xml
@@ -205,8 +205,8 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
                 <configuration>
-                    <source>1.7</source>
-                    <target>1.7</target>
+                    <source>1.8</source>
+                    <target>1.8</target>
                 </configuration>
             </plugin>
             <plugin>
@@ -269,3 +269,4 @@
     </profiles>
 </project>
  
+ 
diff --git a/src/main/java/com/syncleus/ferma/AbstractEdgeFrame.java b/src/main/java/com/syncleus/ferma/AbstractEdgeFrame.java
index 5e889d95..2f0526d3 100644
--- a/src/main/java/com/syncleus/ferma/AbstractEdgeFrame.java
+++ b/src/main/java/com/syncleus/ferma/AbstractEdgeFrame.java
@@ -23,7 +23,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.google.gson.JsonObject;
diff --git a/src/main/java/com/syncleus/ferma/AbstractVertexFrame.java b/src/main/java/com/syncleus/ferma/AbstractVertexFrame.java
index 3183de4b..503f310f 100644
--- a/src/main/java/com/syncleus/ferma/AbstractVertexFrame.java
+++ b/src/main/java/com/syncleus/ferma/AbstractVertexFrame.java
@@ -23,7 +23,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.google.gson.JsonObject;
diff --git a/src/main/java/com/syncleus/ferma/DefaultTraversable.java b/src/main/java/com/syncleus/ferma/DefaultTraversable.java
index fbf112e1..f5d87b65 100644
--- a/src/main/java/com/syncleus/ferma/DefaultTraversable.java
+++ b/src/main/java/com/syncleus/ferma/DefaultTraversable.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
@@ -125,7 +125,7 @@ public class DefaultTraversable<PE, E> implements Traversable<PE, E>{
 
     @Override
     public <N> List<? extends N> next(final int amount, final Class<N> kind) {
-        return Lists.transform((List<Element>) this.baseTraversal.next(amount), new Function<Element, N>() {
+        return Lists.transform((List<Element>) this.baseTraversal.next(amount), new com.google.common.base.Function<Element, N>() {
             @Override
             public N apply(final Element input) {
                 return parentGraph.frameElement(input, kind);
@@ -135,7 +135,7 @@ public class DefaultTraversable<PE, E> implements Traversable<PE, E>{
 
     @Override
     public <N> List<? extends N> nextExplicit(final int amount, final Class<N> kind) {
-        return Lists.transform((List<Element>) this.baseTraversal.next(amount), new Function<Element, N>() {
+        return Lists.transform((List<Element>) this.baseTraversal.next(amount), new com.google.common.base.Function<Element, N>() {
             @Override
             public N apply(final Element input) {
                 return parentGraph.frameElementExplicit(input, kind);
@@ -175,7 +175,7 @@ public class DefaultTraversable<PE, E> implements Traversable<PE, E>{
 
     @Override
     public <N> List<? extends N> toList(final Class<N> kind) {
-        return Lists.transform((List<Element>) this.baseTraversal.toList(), new Function<Element, N>() {
+        return Lists.transform((List<Element>) this.baseTraversal.toList(), new com.google.common.base.Function<Element, N>() {
             @Override
             public N apply(final Element input) {
                 return parentGraph.frameElement(input, kind);
@@ -185,7 +185,7 @@ public class DefaultTraversable<PE, E> implements Traversable<PE, E>{
 
     @Override
     public <N> List<? extends N> toListExplicit(final Class<N> kind) {
-        return Lists.transform((List<Element>) this.baseTraversal.toList(), new Function<Element, N>() {
+        return Lists.transform((List<Element>) this.baseTraversal.toList(), new com.google.common.base.Function<Element, N>() {
             @Override
             public N apply(final Element input) {
                 return parentGraph.frameElementExplicit(input, kind);
diff --git a/src/main/java/com/syncleus/ferma/DelegatingFramedGraph.java b/src/main/java/com/syncleus/ferma/DelegatingFramedGraph.java
index a4a50a8f..687c20dc 100644
--- a/src/main/java/com/syncleus/ferma/DelegatingFramedGraph.java
+++ b/src/main/java/com/syncleus/ferma/DelegatingFramedGraph.java
@@ -23,7 +23,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.framefactories.FrameFactory;
 import com.syncleus.ferma.framefactories.DefaultFrameFactory;
 import com.syncleus.ferma.typeresolvers.UntypedTypeResolver;
@@ -260,7 +260,7 @@ public class DelegatingFramedGraph<G extends Graph> implements WrappedFramedGrap
 
     @Override
     public <T> Iterator<? extends T> frame(final Iterator<? extends Element> pipeline, final Class<T> kind) {
-        return Iterators.transform(pipeline, new Function<Element, T>() {
+        return Iterators.transform(pipeline, new com.google.common.base.Function<Element, T>() {
 
             @Override
             public T apply(final Element input) {
@@ -298,7 +298,7 @@ public class DelegatingFramedGraph<G extends Graph> implements WrappedFramedGrap
 
     @Override
     public <T> Iterator<? extends T> frameExplicit(final Iterator<? extends Element> pipeline, final Class<T> kind) {
-        return Iterators.transform(pipeline, new Function<Element, T>() {
+        return Iterators.transform(pipeline, new com.google.common.base.Function<Element, T>() {
 
             @Override
             public T apply(final Element input) {
diff --git a/src/main/java/com/syncleus/ferma/EdgeFrame.java b/src/main/java/com/syncleus/ferma/EdgeFrame.java
index 7be76720..e4cc82ac 100644
--- a/src/main/java/com/syncleus/ferma/EdgeFrame.java
+++ b/src/main/java/com/syncleus/ferma/EdgeFrame.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.google.gson.JsonObject;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
 import org.apache.tinkerpop.gremlin.structure.Edge;
diff --git a/src/main/java/com/syncleus/ferma/FramedGraph.java b/src/main/java/com/syncleus/ferma/FramedGraph.java
index 6b5d1618..0ca6bc9d 100644
--- a/src/main/java/com/syncleus/ferma/FramedGraph.java
+++ b/src/main/java/com/syncleus/ferma/FramedGraph.java
@@ -15,7 +15,6 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
 import com.syncleus.ferma.framefactories.FrameFactory;
 import com.syncleus.ferma.typeresolvers.TypeResolver;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
@@ -23,6 +22,7 @@ import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSo
 import org.apache.tinkerpop.gremlin.structure.*;
 import java.io.IOException;
 import java.util.Iterator;
+import java.util.function.Function;
 
 /**
  * The primary class for framing your blueprints graphs.
diff --git a/src/main/java/com/syncleus/ferma/Traversable.java b/src/main/java/com/syncleus/ferma/Traversable.java
index e59df589..d92d856e 100644
--- a/src/main/java/com/syncleus/ferma/Traversable.java
+++ b/src/main/java/com/syncleus/ferma/Traversable.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
 import java.util.Iterator;
 import java.util.List;
diff --git a/src/main/java/com/syncleus/ferma/VertexFrame.java b/src/main/java/com/syncleus/ferma/VertexFrame.java
index fb98cc8c..3bf85d51 100644
--- a/src/main/java/com/syncleus/ferma/VertexFrame.java
+++ b/src/main/java/com/syncleus/ferma/VertexFrame.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.google.gson.JsonObject;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
 import org.apache.tinkerpop.gremlin.structure.Element;
diff --git a/src/main/java/com/syncleus/ferma/framefactories/annotation/AdjacencyMethodHandler.java b/src/main/java/com/syncleus/ferma/framefactories/annotation/AdjacencyMethodHandler.java
index 4b55e599..0b521d16 100644
--- a/src/main/java/com/syncleus/ferma/framefactories/annotation/AdjacencyMethodHandler.java
+++ b/src/main/java/com/syncleus/ferma/framefactories/annotation/AdjacencyMethodHandler.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma.framefactories.annotation;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.typeresolvers.TypeResolver;
 import com.syncleus.ferma.*;
 import com.syncleus.ferma.annotations.Adjacency;
diff --git a/src/main/java/com/syncleus/ferma/framefactories/annotation/InVertexMethodHandler.java b/src/main/java/com/syncleus/ferma/framefactories/annotation/InVertexMethodHandler.java
index 81850df6..4d01ce4f 100644
--- a/src/main/java/com/syncleus/ferma/framefactories/annotation/InVertexMethodHandler.java
+++ b/src/main/java/com/syncleus/ferma/framefactories/annotation/InVertexMethodHandler.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma.framefactories.annotation;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.EdgeFrame;
 import com.syncleus.ferma.annotations.InVertex;
 import net.bytebuddy.dynamic.DynamicType;
diff --git a/src/main/java/com/syncleus/ferma/framefactories/annotation/IncidenceMethodHandler.java b/src/main/java/com/syncleus/ferma/framefactories/annotation/IncidenceMethodHandler.java
index 27026fbc..f63b4cc9 100644
--- a/src/main/java/com/syncleus/ferma/framefactories/annotation/IncidenceMethodHandler.java
+++ b/src/main/java/com/syncleus/ferma/framefactories/annotation/IncidenceMethodHandler.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma.framefactories.annotation;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.typeresolvers.TypeResolver;
 import com.syncleus.ferma.*;
 import com.syncleus.ferma.annotations.Incidence;
diff --git a/src/main/java/com/syncleus/ferma/framefactories/annotation/OutVertexMethodHandler.java b/src/main/java/com/syncleus/ferma/framefactories/annotation/OutVertexMethodHandler.java
index 0a7b4398..ae6f51aa 100644
--- a/src/main/java/com/syncleus/ferma/framefactories/annotation/OutVertexMethodHandler.java
+++ b/src/main/java/com/syncleus/ferma/framefactories/annotation/OutVertexMethodHandler.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma.framefactories.annotation;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.EdgeFrame;
 import com.syncleus.ferma.annotations.OutVertex;
 import net.bytebuddy.dynamic.DynamicType;
diff --git a/src/test/java/com/syncleus/ferma/AbstractElementFrameTest.java b/src/test/java/com/syncleus/ferma/AbstractElementFrameTest.java
index 6b6e4363..eefdd371 100644
--- a/src/test/java/com/syncleus/ferma/AbstractElementFrameTest.java
+++ b/src/test/java/com/syncleus/ferma/AbstractElementFrameTest.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
 import org.apache.tinkerpop.gremlin.structure.Element;
@@ -102,13 +102,14 @@ public class AbstractElementFrameTest {
 
     @Test
     public void testEById() {
-        final Knows knows = fg.traverse(new Function<GraphTraversalSource, GraphTraversal<?, ?>>() {
-            @Nullable
-            @Override
-            public GraphTraversal<?, ?> apply(@Nullable final GraphTraversalSource input) {
-                return input.E(e1.<Long>getId());
-            }
-        }).next(Knows.class);
+        final Knows knows = fg.traverse((GraphTraversalSource s) -> {return s.E(e1.<Long>getId());}).next(Knows.class);
+//        final Knows knows = fg.traverse(new Function<GraphTraversalSource, GraphTraversal<?, ?>>() {
+//            @Nullable
+//            @Override
+//            public GraphTraversal<?, ?> apply(@Nullable final GraphTraversalSource input) {
+//                return input.E(e1.<Long>getId());
+//            }
+//        }).next(Knows.class);
         Assert.assertEquals(e1, knows);
     }
 
diff --git a/src/test/java/com/syncleus/ferma/FramedEdgeTest.java b/src/test/java/com/syncleus/ferma/FramedEdgeTest.java
index f244f668..29555201 100644
--- a/src/test/java/com/syncleus/ferma/FramedEdgeTest.java
+++ b/src/test/java/com/syncleus/ferma/FramedEdgeTest.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
 import org.apache.tinkerpop.gremlin.structure.Edge;
 import org.apache.tinkerpop.gremlin.structure.Graph;
diff --git a/src/test/java/com/syncleus/ferma/FramedGraphTest.java b/src/test/java/com/syncleus/ferma/FramedGraphTest.java
index 2d341cad..52b29e78 100644
--- a/src/test/java/com/syncleus/ferma/FramedGraphTest.java
+++ b/src/test/java/com/syncleus/ferma/FramedGraphTest.java
@@ -20,7 +20,7 @@ import static org.junit.Assert.assertEquals;
 import java.util.Iterator;
 import java.util.List;
 import java.util.function.Consumer;
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.google.common.collect.Lists;
 import com.syncleus.ferma.framefactories.FrameFactory;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
diff --git a/src/test/java/com/syncleus/ferma/FramedVertexTest.java b/src/test/java/com/syncleus/ferma/FramedVertexTest.java
index 634badc3..4d87482f 100644
--- a/src/test/java/com/syncleus/ferma/FramedVertexTest.java
+++ b/src/test/java/com/syncleus/ferma/FramedVertexTest.java
@@ -18,7 +18,7 @@ package com.syncleus.ferma;
 import java.util.HashMap;
 import java.util.Map;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
 import org.apache.tinkerpop.gremlin.structure.Graph;
 import org.apache.tinkerpop.gremlin.structure.Vertex;
diff --git a/src/test/java/com/syncleus/ferma/Person.java b/src/test/java/com/syncleus/ferma/Person.java
index 6a9a368f..7291124d 100644
--- a/src/test/java/com/syncleus/ferma/Person.java
+++ b/src/test/java/com/syncleus/ferma/Person.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.google.common.collect.Lists;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
 import org.apache.tinkerpop.gremlin.structure.Element;
diff --git a/src/test/java/com/syncleus/ferma/PolymorphicTypeResolverTest.java b/src/test/java/com/syncleus/ferma/PolymorphicTypeResolverTest.java
index 15a265d7..2cea0299 100644
--- a/src/test/java/com/syncleus/ferma/PolymorphicTypeResolverTest.java
+++ b/src/test/java/com/syncleus/ferma/PolymorphicTypeResolverTest.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.typeresolvers.PolymorphicTypeResolver;
 import com.syncleus.ferma.framefactories.annotation.AnnotationFrameFactory;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
diff --git a/src/test/java/com/syncleus/ferma/annotations/AdjacencyMethodHandlerTest.java b/src/test/java/com/syncleus/ferma/annotations/AdjacencyMethodHandlerTest.java
index ca4a6041..2b351fe5 100644
--- a/src/test/java/com/syncleus/ferma/annotations/AdjacencyMethodHandlerTest.java
+++ b/src/test/java/com/syncleus/ferma/annotations/AdjacencyMethodHandlerTest.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma.annotations;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.*;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
 import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
diff --git a/src/test/java/com/syncleus/ferma/annotations/InVertexMethodHandlerTest.java b/src/test/java/com/syncleus/ferma/annotations/InVertexMethodHandlerTest.java
index 8b881138..a60478a5 100644
--- a/src/test/java/com/syncleus/ferma/annotations/InVertexMethodHandlerTest.java
+++ b/src/test/java/com/syncleus/ferma/annotations/InVertexMethodHandlerTest.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma.annotations;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.DelegatingFramedGraph;
 import com.syncleus.ferma.FramedGraph;
 import com.syncleus.ferma.VertexFrame;
diff --git a/src/test/java/com/syncleus/ferma/annotations/IncidenceMethodHandlerTest.java b/src/test/java/com/syncleus/ferma/annotations/IncidenceMethodHandlerTest.java
index f0a9afb0..1aa04b3d 100644
--- a/src/test/java/com/syncleus/ferma/annotations/IncidenceMethodHandlerTest.java
+++ b/src/test/java/com/syncleus/ferma/annotations/IncidenceMethodHandlerTest.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma.annotations;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.DelegatingFramedGraph;
 import com.syncleus.ferma.EdgeFrame;
 import com.syncleus.ferma.FramedGraph;
diff --git a/src/test/java/com/syncleus/ferma/annotations/OutVertexMethodHandlerTest.java b/src/test/java/com/syncleus/ferma/annotations/OutVertexMethodHandlerTest.java
index 1036275c..9cc30202 100644
--- a/src/test/java/com/syncleus/ferma/annotations/OutVertexMethodHandlerTest.java
+++ b/src/test/java/com/syncleus/ferma/annotations/OutVertexMethodHandlerTest.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma.annotations;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.DelegatingFramedGraph;
 import com.syncleus.ferma.FramedGraph;
 import com.syncleus.ferma.VertexFrame;
diff --git a/src/test/java/com/syncleus/ferma/annotations/PropertyMethodHandlerTest.java b/src/test/java/com/syncleus/ferma/annotations/PropertyMethodHandlerTest.java
index e6285006..602163b1 100644
--- a/src/test/java/com/syncleus/ferma/annotations/PropertyMethodHandlerTest.java
+++ b/src/test/java/com/syncleus/ferma/annotations/PropertyMethodHandlerTest.java
@@ -15,7 +15,7 @@
  */
 package com.syncleus.ferma.annotations;
 
-import com.google.common.base.Function;
+import java.util.function.Function;
 import com.syncleus.ferma.DelegatingFramedGraph;
 import com.syncleus.ferma.FramedGraph;
 import com.syncleus.ferma.VertexFrame;
-- 
GitLab