Skip to content

Commit 48b58c9

Browse files
committed
task: add parameter comparator
1 parent dad1bcd commit 48b58c9

File tree

3 files changed

+11
-18
lines changed

3 files changed

+11
-18
lines changed

task/src/main/uk/ac/starlink/task/Parameter.java

+9
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import java.lang.reflect.Array;
44
import java.lang.reflect.Constructor;
55
import java.util.Collection;
6+
import java.util.Comparator;
67

78
/**
89
* A Parameter describes the function of one of a task's parameters.
@@ -38,6 +39,14 @@ public abstract class Parameter<T> {
3839
private T objectValue_;
3940
private boolean gotValue_;
4041

42+
/** Compares parameters alphabetically by parameter name. */
43+
public static final Comparator<Parameter> BY_NAME =
44+
new Comparator<Parameter>() {
45+
public int compare( Parameter p1, Parameter p2 ) {
46+
return p1.getName().compareTo( p2.getName() );
47+
}
48+
};
49+
4150
/**
4251
* Constructs a parameter with a given name. This name should be unique
4352
* within a given Task.

ttools/src/main/uk/ac/starlink/ttools/build/UsageWriter.java

+1-9
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import java.io.IOException;
77
import java.io.OutputStream;
88
import java.util.Arrays;
9-
import java.util.Comparator;
109
import java.util.Iterator;
1110
import java.util.logging.Level;
1211
import java.util.logging.Logger;
@@ -62,14 +61,7 @@ private void writeXml() throws IOException {
6261
outln( "</p>" );
6362
outln( "<p>" );
6463
outln( "<dl>" );
65-
Arrays.sort( params, new Comparator() {
66-
public int compare( Object o1, Object o2 ) {
67-
Parameter p1 = (Parameter) o1;
68-
Parameter p2 = (Parameter) o2;
69-
return ((Parameter) o1).getName()
70-
.compareTo( ((Parameter) o2).getName() );
71-
}
72-
} );
64+
Arrays.sort( params, Parameter.BY_NAME );
7365
for ( int i = 0; i < params.length; i++ ) {
7466
outln( xmlItem( params[ i ], false ) );
7567
}

ttools/src/main/uk/ac/starlink/ttools/server/TaskServlet.java

+1-9
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import java.util.ArrayList;
77
import java.util.Arrays;
88
import java.util.Collection;
9-
import java.util.Comparator;
109
import java.util.HashSet;
1110
import java.util.List;
1211
import javax.servlet.ServletConfig;
@@ -303,14 +302,7 @@ private void writeTaskHelp( String baseUrl, ServletOutputStream out,
303302

304303
out.println( "<h3>Parameters</h3>" );
305304
out.println( "<dl>" );
306-
Arrays.sort( params, new Comparator() {
307-
public int compare( Object o1, Object o2 ) {
308-
Parameter p1 = (Parameter) o1;
309-
Parameter p2 = (Parameter) o2;
310-
return ((Parameter) o1).getName()
311-
.compareTo( ((Parameter) o2).getName() );
312-
}
313-
} );
305+
Arrays.sort( params, Parameter.BY_NAME );
314306
for ( int i = 0; i < params.length; i++ ) {
315307
Parameter param = params[ i ];
316308
out.println( "<dt><b><a name='" + param.getName() + "'>"

0 commit comments

Comments
 (0)