diff --git a/.classpath b/.classpath
index 72c2ba61a..ad5b70f00 100644
--- a/.classpath
+++ b/.classpath
@@ -1,7 +1,28 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.gitignore b/.gitignore
index 610859901..67fae9804 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,4 +10,6 @@
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
-bin/.gitignore
+.DS_Store
+target
+!target/RedBlackNode*.jar
diff --git a/.project b/.project
index ec61c803b..423c0a752 100644
--- a/.project
+++ b/.project
@@ -1,6 +1,6 @@
- DataStructures
+ RedBlackNode
@@ -10,8 +10,14 @@
+
+ org.eclipse.m2e.core.maven2Builder
+
+
+
+ org.eclipse.m2e.core.maven2Nature
org.eclipse.jdt.core.javanature
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
index 7341ab168..1937c422f 100644
--- a/.settings/org.eclipse.jdt.core.prefs
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -1,11 +1,13 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.compliance=1.6
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.7
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.6
diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 000000000..f897a7f1c
--- /dev/null
+++ b/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/README.md b/README.md
index ecb3225dc..39bf14c85 100644
--- a/README.md
+++ b/README.md
@@ -28,7 +28,7 @@ data and augmentation information to each node.
* As a bonus (a proof of concept and a test case), this includes the `TreeList`
class, a `List` implementation backed by a red-black tree augmented by subtree
size.
-* Tested in Java 6.0, 7.0, and 8.0.
+* Compatible with Java 6.0 and above.
# Limitations
* The values of the tree must be stored in the non-leaf nodes. `RedBlackNode`
diff --git a/RedBlackNode.jar b/RedBlackNode.jar
deleted file mode 100644
index 3a126d57a..000000000
Binary files a/RedBlackNode.jar and /dev/null differ
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 000000000..c6a125803
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,28 @@
+
+ 4.0.0
+ com.github.btrekkie.red_black_node
+ RedBlackNode
+ 1.0.0
+ RedBlackNode
+ Java implementation of augmented red-black trees. Easily maintain custom augmentation information by subclassing RedBlackNode: the base class does the work for you.
+
+
+
+ maven-compiler-plugin
+ 3.8.0
+
+ 1.6
+ 1.6
+
+
+
+
+
+
+ junit
+ junit
+ 4.12
+ test
+
+
+
\ No newline at end of file
diff --git a/src/com/github/btrekkie/red_black_node/RedBlackNode.java b/src/main/java/com/github/btrekkie/red_black_node/RedBlackNode.java
similarity index 99%
rename from src/com/github/btrekkie/red_black_node/RedBlackNode.java
rename to src/main/java/com/github/btrekkie/red_black_node/RedBlackNode.java
index e045b380d..b604d5267 100644
--- a/src/com/github/btrekkie/red_black_node/RedBlackNode.java
+++ b/src/main/java/com/github/btrekkie/red_black_node/RedBlackNode.java
@@ -355,10 +355,10 @@ public abstract class RedBlackNode> implements Compara
}
/** Returns a Comparator that compares instances of N using their natural order, as in N.compareTo. */
+ @SuppressWarnings({"rawtypes", "unchecked"})
private Comparator naturalOrder() {
- @SuppressWarnings("unchecked")
- Comparator comparator = (Comparator)NATURAL_ORDER;
- return comparator;
+ Comparator comparator = (Comparator)NATURAL_ORDER;
+ return (Comparator)comparator;
}
/**
diff --git a/src/com/github/btrekkie/red_black_node/Reference.java b/src/main/java/com/github/btrekkie/red_black_node/Reference.java
similarity index 100%
rename from src/com/github/btrekkie/red_black_node/Reference.java
rename to src/main/java/com/github/btrekkie/red_black_node/Reference.java
diff --git a/src/com/github/btrekkie/tree_list/TreeList.java b/src/main/java/com/github/btrekkie/tree_list/TreeList.java
similarity index 100%
rename from src/com/github/btrekkie/tree_list/TreeList.java
rename to src/main/java/com/github/btrekkie/tree_list/TreeList.java
diff --git a/src/com/github/btrekkie/tree_list/TreeListNode.java b/src/main/java/com/github/btrekkie/tree_list/TreeListNode.java
similarity index 100%
rename from src/com/github/btrekkie/tree_list/TreeListNode.java
rename to src/main/java/com/github/btrekkie/tree_list/TreeListNode.java
diff --git a/src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderCollection.java b/src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderCollection.java
similarity index 100%
rename from src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderCollection.java
rename to src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderCollection.java
diff --git a/src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderNode.java b/src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderNode.java
similarity index 100%
rename from src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderNode.java
rename to src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderNode.java
diff --git a/src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderValue.java b/src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderValue.java
similarity index 100%
rename from src/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderValue.java
rename to src/test/java/com/github/btrekkie/arbitrary_order_collection/ArbitraryOrderValue.java
diff --git a/src/com/github/btrekkie/arbitrary_order_collection/test/ArbitraryOrderCollectionTest.java b/src/test/java/com/github/btrekkie/arbitrary_order_collection/test/ArbitraryOrderCollectionTest.java
similarity index 100%
rename from src/com/github/btrekkie/arbitrary_order_collection/test/ArbitraryOrderCollectionTest.java
rename to src/test/java/com/github/btrekkie/arbitrary_order_collection/test/ArbitraryOrderCollectionTest.java
diff --git a/src/com/github/btrekkie/interval_tree/IntervalTree.java b/src/test/java/com/github/btrekkie/interval_tree/IntervalTree.java
similarity index 100%
rename from src/com/github/btrekkie/interval_tree/IntervalTree.java
rename to src/test/java/com/github/btrekkie/interval_tree/IntervalTree.java
diff --git a/src/com/github/btrekkie/interval_tree/IntervalTreeInterval.java b/src/test/java/com/github/btrekkie/interval_tree/IntervalTreeInterval.java
similarity index 100%
rename from src/com/github/btrekkie/interval_tree/IntervalTreeInterval.java
rename to src/test/java/com/github/btrekkie/interval_tree/IntervalTreeInterval.java
diff --git a/src/com/github/btrekkie/interval_tree/IntervalTreeNode.java b/src/test/java/com/github/btrekkie/interval_tree/IntervalTreeNode.java
similarity index 100%
rename from src/com/github/btrekkie/interval_tree/IntervalTreeNode.java
rename to src/test/java/com/github/btrekkie/interval_tree/IntervalTreeNode.java
diff --git a/src/com/github/btrekkie/interval_tree/test/IntervalTreeTest.java b/src/test/java/com/github/btrekkie/interval_tree/test/IntervalTreeTest.java
similarity index 100%
rename from src/com/github/btrekkie/interval_tree/test/IntervalTreeTest.java
rename to src/test/java/com/github/btrekkie/interval_tree/test/IntervalTreeTest.java
diff --git a/src/com/github/btrekkie/red_black_node/test/RedBlackNodeTest.java b/src/test/java/com/github/btrekkie/red_black_node/test/RedBlackNodeTest.java
similarity index 100%
rename from src/com/github/btrekkie/red_black_node/test/RedBlackNodeTest.java
rename to src/test/java/com/github/btrekkie/red_black_node/test/RedBlackNodeTest.java
diff --git a/src/com/github/btrekkie/red_black_node/test/TestRedBlackNode.java b/src/test/java/com/github/btrekkie/red_black_node/test/TestRedBlackNode.java
similarity index 100%
rename from src/com/github/btrekkie/red_black_node/test/TestRedBlackNode.java
rename to src/test/java/com/github/btrekkie/red_black_node/test/TestRedBlackNode.java
diff --git a/src/com/github/btrekkie/sub_array_min/SubArrayMin.java b/src/test/java/com/github/btrekkie/sub_array_min/SubArrayMin.java
similarity index 100%
rename from src/com/github/btrekkie/sub_array_min/SubArrayMin.java
rename to src/test/java/com/github/btrekkie/sub_array_min/SubArrayMin.java
diff --git a/src/com/github/btrekkie/sub_array_min/SubArrayMinNode.java b/src/test/java/com/github/btrekkie/sub_array_min/SubArrayMinNode.java
similarity index 100%
rename from src/com/github/btrekkie/sub_array_min/SubArrayMinNode.java
rename to src/test/java/com/github/btrekkie/sub_array_min/SubArrayMinNode.java
diff --git a/src/com/github/btrekkie/sub_array_min/test/SubArrayMinTest.java b/src/test/java/com/github/btrekkie/sub_array_min/test/SubArrayMinTest.java
similarity index 100%
rename from src/com/github/btrekkie/sub_array_min/test/SubArrayMinTest.java
rename to src/test/java/com/github/btrekkie/sub_array_min/test/SubArrayMinTest.java
diff --git a/src/com/github/btrekkie/tree_list/test/TreeListTest.java b/src/test/java/com/github/btrekkie/tree_list/test/TreeListTest.java
similarity index 100%
rename from src/com/github/btrekkie/tree_list/test/TreeListTest.java
rename to src/test/java/com/github/btrekkie/tree_list/test/TreeListTest.java
diff --git a/target/RedBlackNode-1.0.0.jar b/target/RedBlackNode-1.0.0.jar
new file mode 100644
index 000000000..0b2b3dbf9
Binary files /dev/null and b/target/RedBlackNode-1.0.0.jar differ