diff --git a/src/main/java/difflib/DiffUtils.java b/src/main/java/difflib/DiffUtils.java
index 7f4f277..4762781 100644
--- a/src/main/java/difflib/DiffUtils.java
+++ b/src/main/java/difflib/DiffUtils.java
@@ -15,8 +15,14 @@
*/
package difflib;
-import difflib.myers.Equalizer;
-import difflib.myers.MyersDiff;
+import difflib.patch.PatchFailedException;
+import difflib.patch.Delta;
+import difflib.patch.Chunk;
+import difflib.patch.Patch;
+import difflib.patch.ChangeDelta;
+import difflib.algorithm.DiffAlgorithm;
+import difflib.algorithm.myers.Equalizer;
+import difflib.algorithm.myers.MyersDiff;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedList;
diff --git a/src/main/java/difflib/DiffAlgorithm.java b/src/main/java/difflib/algorithm/DiffAlgorithm.java
similarity index 97%
rename from src/main/java/difflib/DiffAlgorithm.java
rename to src/main/java/difflib/algorithm/DiffAlgorithm.java
index c282a99..1534ec0 100644
--- a/src/main/java/difflib/DiffAlgorithm.java
+++ b/src/main/java/difflib/algorithm/DiffAlgorithm.java
@@ -13,8 +13,9 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.algorithm;
+import difflib.patch.Patch;
import java.util.*;
/**
diff --git a/src/main/java/difflib/myers/DiffException.java b/src/main/java/difflib/algorithm/myers/DiffException.java
similarity index 98%
rename from src/main/java/difflib/myers/DiffException.java
rename to src/main/java/difflib/algorithm/myers/DiffException.java
index c980477..6840ead 100644
--- a/src/main/java/difflib/myers/DiffException.java
+++ b/src/main/java/difflib/algorithm/myers/DiffException.java
@@ -54,7 +54,7 @@
* .
*
*/
-package difflib.myers;
+package difflib.algorithm.myers;
/**
* Base class for all exceptions emanating from this package.
diff --git a/src/main/java/difflib/myers/DiffNode.java b/src/main/java/difflib/algorithm/myers/DiffNode.java
similarity index 97%
rename from src/main/java/difflib/myers/DiffNode.java
rename to src/main/java/difflib/algorithm/myers/DiffNode.java
index 78c39c8..0114842 100644
--- a/src/main/java/difflib/myers/DiffNode.java
+++ b/src/main/java/difflib/algorithm/myers/DiffNode.java
@@ -1,4 +1,4 @@
-package difflib.myers;
+package difflib.algorithm.myers;
/**
*
diff --git a/src/main/java/difflib/myers/DifferentiationFailedException.java b/src/main/java/difflib/algorithm/myers/DifferentiationFailedException.java
similarity index 98%
rename from src/main/java/difflib/myers/DifferentiationFailedException.java
rename to src/main/java/difflib/algorithm/myers/DifferentiationFailedException.java
index 7541ea2..af18814 100644
--- a/src/main/java/difflib/myers/DifferentiationFailedException.java
+++ b/src/main/java/difflib/algorithm/myers/DifferentiationFailedException.java
@@ -54,7 +54,7 @@
* .
*
*/
-package difflib.myers;
+package difflib.algorithm.myers;
/**
* Thrown whenever the differencing engine cannot produce the differences between two revisions of
diff --git a/src/main/java/difflib/myers/Equalizer.java b/src/main/java/difflib/algorithm/myers/Equalizer.java
similarity index 94%
rename from src/main/java/difflib/myers/Equalizer.java
rename to src/main/java/difflib/algorithm/myers/Equalizer.java
index b8b630b..18e2fb6 100644
--- a/src/main/java/difflib/myers/Equalizer.java
+++ b/src/main/java/difflib/algorithm/myers/Equalizer.java
@@ -1,4 +1,4 @@
-package difflib.myers;
+package difflib.algorithm.myers;
/**
* Specifies when two compared elements in the Myers algorithm are equal.
diff --git a/src/main/java/difflib/myers/MyersDiff.java b/src/main/java/difflib/algorithm/myers/MyersDiff.java
similarity index 97%
rename from src/main/java/difflib/myers/MyersDiff.java
rename to src/main/java/difflib/algorithm/myers/MyersDiff.java
index 82ae22b..3f62fd3 100644
--- a/src/main/java/difflib/myers/MyersDiff.java
+++ b/src/main/java/difflib/algorithm/myers/MyersDiff.java
@@ -54,8 +54,15 @@
* .
*
*/
-package difflib.myers;
+package difflib.algorithm.myers;
+import difflib.patch.InsertDelta;
+import difflib.patch.Delta;
+import difflib.patch.Chunk;
+import difflib.patch.Patch;
+import difflib.patch.DeleteDelta;
+import difflib.patch.ChangeDelta;
+import difflib.algorithm.DiffAlgorithm;
import difflib.*;
import java.lang.reflect.Array;
import java.util.ArrayList;
diff --git a/src/main/java/difflib/myers/PathNode.java b/src/main/java/difflib/algorithm/myers/PathNode.java
similarity index 99%
rename from src/main/java/difflib/myers/PathNode.java
rename to src/main/java/difflib/algorithm/myers/PathNode.java
index c5a2495..1380037 100644
--- a/src/main/java/difflib/myers/PathNode.java
+++ b/src/main/java/difflib/algorithm/myers/PathNode.java
@@ -54,7 +54,7 @@
* .
*
*/
-package difflib.myers;
+package difflib.algorithm.myers;
/**
* A node in a diffpath.
diff --git a/src/main/java/difflib/myers/Snake.java b/src/main/java/difflib/algorithm/myers/Snake.java
similarity index 99%
rename from src/main/java/difflib/myers/Snake.java
rename to src/main/java/difflib/algorithm/myers/Snake.java
index 991d74a..607d2ff 100644
--- a/src/main/java/difflib/myers/Snake.java
+++ b/src/main/java/difflib/algorithm/myers/Snake.java
@@ -54,7 +54,7 @@
* .
*
*/
-package difflib.myers;
+package difflib.algorithm.myers;
/**
* Represents a snake in a diffpath.
diff --git a/src/main/java/difflib/myers/package.html b/src/main/java/difflib/algorithm/myers/package.html
similarity index 100%
rename from src/main/java/difflib/myers/package.html
rename to src/main/java/difflib/algorithm/myers/package.html
diff --git a/src/main/java/difflib/package.html b/src/main/java/difflib/package.html
deleted file mode 100644
index 7f934d6..0000000
--- a/src/main/java/difflib/package.html
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
-
-
- The {@link difflib difflib} package
- implements general operation with diff files.
-
- @author Dmitry Naumenko
-
-
diff --git a/src/main/java/difflib/ChangeDelta.java b/src/main/java/difflib/patch/ChangeDelta.java
similarity index 97%
rename from src/main/java/difflib/ChangeDelta.java
rename to src/main/java/difflib/patch/ChangeDelta.java
index 728decf..8f61101 100644
--- a/src/main/java/difflib/ChangeDelta.java
+++ b/src/main/java/difflib/patch/ChangeDelta.java
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.patch;
import java.util.List;
@@ -32,7 +32,7 @@ public final class ChangeDelta extends Delta {
* @param revised The original chunk. Must not be {@code null}.
*/
public ChangeDelta(Chunk original, Chunk revised) {
- super(TYPE.CHANGE, original, revised);
+ super(DeltaType.CHANGE, original, revised);
}
/**
diff --git a/src/main/java/difflib/Chunk.java b/src/main/java/difflib/patch/Chunk.java
similarity index 99%
rename from src/main/java/difflib/Chunk.java
rename to src/main/java/difflib/patch/Chunk.java
index 3fa2aac..def78a8 100644
--- a/src/main/java/difflib/Chunk.java
+++ b/src/main/java/difflib/patch/Chunk.java
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.patch;
import java.util.Arrays;
import java.util.List;
diff --git a/src/main/java/difflib/DeleteDelta.java b/src/main/java/difflib/patch/DeleteDelta.java
similarity index 96%
rename from src/main/java/difflib/DeleteDelta.java
rename to src/main/java/difflib/patch/DeleteDelta.java
index 320553b..985212b 100644
--- a/src/main/java/difflib/DeleteDelta.java
+++ b/src/main/java/difflib/patch/DeleteDelta.java
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.patch;
import java.util.List;
@@ -32,7 +32,7 @@ public final class DeleteDelta extends Delta {
* @param revised The original chunk. Must not be {@code null}.
*/
public DeleteDelta(Chunk original, Chunk revised) {
- super(TYPE.DELETE, original, revised);
+ super(DeltaType.DELETE, original, revised);
}
/**
diff --git a/src/main/java/difflib/Delta.java b/src/main/java/difflib/patch/Delta.java
similarity index 94%
rename from src/main/java/difflib/Delta.java
rename to src/main/java/difflib/patch/Delta.java
index 99a6612..3424f0d 100644
--- a/src/main/java/difflib/Delta.java
+++ b/src/main/java/difflib/patch/Delta.java
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.patch;
import java.util.*;
@@ -25,7 +25,7 @@ import java.util.*;
*/
public abstract class Delta {
- private final TYPE deltaType;
+ private final DeltaType deltaType;
private final Chunk original;
private final Chunk revised;
@@ -33,7 +33,7 @@ public abstract class Delta {
* Specifies the type of the delta.
*
*/
- public static enum TYPE {
+ public static enum DeltaType {
/**
* A change in the original.
*/
@@ -54,7 +54,7 @@ public abstract class Delta {
* @param original Chunk describing the original text. Must not be {@code null}.
* @param revised Chunk describing the revised text. Must not be {@code null}.
*/
- public Delta(TYPE deltaType, Chunk original, Chunk revised) {
+ public Delta(DeltaType deltaType, Chunk original, Chunk revised) {
if (deltaType == null) {
throw new IllegalArgumentException("deltaType must not be null");
}
@@ -92,7 +92,7 @@ public abstract class Delta {
*/
public abstract void restore(List target);
- public final TYPE getType() {
+ public final DeltaType getType() {
return deltaType;
}
diff --git a/src/main/java/difflib/DeltaComparator.java b/src/main/java/difflib/patch/DeltaComparator.java
similarity index 96%
rename from src/main/java/difflib/DeltaComparator.java
rename to src/main/java/difflib/patch/DeltaComparator.java
index 6c42336..4253075 100644
--- a/src/main/java/difflib/DeltaComparator.java
+++ b/src/main/java/difflib/patch/DeltaComparator.java
@@ -1,4 +1,4 @@
-package difflib;
+package difflib.patch;
import java.io.Serializable;
import java.util.Comparator;
diff --git a/src/main/java/difflib/DiffException.java b/src/main/java/difflib/patch/DiffException.java
similarity index 97%
rename from src/main/java/difflib/DiffException.java
rename to src/main/java/difflib/patch/DiffException.java
index 7869fc5..e417537 100644
--- a/src/main/java/difflib/DiffException.java
+++ b/src/main/java/difflib/patch/DiffException.java
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.patch;
/**
* Base class for all exceptions emanating from this package.
diff --git a/src/main/java/difflib/InsertDelta.java b/src/main/java/difflib/patch/InsertDelta.java
similarity index 96%
rename from src/main/java/difflib/InsertDelta.java
rename to src/main/java/difflib/patch/InsertDelta.java
index a09da90..d5aebcf 100644
--- a/src/main/java/difflib/InsertDelta.java
+++ b/src/main/java/difflib/patch/InsertDelta.java
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.patch;
import java.util.List;
@@ -32,7 +32,7 @@ public final class InsertDelta extends Delta {
* @param revised The original chunk. Must not be {@code null}.
*/
public InsertDelta(Chunk original, Chunk revised) {
- super(TYPE.INSERT, original, revised);
+ super(DeltaType.INSERT, original, revised);
}
/**
diff --git a/src/main/java/difflib/Patch.java b/src/main/java/difflib/patch/Patch.java
similarity index 99%
rename from src/main/java/difflib/Patch.java
rename to src/main/java/difflib/patch/Patch.java
index f88c65a..eae16a0 100644
--- a/src/main/java/difflib/Patch.java
+++ b/src/main/java/difflib/patch/Patch.java
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.patch;
import java.util.Collections;
import java.util.LinkedList;
diff --git a/src/main/java/difflib/PatchFailedException.java b/src/main/java/difflib/patch/PatchFailedException.java
similarity index 97%
rename from src/main/java/difflib/PatchFailedException.java
rename to src/main/java/difflib/patch/PatchFailedException.java
index 2eec83c..95b8d61 100644
--- a/src/main/java/difflib/PatchFailedException.java
+++ b/src/main/java/difflib/patch/PatchFailedException.java
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.patch;
/**
* Thrown whenever a delta cannot be applied as a patch to a given text.
diff --git a/src/main/java/difflib/rows/DiffRow.java b/src/main/java/difflib/text/DiffRow.java
similarity index 99%
rename from src/main/java/difflib/rows/DiffRow.java
rename to src/main/java/difflib/text/DiffRow.java
index 5abb292..298bdf5 100644
--- a/src/main/java/difflib/rows/DiffRow.java
+++ b/src/main/java/difflib/text/DiffRow.java
@@ -13,7 +13,7 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib.rows;
+package difflib.text;
/**
* Describes the diff row in form [tag, oldLine, newLine) for showing the difference between two
diff --git a/src/main/java/difflib/rows/DiffRowGenerator.java b/src/main/java/difflib/text/DiffRowGenerator.java
similarity index 98%
rename from src/main/java/difflib/rows/DiffRowGenerator.java
rename to src/main/java/difflib/text/DiffRowGenerator.java
index d478f00..44c89bd 100644
--- a/src/main/java/difflib/rows/DiffRowGenerator.java
+++ b/src/main/java/difflib/text/DiffRowGenerator.java
@@ -13,18 +13,17 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib.rows;
+package difflib.text;
-import difflib.ChangeDelta;
-import difflib.Chunk;
-import difflib.DeleteDelta;
-import difflib.Delta;
-import difflib.rows.DiffRow.Tag;
+import difflib.patch.ChangeDelta;
+import difflib.patch.Chunk;
+import difflib.patch.DeleteDelta;
+import difflib.patch.Delta;
+import difflib.text.DiffRow.Tag;
import difflib.DiffUtils;
-import difflib.InsertDelta;
-import difflib.Patch;
-import difflib.StringUtils;
-import difflib.myers.Equalizer;
+import difflib.patch.InsertDelta;
+import difflib.patch.Patch;
+import difflib.algorithm.myers.Equalizer;
import java.util.*;
/**
diff --git a/src/main/java/difflib/StringUtils.java b/src/main/java/difflib/text/StringUtils.java
similarity index 75%
rename from src/main/java/difflib/StringUtils.java
rename to src/main/java/difflib/text/StringUtils.java
index 768b0cc..a6ec0c6 100644
--- a/src/main/java/difflib/StringUtils.java
+++ b/src/main/java/difflib/text/StringUtils.java
@@ -13,36 +13,13 @@
See the License for the specific language governing permissions and
limitations under the License.
*/
-package difflib;
+package difflib.text;
-import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public final class StringUtils {
- public static String join(final Iterable objs, final String delimiter) {
- Iterator iter = objs.iterator();
- if (!iter.hasNext()) {
- return "";
- }
- StringBuffer buffer = new StringBuffer(String.valueOf(iter.next()));
- while (iter.hasNext()) {
- buffer.append(delimiter).append(String.valueOf(iter.next()));
- }
- return buffer.toString();
- }
-
- /**
- * Replaces all tabs with 4 spaces.
- *
- * @param str The string.
- * @return
- */
- public static String expandTabs(String str) {
- return str.replace("\t", " ");
- }
-
/**
* Replaces all opening an closing tags with < or >.
*
@@ -54,7 +31,7 @@ public final class StringUtils {
}
public static String normalize(String str) {
- return expandTabs(htmlEntites(str));
+ return htmlEntites(str).replace("\t", " ");
}
public static List normalize(List list) {
diff --git a/src/test/java/diffutils/DiffUtilsTest.java b/src/test/java/diffutils/DiffUtilsTest.java
index a5316a6..3db84ac 100644
--- a/src/test/java/diffutils/DiffUtilsTest.java
+++ b/src/test/java/diffutils/DiffUtilsTest.java
@@ -1,5 +1,11 @@
package diffutils;
+import difflib.patch.InsertDelta;
+import difflib.patch.Delta;
+import difflib.patch.Chunk;
+import difflib.patch.ChangeDelta;
+import difflib.patch.Patch;
+import difflib.patch.DeleteDelta;
import difflib.*;
import java.util.ArrayList;
import java.util.Arrays;
diff --git a/src/test/java/diffutils/GenerateUnifiedDiffTest.java b/src/test/java/diffutils/GenerateUnifiedDiffTest.java
index edd81bb..48b507c 100644
--- a/src/test/java/diffutils/GenerateUnifiedDiffTest.java
+++ b/src/test/java/diffutils/GenerateUnifiedDiffTest.java
@@ -1,8 +1,8 @@
package diffutils;
import difflib.DiffUtils;
-import difflib.Patch;
-import difflib.PatchFailedException;
+import difflib.patch.Patch;
+import difflib.patch.PatchFailedException;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
diff --git a/src/test/java/diffutils/examples/ApplyPatch.java b/src/test/java/diffutils/examples/ApplyPatch.java
index b17d2ab..596e27c 100644
--- a/src/test/java/diffutils/examples/ApplyPatch.java
+++ b/src/test/java/diffutils/examples/ApplyPatch.java
@@ -1,8 +1,8 @@
package diffutils.examples;
import difflib.DiffUtils;
-import difflib.Patch;
-import difflib.PatchFailedException;
+import difflib.patch.Patch;
+import difflib.patch.PatchFailedException;
import diffutils.TestConstants;
import java.util.List;
diff --git a/src/test/java/diffutils/examples/ComputeDifference.java b/src/test/java/diffutils/examples/ComputeDifference.java
index a1fecf8..dc1d79c 100644
--- a/src/test/java/diffutils/examples/ComputeDifference.java
+++ b/src/test/java/diffutils/examples/ComputeDifference.java
@@ -1,8 +1,8 @@
package diffutils.examples;
-import difflib.Delta;
+import difflib.patch.Delta;
import difflib.DiffUtils;
-import difflib.Patch;
+import difflib.patch.Patch;
import diffutils.TestConstants;
import java.util.List;
diff --git a/src/test/java/diffutils/PatchTest.java b/src/test/java/diffutils/patch/PatchTest.java
similarity index 94%
rename from src/test/java/diffutils/PatchTest.java
rename to src/test/java/diffutils/patch/PatchTest.java
index c03c9b6..ce2d8b7 100644
--- a/src/test/java/diffutils/PatchTest.java
+++ b/src/test/java/diffutils/patch/PatchTest.java
@@ -1,8 +1,8 @@
-package diffutils;
+package diffutils.patch;
import difflib.DiffUtils;
-import difflib.Patch;
-import difflib.PatchFailedException;
+import difflib.patch.Patch;
+import difflib.patch.PatchFailedException;
import java.util.Arrays;
import java.util.List;
import static org.junit.Assert.assertEquals;
diff --git a/src/test/java/diffutils/rows/DiffRowGeneratorTest.java b/src/test/java/diffutils/rows/DiffRowGeneratorTest.java
index 8a15d47..9c88d82 100644
--- a/src/test/java/diffutils/rows/DiffRowGeneratorTest.java
+++ b/src/test/java/diffutils/rows/DiffRowGeneratorTest.java
@@ -1,7 +1,7 @@
package diffutils.rows;
-import difflib.rows.DiffRow;
-import difflib.rows.DiffRowGenerator;
+import difflib.text.DiffRow;
+import difflib.text.DiffRowGenerator;
import java.util.Arrays;
import java.util.List;
import static org.junit.Assert.assertEquals;