From de542b8196c06644620d8c5e5a52a1ec11052d5e Mon Sep 17 00:00:00 2001 From: Jeffrey Phillips Freeman <jeffrey.freeman@syncleus.com> Date: Mon, 10 Nov 2014 07:39:49 -0500 Subject: [PATCH] Fixed tons of various technical debt. Change-Id: I4a5a0cd8040cf352a9a4768abbe8bc06e8376978 --- .../graph/AbstractSignalMultiplyingEdge.java | 24 +++++++++- .../grail/graph/GrailGraphFactory.java | 21 ++++++++- .../com/syncleus/grail/graph/GrailModule.java | 20 ++++++++- .../java/com/syncleus/grail/graph/Node.java | 18 ++++++++ .../grail/graph/SignalMultiplyingEdge.java | 20 ++++++++- .../com/syncleus/grail/graph/SignalNode.java | 18 ++++++++ .../com/syncleus/grail/graph/Signaler.java | 19 +++++++- .../syncleus/grail/graph/TypedAdjacency.java | 18 ++++++++ .../graph/TypedAdjacencyMethodHandler.java | 30 ++++++++++--- .../syncleus/grail/graph/TypedIncidence.java | 18 ++++++++ .../graph/TypedIncidenceMethodHandler.java | 44 +++++++++++++------ .../com/syncleus/grail/graph/Weighted.java | 22 +++++++++- .../graph/action/AbstractActionTrigger.java | 20 ++++++++- .../action/AbstractPrioritySerialTrigger.java | 22 +++++++++- .../syncleus/grail/graph/action/Action.java | 18 ++++++++ .../grail/graph/action/ActionTrigger.java | 18 ++++++++ .../grail/graph/action/ActionTriggerEdge.java | 18 ++++++++ .../graph/action/PrioritySerialTrigger.java | 18 ++++++++ .../action/PrioritySerialTriggerEdge.java | 18 ++++++++ .../neural/AbstractActivationNeuron.java | 18 ++++++++ .../grail/neural/ActivationNeuron.java | 18 ++++++++ .../neural/activation/ActivationFunction.java | 18 ++++++++ .../HyperbolicTangentActivationFunction.java | 21 ++++++++- .../activation/SineActivationFunction.java | 18 ++++++++ .../backprop/AbstractBackpropNeuron.java | 21 ++++++++- .../grail/neural/backprop/BackpropNeuron.java | 18 ++++++++ .../neural/backprop/BackpropSynapse.java | 19 +++++++- .../syncleus/grail/neural/package-info.java | 20 ++++++++- .../java/com/syncleus/grail/package-info.java | 20 ++++++++- .../grail/graph/BlankGraphFactory.java | 18 ++++++++ .../syncleus/grail/graph/ExceptionGod.java | 18 ++++++++ .../com/syncleus/grail/graph/FatherEdge.java | 18 ++++++++ .../java/com/syncleus/grail/graph/God.java | 18 ++++++++ .../com/syncleus/grail/graph/GodExtended.java | 18 ++++++++ .../com/syncleus/grail/graph/Location.java | 18 ++++++++ .../grail/graph/LocationExtended.java | 18 ++++++++ .../graph/MockTransactionalTinkerGraph.java | 18 ++++++++ .../graph/titangraph/BlueprintsTest.java | 18 ++++++++ .../grail/graph/titangraph/FramesTest.java | 18 ++++++++ .../grail/graph/titangraph/GremlinTest.java | 18 ++++++++ .../grail/graph/titangraph/TitanGods.java | 18 ++++++++ .../titangraph/TypedAdjacencyHandlerTest.java | 18 ++++++++ .../titangraph/TypedIncidenceHandlerTest.java | 18 ++++++++ .../backprop/ActionTriggerXor3InputTest.java | 18 ++++++++ .../grail/neural/backprop/SimpleOrTest.java | 18 ++++++++ .../neural/backprop/SimpleXor2InputTest.java | 18 ++++++++ .../neural/backprop/SimpleXor3InputTest.java | 18 ++++++++ 47 files changed, 883 insertions(+), 36 deletions(-) diff --git a/src/main/java/com/syncleus/grail/graph/AbstractSignalMultiplyingEdge.java b/src/main/java/com/syncleus/grail/graph/AbstractSignalMultiplyingEdge.java index 6d075c5..8e27cf4 100644 --- a/src/main/java/com/syncleus/grail/graph/AbstractSignalMultiplyingEdge.java +++ b/src/main/java/com/syncleus/grail/graph/AbstractSignalMultiplyingEdge.java @@ -1,16 +1,36 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; -import com.tinkerpop.frames.EdgeFrame; import com.tinkerpop.frames.modules.javahandler.*; import java.util.Random; public abstract class AbstractSignalMultiplyingEdge implements SignalMultiplyingEdge { private static final Random RANDOM = new Random(); + private static final double RANGE = 2.0; + private static final double OFFSET = -1.0; + private static final double SCALE = 1.0 / 10.0; @Initializer public void init() { - this.setWeight(((RANDOM.nextDouble() * 2.0) - 1.0) / 10.0); + this.setWeight(((AbstractSignalMultiplyingEdge.RANDOM.nextDouble() * AbstractSignalMultiplyingEdge.RANGE) + AbstractSignalMultiplyingEdge.OFFSET) * AbstractSignalMultiplyingEdge.SCALE); } @Override diff --git a/src/main/java/com/syncleus/grail/graph/GrailGraphFactory.java b/src/main/java/com/syncleus/grail/graph/GrailGraphFactory.java index 6fd3ead..20bcfc7 100644 --- a/src/main/java/com/syncleus/grail/graph/GrailGraphFactory.java +++ b/src/main/java/com/syncleus/grail/graph/GrailGraphFactory.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.syncleus.grail.graph.action.*; @@ -52,8 +70,7 @@ public class GrailGraphFactory extends FramedGraphFactory { } private static JavaHandlerModule constructHandlerModule() { - final JavaHandlerModule module = new JavaHandlerModule(); - return module; + return new JavaHandlerModule(); } private static Module[] combineModules(final Collection<? extends Module> modules, Module... additionalModules) { diff --git a/src/main/java/com/syncleus/grail/graph/GrailModule.java b/src/main/java/com/syncleus/grail/graph/GrailModule.java index ad47e6c..68319f7 100644 --- a/src/main/java/com/syncleus/grail/graph/GrailModule.java +++ b/src/main/java/com/syncleus/grail/graph/GrailModule.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.blueprints.Graph; @@ -42,7 +60,7 @@ public class GrailModule implements Module { } private static void constructTypedHierarchyRecursive(final Map<String, Set<String>> hierarchy, final Class<?>[] parents, final Set<String> childrenSeen) { - for( Class<?> parent : parents ) { + for( final Class<?> parent : parents ) { final TypeValue typeValue = GrailModule.determineTypeValue(parent); //this parent has a type value, so add all the children to it diff --git a/src/main/java/com/syncleus/grail/graph/Node.java b/src/main/java/com/syncleus/grail/graph/Node.java index 3d79e2c..6ad2bfc 100644 --- a/src/main/java/com/syncleus/grail/graph/Node.java +++ b/src/main/java/com/syncleus/grail/graph/Node.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.frames.VertexFrame; diff --git a/src/main/java/com/syncleus/grail/graph/SignalMultiplyingEdge.java b/src/main/java/com/syncleus/grail/graph/SignalMultiplyingEdge.java index f195982..ee9d501 100644 --- a/src/main/java/com/syncleus/grail/graph/SignalMultiplyingEdge.java +++ b/src/main/java/com/syncleus/grail/graph/SignalMultiplyingEdge.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.frames.*; @@ -13,4 +31,4 @@ public interface SignalMultiplyingEdge extends Weighted, Signaler, EdgeFrame { @JavaHandler void propagate(); -} \ No newline at end of file +} diff --git a/src/main/java/com/syncleus/grail/graph/SignalNode.java b/src/main/java/com/syncleus/grail/graph/SignalNode.java index 328c62e..6b5ec40 100644 --- a/src/main/java/com/syncleus/grail/graph/SignalNode.java +++ b/src/main/java/com/syncleus/grail/graph/SignalNode.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; public interface SignalNode extends Signaler, Node { diff --git a/src/main/java/com/syncleus/grail/graph/Signaler.java b/src/main/java/com/syncleus/grail/graph/Signaler.java index d904550..0e13282 100644 --- a/src/main/java/com/syncleus/grail/graph/Signaler.java +++ b/src/main/java/com/syncleus/grail/graph/Signaler.java @@ -1,7 +1,24 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.frames.Property; -import com.tinkerpop.frames.modules.typedgraph.TypeField; public interface Signaler { @Property("signal") diff --git a/src/main/java/com/syncleus/grail/graph/TypedAdjacency.java b/src/main/java/com/syncleus/grail/graph/TypedAdjacency.java index 4af11fb..35331ba 100644 --- a/src/main/java/com/syncleus/grail/graph/TypedAdjacency.java +++ b/src/main/java/com/syncleus/grail/graph/TypedAdjacency.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.blueprints.Direction; diff --git a/src/main/java/com/syncleus/grail/graph/TypedAdjacencyMethodHandler.java b/src/main/java/com/syncleus/grail/graph/TypedAdjacencyMethodHandler.java index f232c1a..a2ebf81 100644 --- a/src/main/java/com/syncleus/grail/graph/TypedAdjacencyMethodHandler.java +++ b/src/main/java/com/syncleus/grail/graph/TypedAdjacencyMethodHandler.java @@ -1,8 +1,25 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.blueprints.*; import com.tinkerpop.frames.*; -import com.tinkerpop.frames.annotations.AdjacencyAnnotationHandler; import com.tinkerpop.frames.modules.MethodHandler; import com.tinkerpop.frames.modules.typedgraph.*; import com.tinkerpop.gremlin.Tokens; @@ -74,7 +91,7 @@ public class TypedAdjacencyMethodHandler implements MethodHandler<TypedAdjacency private Iterable getNodes(final Class type, final Direction direction, final String label, final FramedGraph<?> framedGraph, final Vertex vertex) { final TypeValue typeValue = TypedAdjacencyMethodHandler.determineTypeValue(type); final TypeField typeField = TypedAdjacencyMethodHandler.determineTypeField(type); - Set<String> allAllowedValues = this.hierarchy.get(typeValue.value()); + final Set<String> allAllowedValues = this.hierarchy.get(typeValue.value()); switch(direction) { case BOTH: return framedGraph.frameVertices((Iterable<Vertex>) new GremlinPipeline<Vertex, Vertex>(vertex).both(label).has(typeField.value(), Tokens.T.in, allAllowedValues), type); @@ -141,14 +158,15 @@ public class TypedAdjacencyMethodHandler implements MethodHandler<TypedAdjacency private static TypeField determineTypeField(final Class<?> type) { TypeField typeField = type.getAnnotation(TypeField.class); if( typeField == null ) { - Class<?>[] parents = type.getInterfaces(); + final Class<?>[] parents = type.getInterfaces(); for( final Class<?> parent : parents ) { typeField = TypedAdjacencyMethodHandler.determineTypeFieldRecursive(parent); if( typeField != null ) return typeField; } - if( typeField == null ) - throw new IllegalArgumentException("The specified type does not have a parent with a typeField annotation."); + + //we know typeField must still be null since we didnt return a value yet + throw new IllegalArgumentException("The specified type does not have a parent with a typeField annotation."); } return typeField; @@ -157,7 +175,7 @@ public class TypedAdjacencyMethodHandler implements MethodHandler<TypedAdjacency private static TypeField determineTypeFieldRecursive(final Class<?> type) { TypeField typeField = type.getAnnotation(TypeField.class); if( typeField == null ) { - Class<?>[] parents = type.getInterfaces(); + final Class<?>[] parents = type.getInterfaces(); for( final Class<?> parent : parents ) { typeField = TypedAdjacencyMethodHandler.determineTypeFieldRecursive(parent); if( typeField != null ) diff --git a/src/main/java/com/syncleus/grail/graph/TypedIncidence.java b/src/main/java/com/syncleus/grail/graph/TypedIncidence.java index a589dbd..ffe9e64 100644 --- a/src/main/java/com/syncleus/grail/graph/TypedIncidence.java +++ b/src/main/java/com/syncleus/grail/graph/TypedIncidence.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.blueprints.Direction; diff --git a/src/main/java/com/syncleus/grail/graph/TypedIncidenceMethodHandler.java b/src/main/java/com/syncleus/grail/graph/TypedIncidenceMethodHandler.java index 6d40c22..491f241 100644 --- a/src/main/java/com/syncleus/grail/graph/TypedIncidenceMethodHandler.java +++ b/src/main/java/com/syncleus/grail/graph/TypedIncidenceMethodHandler.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.blueprints.*; @@ -5,8 +23,6 @@ import com.tinkerpop.frames.*; import com.tinkerpop.frames.modules.MethodHandler; import com.tinkerpop.frames.modules.typedgraph.*; import com.tinkerpop.gremlin.java.GremlinPipeline; - -import java.lang.annotation.Annotation; import java.lang.reflect.*; import java.util.*; @@ -28,7 +44,6 @@ public class TypedIncidenceMethodHandler implements MethodHandler<TypedIncidence if( ! (element instanceof Vertex) ) throw new IllegalStateException("element is not a type of Vertex " + element.getClass().getName()); - final Vertex vertex = (Vertex) element; if(annotation.label() == null) throw new IllegalStateException("method " + method.getName() + " label must be specified on @TypedIncidence annotation"); @@ -42,6 +57,8 @@ public class TypedIncidenceMethodHandler implements MethodHandler<TypedIncidence final Class type = (Class) arguments[0]; + final Vertex vertex = (Vertex) element; + if( method.getReturnType().isAssignableFrom(Iterable.class)) return TypedIncidenceMethodHandler.getEdges(type, annotation.direction(), annotation.label(), framedGraph, vertex); @@ -60,12 +77,12 @@ public class TypedIncidenceMethodHandler implements MethodHandler<TypedIncidence final TypeField typeField = TypedIncidenceMethodHandler.determineTypeField(type); switch(direction) { case BOTH: - return framedGraph.frameEdges((Iterable<com.tinkerpop.blueprints.Edge>) new GremlinPipeline<Vertex, Vertex>(vertex).bothE(label).has(typeField.value(), typeValue.value()), type); + return framedGraph.frameEdges((Iterable<Edge>) new GremlinPipeline<Vertex, Vertex>(vertex).bothE(label).has(typeField.value(), typeValue.value()), type); case IN: - return framedGraph.frameEdges((Iterable<com.tinkerpop.blueprints.Edge>) new GremlinPipeline<Vertex, Vertex>(vertex).inE(label).has(typeField.value(), typeValue.value()), type); + return framedGraph.frameEdges((Iterable<Edge>) new GremlinPipeline<Vertex, Vertex>(vertex).inE(label).has(typeField.value(), typeValue.value()), type); //Assume out direction default: - return framedGraph.frameEdges((Iterable<com.tinkerpop.blueprints.Edge>) new GremlinPipeline<Vertex, Vertex>(vertex).outE(label).has(typeField.value(), typeValue.value()), type); + return framedGraph.frameEdges((Iterable<Edge>) new GremlinPipeline<Vertex, Vertex>(vertex).outE(label).has(typeField.value(), typeValue.value()), type); } } @@ -75,12 +92,12 @@ public class TypedIncidenceMethodHandler implements MethodHandler<TypedIncidence final TypeField typeField = TypedIncidenceMethodHandler.determineTypeField(type); switch(direction) { case BOTH: - return framedGraph.frame((com.tinkerpop.blueprints.Edge) new GremlinPipeline<Vertex, Vertex>(vertex).bothE(label).has(typeField.value(), typeValue.value()).next(), type); + return framedGraph.frame((Edge) new GremlinPipeline<Vertex, Vertex>(vertex).bothE(label).has(typeField.value(), typeValue.value()).next(), type); case IN: - return framedGraph.frame((com.tinkerpop.blueprints.Edge) new GremlinPipeline<Vertex, Vertex>(vertex).inE(label).has(typeField.value(), typeValue.value()).next(), type); + return framedGraph.frame((Edge) new GremlinPipeline<Vertex, Vertex>(vertex).inE(label).has(typeField.value(), typeValue.value()).next(), type); //Assume out direction default: - return framedGraph.frame((com.tinkerpop.blueprints.Edge) new GremlinPipeline<Vertex, Vertex>(vertex).outE(label).has(typeField.value(), typeValue.value()).next(), type); + return framedGraph.frame((Edge) new GremlinPipeline<Vertex, Vertex>(vertex).outE(label).has(typeField.value(), typeValue.value()).next(), type); } } @@ -99,14 +116,15 @@ public class TypedIncidenceMethodHandler implements MethodHandler<TypedIncidence private static TypeField determineTypeField(final Class<?> type) { TypeField typeField = type.getAnnotation(TypeField.class); if( typeField == null ) { - Class<?>[] parents = type.getInterfaces(); + final Class<?>[] parents = type.getInterfaces(); for( final Class<?> parent : parents ) { typeField = TypedIncidenceMethodHandler.determineTypeFieldRecursive(parent); if( typeField != null ) return typeField; } - if( typeField == null ) - throw new IllegalArgumentException("The specified type does not have a parent with a typeField annotation."); + + //typeField is known to still be null. + throw new IllegalArgumentException("The specified type does not have a parent with a typeField annotation."); } return typeField; @@ -115,7 +133,7 @@ public class TypedIncidenceMethodHandler implements MethodHandler<TypedIncidence private static TypeField determineTypeFieldRecursive(final Class<?> type) { TypeField typeField = type.getAnnotation(TypeField.class); if( typeField == null ) { - Class<?>[] parents = type.getInterfaces(); + final Class<?>[] parents = type.getInterfaces(); for( final Class<?> parent : parents ) { typeField = TypedIncidenceMethodHandler.determineTypeFieldRecursive(parent); if( typeField != null ) diff --git a/src/main/java/com/syncleus/grail/graph/Weighted.java b/src/main/java/com/syncleus/grail/graph/Weighted.java index 44cf3a1..7216652 100644 --- a/src/main/java/com/syncleus/grail/graph/Weighted.java +++ b/src/main/java/com/syncleus/grail/graph/Weighted.java @@ -1,10 +1,28 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.frames.Property; public interface Weighted { @Property("weight") - public Double getWeight(); + Double getWeight(); @Property("weight") - public void setWeight(double weight); + void setWeight(double weight); } diff --git a/src/main/java/com/syncleus/grail/graph/action/AbstractActionTrigger.java b/src/main/java/com/syncleus/grail/graph/action/AbstractActionTrigger.java index 0e705af..16e3f35 100644 --- a/src/main/java/com/syncleus/grail/graph/action/AbstractActionTrigger.java +++ b/src/main/java/com/syncleus/grail/graph/action/AbstractActionTrigger.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.action; import java.lang.reflect.Method; @@ -13,7 +31,7 @@ public abstract class AbstractActionTrigger implements ActionTrigger { actionMethods = new HashMap<String, Set<Method>>(); AbstractActionTrigger.ACTION_METHOD_CACHE.put(parentClass, actionMethods); - for(Class<?> triggerClass : parentClass.getInterfaces() ) { + for(final Class<?> triggerClass : parentClass.getInterfaces() ) { final Method[] triggerMethods = triggerClass.getMethods(); for (final Method triggerMethod : triggerMethods) { final Action actionAnnotation = triggerMethod.getDeclaredAnnotation(Action.class); diff --git a/src/main/java/com/syncleus/grail/graph/action/AbstractPrioritySerialTrigger.java b/src/main/java/com/syncleus/grail/graph/action/AbstractPrioritySerialTrigger.java index e909eec..15bbe8e 100644 --- a/src/main/java/com/syncleus/grail/graph/action/AbstractPrioritySerialTrigger.java +++ b/src/main/java/com/syncleus/grail/graph/action/AbstractPrioritySerialTrigger.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.action; import com.syncleus.grail.graph.Node; @@ -20,10 +38,10 @@ public abstract class AbstractPrioritySerialTrigger extends AbstractActionTrigge final Class<?> parentClass = triggerObject.getClass(); - Map<String, Set<Method>> actionMethods = AbstractPrioritySerialTrigger.populateCache(parentClass); + final Map<String, Set<Method>> actionMethods = AbstractPrioritySerialTrigger.populateCache(parentClass); final Set<Method> triggerMethods = actionMethods.get(actionName); - if( triggerMethods == null || triggerMethods.size() <= 0 ) + if( triggerMethods == null || triggerMethods.isEmpty() ) throw new IllegalStateException("A ActionTrigger was configured to trigger an action which does not exist on the current object"); for( final Method triggerMethod : triggerMethods ) { diff --git a/src/main/java/com/syncleus/grail/graph/action/Action.java b/src/main/java/com/syncleus/grail/graph/action/Action.java index 580ce74..ec91a61 100644 --- a/src/main/java/com/syncleus/grail/graph/action/Action.java +++ b/src/main/java/com/syncleus/grail/graph/action/Action.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.action; import java.lang.annotation.*; diff --git a/src/main/java/com/syncleus/grail/graph/action/ActionTrigger.java b/src/main/java/com/syncleus/grail/graph/action/ActionTrigger.java index d186bd0..5e74177 100644 --- a/src/main/java/com/syncleus/grail/graph/action/ActionTrigger.java +++ b/src/main/java/com/syncleus/grail/graph/action/ActionTrigger.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.action; import com.syncleus.grail.graph.*; diff --git a/src/main/java/com/syncleus/grail/graph/action/ActionTriggerEdge.java b/src/main/java/com/syncleus/grail/graph/action/ActionTriggerEdge.java index 4c8e76a..fd6e8e7 100644 --- a/src/main/java/com/syncleus/grail/graph/action/ActionTriggerEdge.java +++ b/src/main/java/com/syncleus/grail/graph/action/ActionTriggerEdge.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.action; import com.syncleus.grail.graph.Node; diff --git a/src/main/java/com/syncleus/grail/graph/action/PrioritySerialTrigger.java b/src/main/java/com/syncleus/grail/graph/action/PrioritySerialTrigger.java index 3cd05b5..b05e704 100644 --- a/src/main/java/com/syncleus/grail/graph/action/PrioritySerialTrigger.java +++ b/src/main/java/com/syncleus/grail/graph/action/PrioritySerialTrigger.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.action; import com.tinkerpop.frames.annotations.gremlin.GremlinGroovy; diff --git a/src/main/java/com/syncleus/grail/graph/action/PrioritySerialTriggerEdge.java b/src/main/java/com/syncleus/grail/graph/action/PrioritySerialTriggerEdge.java index cc02801..06f5790 100644 --- a/src/main/java/com/syncleus/grail/graph/action/PrioritySerialTriggerEdge.java +++ b/src/main/java/com/syncleus/grail/graph/action/PrioritySerialTriggerEdge.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.action; import com.syncleus.grail.graph.Node; diff --git a/src/main/java/com/syncleus/grail/neural/AbstractActivationNeuron.java b/src/main/java/com/syncleus/grail/neural/AbstractActivationNeuron.java index 99c1e70..54d97e8 100644 --- a/src/main/java/com/syncleus/grail/neural/AbstractActivationNeuron.java +++ b/src/main/java/com/syncleus/grail/neural/AbstractActivationNeuron.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural; import com.syncleus.grail.neural.activation.*; diff --git a/src/main/java/com/syncleus/grail/neural/ActivationNeuron.java b/src/main/java/com/syncleus/grail/neural/ActivationNeuron.java index d557278..89b30f5 100644 --- a/src/main/java/com/syncleus/grail/neural/ActivationNeuron.java +++ b/src/main/java/com/syncleus/grail/neural/ActivationNeuron.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural; import com.syncleus.grail.neural.activation.ActivationFunction; diff --git a/src/main/java/com/syncleus/grail/neural/activation/ActivationFunction.java b/src/main/java/com/syncleus/grail/neural/activation/ActivationFunction.java index 7d19a94..960d66c 100644 --- a/src/main/java/com/syncleus/grail/neural/activation/ActivationFunction.java +++ b/src/main/java/com/syncleus/grail/neural/activation/ActivationFunction.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.activation; public interface ActivationFunction { diff --git a/src/main/java/com/syncleus/grail/neural/activation/HyperbolicTangentActivationFunction.java b/src/main/java/com/syncleus/grail/neural/activation/HyperbolicTangentActivationFunction.java index da4a426..0e9693d 100644 --- a/src/main/java/com/syncleus/grail/neural/activation/HyperbolicTangentActivationFunction.java +++ b/src/main/java/com/syncleus/grail/neural/activation/HyperbolicTangentActivationFunction.java @@ -1,8 +1,27 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.activation; public class HyperbolicTangentActivationFunction implements ActivationFunction { private static final double UPPER_LIMIT = 1.0; private static final double LOWER_LIMIT = -1.0; + private static final double DERIVATIVE_EXP = 2.0; /** * The hyperbolic tangent activation function. @@ -27,7 +46,7 @@ public class HyperbolicTangentActivationFunction implements ActivationFunction { */ @Override public double activateDerivative(final double activity) { - return 1.0 - Math.pow(this.activate(activity), 2.0); + return 1.0 - Math.pow(this.activate(activity), HyperbolicTangentActivationFunction.DERIVATIVE_EXP); } @Override diff --git a/src/main/java/com/syncleus/grail/neural/activation/SineActivationFunction.java b/src/main/java/com/syncleus/grail/neural/activation/SineActivationFunction.java index 7e8d383..5706b1f 100644 --- a/src/main/java/com/syncleus/grail/neural/activation/SineActivationFunction.java +++ b/src/main/java/com/syncleus/grail/neural/activation/SineActivationFunction.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.activation; public class SineActivationFunction implements ActivationFunction { diff --git a/src/main/java/com/syncleus/grail/neural/backprop/AbstractBackpropNeuron.java b/src/main/java/com/syncleus/grail/neural/backprop/AbstractBackpropNeuron.java index 0a8d969..85b7b64 100644 --- a/src/main/java/com/syncleus/grail/neural/backprop/AbstractBackpropNeuron.java +++ b/src/main/java/com/syncleus/grail/neural/backprop/AbstractBackpropNeuron.java @@ -1,12 +1,31 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.backprop; import com.syncleus.grail.neural.*; import com.tinkerpop.frames.modules.javahandler.Initializer; public abstract class AbstractBackpropNeuron extends AbstractActivationNeuron implements BackpropNeuron { + private static final double DEFAULT_LEARNING_RATE = 0.0175; @Initializer public void init() { - this.setLearningRate(0.0175); + this.setLearningRate(AbstractBackpropNeuron.DEFAULT_LEARNING_RATE); this.setDeltaTrain(0.0); } diff --git a/src/main/java/com/syncleus/grail/neural/backprop/BackpropNeuron.java b/src/main/java/com/syncleus/grail/neural/backprop/BackpropNeuron.java index 0110814..9e48743 100644 --- a/src/main/java/com/syncleus/grail/neural/backprop/BackpropNeuron.java +++ b/src/main/java/com/syncleus/grail/neural/backprop/BackpropNeuron.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.backprop; import com.syncleus.grail.graph.*; diff --git a/src/main/java/com/syncleus/grail/neural/backprop/BackpropSynapse.java b/src/main/java/com/syncleus/grail/neural/backprop/BackpropSynapse.java index 74d01e6..dd554f7 100644 --- a/src/main/java/com/syncleus/grail/neural/backprop/BackpropSynapse.java +++ b/src/main/java/com/syncleus/grail/neural/backprop/BackpropSynapse.java @@ -1,8 +1,25 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.backprop; import com.syncleus.grail.graph.SignalMultiplyingEdge; import com.tinkerpop.frames.*; -import com.tinkerpop.frames.modules.javahandler.JavaHandlerClass; import com.tinkerpop.frames.modules.typedgraph.TypeValue; @TypeValue("BackpropSynapse") diff --git a/src/main/java/com/syncleus/grail/neural/package-info.java b/src/main/java/com/syncleus/grail/neural/package-info.java index 03e0a8b..4edf6ab 100644 --- a/src/main/java/com/syncleus/grail/neural/package-info.java +++ b/src/main/java/com/syncleus/grail/neural/package-info.java @@ -1 +1,19 @@ -package com.syncleus.grail.neural; \ No newline at end of file +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ +package com.syncleus.grail.neural; diff --git a/src/main/java/com/syncleus/grail/package-info.java b/src/main/java/com/syncleus/grail/package-info.java index 3b68a97..56e5497 100644 --- a/src/main/java/com/syncleus/grail/package-info.java +++ b/src/main/java/com/syncleus/grail/package-info.java @@ -1 +1,19 @@ -package com.syncleus.grail; \ No newline at end of file +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ +package com.syncleus.grail; diff --git a/src/test/java/com/syncleus/grail/graph/BlankGraphFactory.java b/src/test/java/com/syncleus/grail/graph/BlankGraphFactory.java index 4f71ebc..b991711 100644 --- a/src/test/java/com/syncleus/grail/graph/BlankGraphFactory.java +++ b/src/test/java/com/syncleus/grail/graph/BlankGraphFactory.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.thinkaurelius.titan.core.*; diff --git a/src/test/java/com/syncleus/grail/graph/ExceptionGod.java b/src/test/java/com/syncleus/grail/graph/ExceptionGod.java index 7d3ad42..1c7fe28 100644 --- a/src/test/java/com/syncleus/grail/graph/ExceptionGod.java +++ b/src/test/java/com/syncleus/grail/graph/ExceptionGod.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.blueprints.Direction; diff --git a/src/test/java/com/syncleus/grail/graph/FatherEdge.java b/src/test/java/com/syncleus/grail/graph/FatherEdge.java index fe71451..04067cb 100644 --- a/src/test/java/com/syncleus/grail/graph/FatherEdge.java +++ b/src/test/java/com/syncleus/grail/graph/FatherEdge.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.frames.*; diff --git a/src/test/java/com/syncleus/grail/graph/God.java b/src/test/java/com/syncleus/grail/graph/God.java index 9c09e84..6c5e4a1 100644 --- a/src/test/java/com/syncleus/grail/graph/God.java +++ b/src/test/java/com/syncleus/grail/graph/God.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.blueprints.*; diff --git a/src/test/java/com/syncleus/grail/graph/GodExtended.java b/src/test/java/com/syncleus/grail/graph/GodExtended.java index 2a5e6fe..d56d1c2 100644 --- a/src/test/java/com/syncleus/grail/graph/GodExtended.java +++ b/src/test/java/com/syncleus/grail/graph/GodExtended.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.frames.annotations.gremlin.GremlinGroovy; diff --git a/src/test/java/com/syncleus/grail/graph/Location.java b/src/test/java/com/syncleus/grail/graph/Location.java index 7bbe13d..63f0c38 100644 --- a/src/test/java/com/syncleus/grail/graph/Location.java +++ b/src/test/java/com/syncleus/grail/graph/Location.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.frames.*; diff --git a/src/test/java/com/syncleus/grail/graph/LocationExtended.java b/src/test/java/com/syncleus/grail/graph/LocationExtended.java index 53cca60..dc97b8e 100644 --- a/src/test/java/com/syncleus/grail/graph/LocationExtended.java +++ b/src/test/java/com/syncleus/grail/graph/LocationExtended.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.frames.Property; diff --git a/src/test/java/com/syncleus/grail/graph/MockTransactionalTinkerGraph.java b/src/test/java/com/syncleus/grail/graph/MockTransactionalTinkerGraph.java index e59168e..4080c98 100644 --- a/src/test/java/com/syncleus/grail/graph/MockTransactionalTinkerGraph.java +++ b/src/test/java/com/syncleus/grail/graph/MockTransactionalTinkerGraph.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph; import com.tinkerpop.blueprints.*; diff --git a/src/test/java/com/syncleus/grail/graph/titangraph/BlueprintsTest.java b/src/test/java/com/syncleus/grail/graph/titangraph/BlueprintsTest.java index f018b88..325cbad 100644 --- a/src/test/java/com/syncleus/grail/graph/titangraph/BlueprintsTest.java +++ b/src/test/java/com/syncleus/grail/graph/titangraph/BlueprintsTest.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.titangraph; import com.thinkaurelius.titan.core.TitanGraph; diff --git a/src/test/java/com/syncleus/grail/graph/titangraph/FramesTest.java b/src/test/java/com/syncleus/grail/graph/titangraph/FramesTest.java index 41b8f12..115bece 100644 --- a/src/test/java/com/syncleus/grail/graph/titangraph/FramesTest.java +++ b/src/test/java/com/syncleus/grail/graph/titangraph/FramesTest.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.titangraph; import com.syncleus.grail.graph.*; diff --git a/src/test/java/com/syncleus/grail/graph/titangraph/GremlinTest.java b/src/test/java/com/syncleus/grail/graph/titangraph/GremlinTest.java index ed6ff4c..0ecdd17 100644 --- a/src/test/java/com/syncleus/grail/graph/titangraph/GremlinTest.java +++ b/src/test/java/com/syncleus/grail/graph/titangraph/GremlinTest.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.titangraph; import com.thinkaurelius.titan.core.TitanGraph; diff --git a/src/test/java/com/syncleus/grail/graph/titangraph/TitanGods.java b/src/test/java/com/syncleus/grail/graph/titangraph/TitanGods.java index 8f7e269..4814b65 100644 --- a/src/test/java/com/syncleus/grail/graph/titangraph/TitanGods.java +++ b/src/test/java/com/syncleus/grail/graph/titangraph/TitanGods.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.titangraph; import com.thinkaurelius.titan.core.TitanFactory; diff --git a/src/test/java/com/syncleus/grail/graph/titangraph/TypedAdjacencyHandlerTest.java b/src/test/java/com/syncleus/grail/graph/titangraph/TypedAdjacencyHandlerTest.java index 6bd6484..be95d98 100644 --- a/src/test/java/com/syncleus/grail/graph/titangraph/TypedAdjacencyHandlerTest.java +++ b/src/test/java/com/syncleus/grail/graph/titangraph/TypedAdjacencyHandlerTest.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.titangraph; import com.syncleus.grail.graph.*; diff --git a/src/test/java/com/syncleus/grail/graph/titangraph/TypedIncidenceHandlerTest.java b/src/test/java/com/syncleus/grail/graph/titangraph/TypedIncidenceHandlerTest.java index 2b0ae81..f2b89cd 100644 --- a/src/test/java/com/syncleus/grail/graph/titangraph/TypedIncidenceHandlerTest.java +++ b/src/test/java/com/syncleus/grail/graph/titangraph/TypedIncidenceHandlerTest.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.graph.titangraph; import com.syncleus.grail.graph.*; diff --git a/src/test/java/com/syncleus/grail/neural/backprop/ActionTriggerXor3InputTest.java b/src/test/java/com/syncleus/grail/neural/backprop/ActionTriggerXor3InputTest.java index eff2694..e02711f 100644 --- a/src/test/java/com/syncleus/grail/neural/backprop/ActionTriggerXor3InputTest.java +++ b/src/test/java/com/syncleus/grail/neural/backprop/ActionTriggerXor3InputTest.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.backprop; import com.syncleus.grail.neural.activation.*; diff --git a/src/test/java/com/syncleus/grail/neural/backprop/SimpleOrTest.java b/src/test/java/com/syncleus/grail/neural/backprop/SimpleOrTest.java index 79cc09a..37e85a1 100644 --- a/src/test/java/com/syncleus/grail/neural/backprop/SimpleOrTest.java +++ b/src/test/java/com/syncleus/grail/neural/backprop/SimpleOrTest.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.backprop; import com.syncleus.grail.neural.activation.*; diff --git a/src/test/java/com/syncleus/grail/neural/backprop/SimpleXor2InputTest.java b/src/test/java/com/syncleus/grail/neural/backprop/SimpleXor2InputTest.java index 08bd7d3..e237521 100644 --- a/src/test/java/com/syncleus/grail/neural/backprop/SimpleXor2InputTest.java +++ b/src/test/java/com/syncleus/grail/neural/backprop/SimpleXor2InputTest.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.backprop; import com.syncleus.grail.neural.activation.*; diff --git a/src/test/java/com/syncleus/grail/neural/backprop/SimpleXor3InputTest.java b/src/test/java/com/syncleus/grail/neural/backprop/SimpleXor3InputTest.java index b344e35..05dfb6e 100644 --- a/src/test/java/com/syncleus/grail/neural/backprop/SimpleXor3InputTest.java +++ b/src/test/java/com/syncleus/grail/neural/backprop/SimpleXor3InputTest.java @@ -1,3 +1,21 @@ +/****************************************************************************** + * * + * Copyright: (c) Syncleus, Inc. * + * * + * You may redistribute and modify this source code under the terms and * + * conditions of the Open Source Community License - Type C version 1.0 * + * or any later version as published by Syncleus, Inc. at www.syncleus.com. * + * There should be a copy of the license included with this file. If a copy * + * of the license is not included you are granted no right to distribute or * + * otherwise use this file except through a legal and valid license. You * + * should also contact Syncleus, Inc. at the information below if you cannot * + * find a license: * + * * + * Syncleus, Inc. * + * 2604 South 12th Street * + * Philadelphia, PA 19148 * + * * + ******************************************************************************/ package com.syncleus.grail.neural.backprop; import com.syncleus.grail.neural.activation.*; -- GitLab