External-Memory Sorting in Java