From 4850722cacbd00883e0619ff47057be212d17a32 Mon Sep 17 00:00:00 2001 From: Mark Taylor Date: Fri, 22 Aug 2014 14:01:56 +0100 Subject: [PATCH] task: rationalise default value setting in Parameter The setDefault and getDefault methods are now named setStringDefault and getStringDefault. A few type-specific default setter methods have been added to some of the parameter subclasses. This is less confusing, more extensible, and easier to use. --- .../src/main/uk/ac/starlink/ndtools/Diff.java | 2 +- .../uk/ac/starlink/task/BooleanParameter.java | 4 +-- .../uk/ac/starlink/task/ChoiceParameter.java | 4 +-- .../uk/ac/starlink/task/DoubleParameter.java | 9 +++++ .../uk/ac/starlink/task/IntegerParameter.java | 9 +++++ .../uk/ac/starlink/task/LineEnvironment.java | 13 ++++---- .../uk/ac/starlink/task/MultiTaskInvoker.java | 2 +- .../starlink/task/OutputStreamParameter.java | 2 +- .../main/uk/ac/starlink/task/Parameter.java | 15 +++++---- .../ac/starlink/task/SingleTaskInvoker.java | 2 +- .../ac/starlink/task/TerminalEnvironment.java | 8 ++--- .../uk/ac/starlink/task/TerminalInvoker.java | 2 +- .../uk/ac/starlink/task/ArithmeticTest.java | 11 ++++--- .../uk/ac/starlink/ttools/build/JyStilts.java | 2 +- .../ac/starlink/ttools/build/UsageWriter.java | 2 +- .../ac/starlink/ttools/cea/CeaParameter.java | 2 +- .../ttools/cone/ConeErrorPolicyParameter.java | 2 +- .../starlink/ttools/cone/ConeSearchConer.java | 6 ++-- .../uk/ac/starlink/ttools/cone/JdbcConer.java | 6 ++-- .../starlink/ttools/cone/SkyConeMatch2.java | 12 +++---- .../ttools/join/JoinTypeParameter.java | 2 +- .../ttools/join/Match1TypeParameter.java | 2 +- .../ttools/join/MatchEngineParameter.java | 10 +++--- .../ac/starlink/ttools/join/MatchMapper.java | 6 ++-- .../join/ProgressIndicatorParameter.java | 2 +- .../starlink/ttools/join/SkyMatch2Mapper.java | 2 +- .../uk/ac/starlink/ttools/mode/CgiMode.java | 2 +- .../uk/ac/starlink/ttools/mode/CubeMode.java | 6 ++-- .../uk/ac/starlink/ttools/mode/JdbcMode.java | 6 ++-- .../uk/ac/starlink/ttools/mode/MocMode.java | 13 ++++---- .../uk/ac/starlink/ttools/mode/SampMode.java | 2 +- .../ttools/plot2/task/ConfigParameter.java | 2 +- .../starlink/ttools/plot2/task/Plot2Task.java | 12 +++---- .../ttools/plottask/BarStyleFactory.java | 6 ++-- .../ttools/plottask/FontParameter.java | 8 ++--- .../plottask/HistogramPlotStateFactory.java | 33 ++++++++++--------- .../ttools/plottask/MarkStyleFactory.java | 10 +++--- .../ttools/plottask/NamedObjectParameter.java | 6 ++-- .../starlink/ttools/plottask/PaintMode.java | 2 +- .../ttools/plottask/PaintModeParameter.java | 4 +-- .../ttools/plottask/Plot3DStateFactory.java | 6 ++-- .../ttools/plottask/PlotStateFactory.java | 20 +++++------ .../ac/starlink/ttools/plottask/PlotTask.java | 8 ++--- .../starlink/ttools/server/FormServlet.java | 8 ++--- .../ttools/server/ServletEnvironment.java | 8 ++--- .../task/AbstractInputTableParameter.java | 2 +- .../uk/ac/starlink/ttools/task/CatMapper.java | 10 +++--- .../ttools/task/CdsUploadSkyMatch.java | 10 +++--- .../ac/starlink/ttools/task/ChoiceMode.java | 5 ++- .../ttools/task/ConnectionParameter.java | 2 +- .../ttools/task/InputFormatParameter.java | 2 +- .../ttools/task/InputTablesParameter.java | 2 +- .../ttools/task/JoinFixActionParameter.java | 4 +-- .../ac/starlink/ttools/task/LineInvoker.java | 6 ++-- .../starlink/ttools/task/MapEnvironment.java | 2 +- .../ttools/task/OutputFormatParameter.java | 2 +- .../ttools/task/OutputModeParameter.java | 2 +- .../ttools/task/OutputTableParameter.java | 2 +- .../uk/ac/starlink/ttools/task/PixSample.java | 2 +- .../uk/ac/starlink/ttools/task/RegQuery.java | 4 +-- .../uk/ac/starlink/ttools/task/SqlClient.java | 2 +- .../uk/ac/starlink/ttools/task/SqlUpdate.java | 2 +- .../ac/starlink/ttools/task/StiltsServer.java | 6 ++-- .../ttools/task/TableFactoryParameter.java | 2 +- .../uk/ac/starlink/ttools/task/TableLoop.java | 8 ++--- .../ac/starlink/ttools/task/TablePlot3D.java | 3 +- .../uk/ac/starlink/ttools/task/TapLint.java | 10 +++--- .../uk/ac/starlink/ttools/task/TapMapper.java | 8 ++--- .../ac/starlink/ttools/task/TapQuerier.java | 2 +- .../starlink/ttools/task/TapResultReader.java | 13 ++++---- .../uk/ac/starlink/ttools/task/VotCopy.java | 22 ++++++------- .../uk/ac/starlink/ttools/task/VotLint.java | 6 ++-- .../starlink/ttools/task/ParameterTest.java | 2 +- 73 files changed, 235 insertions(+), 209 deletions(-) diff --git a/ndtools/src/main/uk/ac/starlink/ndtools/Diff.java b/ndtools/src/main/uk/ac/starlink/ndtools/Diff.java index 549e5c6329..64bf578011 100644 --- a/ndtools/src/main/uk/ac/starlink/ndtools/Diff.java +++ b/ndtools/src/main/uk/ac/starlink/ndtools/Diff.java @@ -43,7 +43,7 @@ public Diff() { ndiffpar = new IntegerParameter( "ndiffs" ); ndiffpar.setPrompt( "Number of pixel diffs displayed" ); ndiffpar.setPosition( 3 ); - ndiffpar.setDefault( "4" ); + ndiffpar.setIntDefault( 4 ); } public String getPurpose() { diff --git a/task/src/main/uk/ac/starlink/task/BooleanParameter.java b/task/src/main/uk/ac/starlink/task/BooleanParameter.java index 1fd4532701..c2e9bcac0e 100644 --- a/task/src/main/uk/ac/starlink/task/BooleanParameter.java +++ b/task/src/main/uk/ac/starlink/task/BooleanParameter.java @@ -37,8 +37,8 @@ public boolean booleanValue( Environment env ) throws TaskException { * * @param dflt default value */ - public void setDefault( boolean dflt ) { - setDefault( dflt ? "true" : "false" ); + public void setBooleanDefault( boolean dflt ) { + setStringDefault( dflt ? "true" : "false" ); } public Boolean stringToObject( Environment env, String stringval ) diff --git a/task/src/main/uk/ac/starlink/task/ChoiceParameter.java b/task/src/main/uk/ac/starlink/task/ChoiceParameter.java index eb1c8cb5ac..5dca188e68 100644 --- a/task/src/main/uk/ac/starlink/task/ChoiceParameter.java +++ b/task/src/main/uk/ac/starlink/task/ChoiceParameter.java @@ -147,7 +147,7 @@ public void setUsage( String usage ) { public void setDefaultOption( T option ) { if ( option == null ) { if ( isNullPermitted() ) { - setDefault( null ); + setStringDefault( null ); } else { throw new IllegalArgumentException( "null value not allowed" ); @@ -155,7 +155,7 @@ public void setDefaultOption( T option ) { } else { if ( optionMap_.containsKey( option ) ) { - setDefault( getName( option ) ); + setStringDefault( getName( option ) ); } else { throw new IllegalArgumentException( "No such option: " diff --git a/task/src/main/uk/ac/starlink/task/DoubleParameter.java b/task/src/main/uk/ac/starlink/task/DoubleParameter.java index 50456dae67..b291959d89 100644 --- a/task/src/main/uk/ac/starlink/task/DoubleParameter.java +++ b/task/src/main/uk/ac/starlink/task/DoubleParameter.java @@ -34,6 +34,15 @@ public double doubleValue( Environment env ) throws TaskException { return objVal == null ? Double.NaN : objVal.doubleValue(); } + /** + * Sets the default value as a floating point value. + * + * @param dflt new default value + */ + public void setDoubleDefault( double dflt ) { + setStringDefault( Double.isNaN( dflt ) ? "" : Double.toString( dflt ) ); + } + /** * Sets the minimum acceptable value for this parameter. * diff --git a/task/src/main/uk/ac/starlink/task/IntegerParameter.java b/task/src/main/uk/ac/starlink/task/IntegerParameter.java index db00ab34a4..ce50720a21 100644 --- a/task/src/main/uk/ac/starlink/task/IntegerParameter.java +++ b/task/src/main/uk/ac/starlink/task/IntegerParameter.java @@ -54,6 +54,15 @@ public int intValue( Environment env ) throws TaskException { return objectValue( env ).intValue(); } + /** + * Sets the default value as an integer. + * + * @param dflt new default value + */ + public void setIntDefault( int dflt ) { + setStringDefault( Integer.toString( dflt ) ); + } + /** * Mandates that any value of this parameter must be even. */ diff --git a/task/src/main/uk/ac/starlink/task/LineEnvironment.java b/task/src/main/uk/ac/starlink/task/LineEnvironment.java index a1f2f347b9..a087e48170 100644 --- a/task/src/main/uk/ac/starlink/task/LineEnvironment.java +++ b/task/src/main/uk/ac/starlink/task/LineEnvironment.java @@ -303,15 +303,15 @@ private String promptForValue( Parameter param ) throws TaskException { /* Assemble a prompt string. */ String name = param.getName(); String prompt = param.getPrompt(); - String dflt = param.getDefault(); + String strDflt = param.getStringDefault(); StringBuffer obuf = new StringBuffer( param.getName() ); if ( prompt != null ) { obuf.append( " - " ) .append( prompt ); } - if ( dflt != null || param.isNullPermitted() ) { + if ( strDflt != null || param.isNullPermitted() ) { obuf.append( " [" ) - .append( dflt ) + .append( strDflt ) .append( "]" ); } obuf.append( ": " ); @@ -343,7 +343,7 @@ private String promptForValue( Parameter param ) throws TaskException { /* Massage it if necessary. */ String stringVal = sval.length() == 0 - ? param.getDefault() + ? param.getStringDefault() : readValue( sval ); if ( NULL_STRING.equals( stringVal ) ) { stringVal = null; @@ -422,14 +422,15 @@ public void acquireValue( Parameter param ) throws TaskException { * the user. */ else if ( interactive_ && ( promptAll_ - || ( param.getDefault() == null && ! param.isNullPermitted() ) + || ( param.getStringDefault() == null && + ! param.isNullPermitted() ) || param.getPreferExplicit() ) ) { stringVal = promptForValue( param ); } /* Otherwise, use the default. */ else { - stringVal = param.getDefault(); + stringVal = param.getStringDefault(); setValueFromString( param, stringVal ); } diff --git a/task/src/main/uk/ac/starlink/task/MultiTaskInvoker.java b/task/src/main/uk/ac/starlink/task/MultiTaskInvoker.java index 38f0631d82..4924e80457 100644 --- a/task/src/main/uk/ac/starlink/task/MultiTaskInvoker.java +++ b/task/src/main/uk/ac/starlink/task/MultiTaskInvoker.java @@ -196,7 +196,7 @@ private String getUsage( String taskName, Task task ) { Parameter param = params[ i ]; ubuf.append( padding ); boolean optional = param.isNullPermitted() - || param.getDefault() != null; + || param.getStringDefault() != null; ubuf.append( optional ? "[" : "" ) .append( param.getName() ) .append( '=' ) diff --git a/task/src/main/uk/ac/starlink/task/OutputStreamParameter.java b/task/src/main/uk/ac/starlink/task/OutputStreamParameter.java index 0204295e99..7b049f2d22 100644 --- a/task/src/main/uk/ac/starlink/task/OutputStreamParameter.java +++ b/task/src/main/uk/ac/starlink/task/OutputStreamParameter.java @@ -24,7 +24,7 @@ public OutputStreamParameter( String name ) { super( name, Destination.class, true ); setUsage( "" ); setPrompt( "Location of output file" ); - setDefault( "-" ); + setStringDefault( "-" ); setDescription( new String[] { "

The location of the output file. This is usually a filename", diff --git a/task/src/main/uk/ac/starlink/task/Parameter.java b/task/src/main/uk/ac/starlink/task/Parameter.java index 49fa985520..0cf57ef25c 100644 --- a/task/src/main/uk/ac/starlink/task/Parameter.java +++ b/task/src/main/uk/ac/starlink/task/Parameter.java @@ -30,7 +30,7 @@ public abstract class Parameter { private String prompt_; private String description_; private String usage_ = ""; - private String dflt_; + private String stringDflt_; private int pos_; private boolean nullPermitted_; private boolean preferExplicit_; @@ -418,17 +418,20 @@ public void setPreferExplicit( boolean prefer ) { * * @return the default string value */ - public String getDefault() { - return dflt_; + public String getStringDefault() { + return stringDflt_; } /** * Sets the default string value for this parameter. + * Concrete subclasses may additionally supply type-specific + * default value setter methods, but those ought to operate by invoking + * this method. * - * @param dflt the default string value + * @param stringDflt the default string value */ - public void setDefault( String dflt ) { - dflt_ = dflt; + public void setStringDefault( String stringDflt ) { + stringDflt_ = stringDflt; } /** diff --git a/task/src/main/uk/ac/starlink/task/SingleTaskInvoker.java b/task/src/main/uk/ac/starlink/task/SingleTaskInvoker.java index f641ca55d9..98e3807c5f 100644 --- a/task/src/main/uk/ac/starlink/task/SingleTaskInvoker.java +++ b/task/src/main/uk/ac/starlink/task/SingleTaskInvoker.java @@ -116,7 +116,7 @@ public String getUsage() { .append( padding ); Parameter param = params[ i ]; boolean optional = param.isNullPermitted() - || param.getDefault() != null; + || param.getStringDefault() != null; ubuf.append( optional ? "[" : "" ) .append( param.getName() ) .append( '=' ) diff --git a/task/src/main/uk/ac/starlink/task/TerminalEnvironment.java b/task/src/main/uk/ac/starlink/task/TerminalEnvironment.java index 0468171a55..3d5d6dbf28 100644 --- a/task/src/main/uk/ac/starlink/task/TerminalEnvironment.java +++ b/task/src/main/uk/ac/starlink/task/TerminalEnvironment.java @@ -116,8 +116,8 @@ private void acquireValue( Parameter par, int ntries ) } if ( ! valueMap.containsKey( par ) ) { - if ( par.getDefault() != null ) { - valueMap.put( par, par.getDefault() ); + if ( par.getStringDefault() != null ) { + valueMap.put( par, par.getStringDefault() ); } else if ( par.getPreferExplicit() || ! par.isNullPermitted() ) { String prompt = par.getPrompt(); @@ -142,8 +142,8 @@ else if ( par.getPreferExplicit() || ! par.isNullPermitted() ) { value = ""; } if ( value.length() == 0 ) { - String def = par.getDefault(); - if ( par.getDefault() != null ) { + String def = par.getStringDefault(); + if ( par.getStringDefault() != null ) { value = def; } else { // recurse diff --git a/task/src/main/uk/ac/starlink/task/TerminalInvoker.java b/task/src/main/uk/ac/starlink/task/TerminalInvoker.java index 5555e60cdd..3091ea18bb 100644 --- a/task/src/main/uk/ac/starlink/task/TerminalInvoker.java +++ b/task/src/main/uk/ac/starlink/task/TerminalInvoker.java @@ -233,7 +233,7 @@ else if ( pos2 < pos1 ) { for ( Iterator it = paramList.iterator(); it.hasNext(); ) { Parameter param = it.next(); boolean optional = param.isNullPermitted() - || param.getDefault() != null; + || param.getStringDefault() != null; if ( optional ) { usage.append( '[' ); } diff --git a/task/src/testcases/uk/ac/starlink/task/ArithmeticTest.java b/task/src/testcases/uk/ac/starlink/task/ArithmeticTest.java index 3ecfc09ecf..dbb58a0b6c 100644 --- a/task/src/testcases/uk/ac/starlink/task/ArithmeticTest.java +++ b/task/src/testcases/uk/ac/starlink/task/ArithmeticTest.java @@ -34,7 +34,7 @@ public static void main( String[] args ) throws TaskException, IOException { private static class AddTask implements Task { private DoubleParameter p1; - private DoubleParameter p2; + private IntegerParameter p2; private StringParameter p3; public AddTask() { @@ -42,10 +42,13 @@ public AddTask() { p1.setPosition( 1 ); p1.setPrompt( "First number" ); - p2 = new DoubleParameter( "second" ); + p2 = new IntegerParameter( "second" ); p2.setPosition( 2 ); p2.setPrompt( "Second number" ); - p2.setDefault( "0" ); + p2.setIntDefault( 0 ); + assertEquals( "0", p2.getStringDefault() ); + p2.setStringDefault( "0" ); + assertEquals( "0", p2.getStringDefault() ); p3 = new StringParameter( "comment" ); p3.setPrompt( "Comment" ); @@ -61,7 +64,7 @@ public Executable createExecutable( Environment env ) final String sval1 = p1.stringValue( env ); final String sval2 = p2.stringValue( env ); final double val1 = p1.doubleValue( env ); - final double val2 = p2.doubleValue( env ); + final int val2 = p2.intValue( env ); final PrintStream out = env.getOutputStream(); return new Executable() { public void execute() { diff --git a/ttools/src/main/uk/ac/starlink/ttools/build/JyStilts.java b/ttools/src/main/uk/ac/starlink/ttools/build/JyStilts.java index d0b0ca016f..24cd957af5 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/build/JyStilts.java +++ b/ttools/src/main/uk/ac/starlink/ttools/build/JyStilts.java @@ -1186,7 +1186,7 @@ else if ( returnOutput ) { * @param default value, suitable for insertion into python source */ private String getDefaultString( Parameter param ) { - String dflt = param.getDefault(); + String dflt = param.getStringDefault(); boolean isDfltNull = dflt == null || dflt.trim().length() == 0; boolean nullable = param.isNullPermitted(); if ( nullable || ! isDfltNull ) { diff --git a/ttools/src/main/uk/ac/starlink/ttools/build/UsageWriter.java b/ttools/src/main/uk/ac/starlink/ttools/build/UsageWriter.java index ef5b3af3af..b76295dc74 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/build/UsageWriter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/build/UsageWriter.java @@ -105,7 +105,7 @@ public static String xmlItem( Parameter param ) { .append( "\n" ) .append( "

" ) .append( param.getDescription().toString() ); - String dflt = param.getDefault(); + String dflt = param.getStringDefault(); if ( dflt != null && dflt.length() > 0 ) { sbuf.append( "

[Default: " ) .append( dflt.replaceAll( "&", "&" ) diff --git a/ttools/src/main/uk/ac/starlink/ttools/cea/CeaParameter.java b/ttools/src/main/uk/ac/starlink/ttools/cea/CeaParameter.java index 29d730db81..aa7143cb5d 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/cea/CeaParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/cea/CeaParameter.java @@ -49,7 +49,7 @@ public CeaParameter( Parameter taskParam ) { name_ = taskParam.getName(); description_ = taskParam.getDescription(); summary_ = taskParam.getPrompt(); - dflt_ = taskParam.getDefault(); + dflt_ = taskParam.getStringDefault(); isNullPermitted_ = taskParam.isNullPermitted(); type_ = "text"; if ( taskParam instanceof OutputTableParameter || diff --git a/ttools/src/main/uk/ac/starlink/ttools/cone/ConeErrorPolicyParameter.java b/ttools/src/main/uk/ac/starlink/ttools/cone/ConeErrorPolicyParameter.java index b7e2a73e41..deffc0e1af 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/cone/ConeErrorPolicyParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/cone/ConeErrorPolicyParameter.java @@ -40,7 +40,7 @@ public ConeErrorPolicyParameter( String name ) { .append( "" ); setUsage( ubuf.toString() ); setPrompt( "Action on cone search failure" ); - setDefault( ConeErrorPolicy.ABORT.toString() ); + setStringDefault( ConeErrorPolicy.ABORT.toString() ); setDescription( new String[] { "

Determines what will happen if any of the individual cone", "search requests fails. By default the task aborts.", diff --git a/ttools/src/main/uk/ac/starlink/ttools/cone/ConeSearchConer.java b/ttools/src/main/uk/ac/starlink/ttools/cone/ConeSearchConer.java index 0c16010bac..db0b0f22d9 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/cone/ConeSearchConer.java +++ b/ttools/src/main/uk/ac/starlink/ttools/cone/ConeSearchConer.java @@ -96,7 +96,7 @@ public ConeSearchConer() { } ); believeemptyParam_ = new BooleanParameter( BELIEVE_EMPTY_NAME ); - believeemptyParam_.setDefault( "true" ); + believeemptyParam_.setBooleanDefault( true ); believeemptyParam_.setPrompt( "Believe metadata from empty results?" ); believeemptyParam_.setDescription( new String[] { "

Whether the table metadata which is returned from a search", @@ -378,7 +378,7 @@ public void configureParams( Parameter srParam ) { /* SIZE = 0 has a special meaning for SIA: it means any image * containing the given image. This is a sensible default in * most cases. */ - srParam.setDefault( "0" ); + srParam.setStringDefault( "0" ); srParam.setNullPermitted( false ); } @@ -390,7 +390,7 @@ public ConeSearcher createSearcher( Environment env, String url, final boolean believeEmpty, StarTableFactory tfact ) throws TaskException { - formatParam_.setDefault( "image/fits" ); + formatParam_.setStringDefault( "image/fits" ); String format = formatParam_.stringValue( env ); return new SiaConeSearcher( url, format, believeEmpty, tfact ) { @Override diff --git a/ttools/src/main/uk/ac/starlink/ttools/cone/JdbcConer.java b/ttools/src/main/uk/ac/starlink/ttools/cone/JdbcConer.java index ac3987f75a..6da07b05c3 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/cone/JdbcConer.java +++ b/ttools/src/main/uk/ac/starlink/ttools/cone/JdbcConer.java @@ -62,7 +62,7 @@ public JdbcConer() { new ChoiceParameter( "dbunit", AngleUnits.class ); dbunitParam_.addOption( AngleUnits.DEGREES, "deg" ); dbunitParam_.addOption( AngleUnits.RADIANS, "rad" ); - dbunitParam_.setDefault( "deg" ); + dbunitParam_.setStringDefault( "deg" ); dbunitParam_.setPrompt( "Units of ra/dec values in database" ); dbunitParam_.setDescription( new String[] { "

Units of the right ascension and declination columns", @@ -122,7 +122,7 @@ public JdbcConer() { "A value of \"*\" retrieves all columns.", "

", } ); - colsParam_.setDefault( "*" ); + colsParam_.setStringDefault( "*" ); whereParam_ = new StringParameter( "where" ); whereParam_.setUsage( "" ); @@ -149,7 +149,7 @@ public JdbcConer() { "false (the default); on others it may be faster, who knows?", "

", } ); - prepareParam_.setDefault( "false" ); + prepareParam_.setBooleanDefault( false ); } /** diff --git a/ttools/src/main/uk/ac/starlink/ttools/cone/SkyConeMatch2.java b/ttools/src/main/uk/ac/starlink/ttools/cone/SkyConeMatch2.java index d89a95d90d..9a16a67fa7 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/cone/SkyConeMatch2.java +++ b/ttools/src/main/uk/ac/starlink/ttools/cone/SkyConeMatch2.java @@ -115,7 +115,7 @@ public String stringToObject( Environment env, String sval ) { } } }; - modeParam_.setDefault( "all" ); + modeParam_.setStringDefault( "all" ); modeParam_.setPrompt( "Type of match to perform" ); modeParam_.setDescription( new String[] { "

Determines which matches are retained.", @@ -163,7 +163,7 @@ public String stringToObject( Environment env, String sval ) { "which covers VizieR and a few other cone search services.", "

", } ); - usefootParam_.setDefault( Boolean.TRUE.toString() ); + usefootParam_.setBooleanDefault( true ); paramList.add( usefootParam_ ); nsideParam_ = new IntegerParameter( "footnside" ); @@ -193,7 +193,7 @@ public String stringToObject( Environment env, String sval ) { copycolsParam_ = new StringParameter( "copycols" ); copycolsParam_.setUsage( "" ); copycolsParam_.setNullPermitted( true ); - copycolsParam_.setDefault( "*" ); + copycolsParam_.setStringDefault( "*" ); copycolsParam_.setPrompt( "Columns to be copied from input table" ); copycolsParam_.setDescription( new String[] { "

List of columns from the input table which are to be copied", @@ -211,7 +211,7 @@ public String stringToObject( Environment env, String sval ) { distcolParam_ = new StringParameter( "scorecol" ); distcolParam_.setNullPermitted( true ); - distcolParam_.setDefault( "Separation" ); + distcolParam_.setStringDefault( "Separation" ); distcolParam_.setPrompt( "Angular distance output column name" ); distcolParam_.setUsage( "" ); distcolParam_.setDescription( new String[] { @@ -226,7 +226,7 @@ public String stringToObject( Environment env, String sval ) { paramList.add( distcolParam_ ); parallelParam_ = new IntegerParameter( "parallel" ); - parallelParam_.setDefault( "1" ); + parallelParam_.setIntDefault( 1 ); parallelParam_.setPrompt( "Number of queries to make in parallel" ); parallelParam_.setUsage( "" ); parallelParam_.setMinimum( 1 ); @@ -269,7 +269,7 @@ public String stringToObject( Environment env, String sval ) { paramList.add( erractParam_ ); ostreamParam_ = new BooleanParameter( "ostream" ); - ostreamParam_.setDefault( "false" ); + ostreamParam_.setBooleanDefault( false ); ostreamParam_.setPrompt( "Whether output will be strictly streamed" ); ostreamParam_.setDescription( new String[] { "

If set true, this will cause the operation to stream on", diff --git a/ttools/src/main/uk/ac/starlink/ttools/join/JoinTypeParameter.java b/ttools/src/main/uk/ac/starlink/ttools/join/JoinTypeParameter.java index 8f5149c777..da5b575ae4 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/join/JoinTypeParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/join/JoinTypeParameter.java @@ -45,7 +45,7 @@ public JoinTypeParameter( String name ) { "

", } ); setPrompt( "Selection criteria for output rows" ); - setDefault( "1and2" ); + setDefaultOption( JoinType._1AND2 ); } /** diff --git a/ttools/src/main/uk/ac/starlink/ttools/join/Match1TypeParameter.java b/ttools/src/main/uk/ac/starlink/ttools/join/Match1TypeParameter.java index a4958f4f9a..8fe088fa49 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/join/Match1TypeParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/join/Match1TypeParameter.java @@ -28,7 +28,7 @@ public class Match1TypeParameter extends Parameter { */ public Match1TypeParameter( String name ) { super( name, Match1Type.class, true ); - setDefault( IDENTIFY ); + setStringDefault( IDENTIFY ); setNullPermitted( false ); String usage = new StringBuffer() .append( IDENTIFY ) diff --git a/ttools/src/main/uk/ac/starlink/ttools/join/MatchEngineParameter.java b/ttools/src/main/uk/ac/starlink/ttools/join/MatchEngineParameter.java index c1469a4914..316f30935b 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/join/MatchEngineParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/join/MatchEngineParameter.java @@ -62,7 +62,7 @@ public MatchEngineParameter( String name ) { paramsParam_ = new WordsParameter( "params" ); tuningParam_ = new WordsParameter( "tuning" ); - setDefault( "sky" ); + setStringDefault( "sky" ); setPreferExplicit( true ); setUsage( "" ); @@ -130,7 +130,7 @@ public MatchEngineParameter( String name ) { "

", } ); scoreParam_.setNullPermitted( true ); - scoreParam_.setDefault( SCORE_INFO.getName() ); + scoreParam_.setStringDefault( SCORE_INFO.getName() ); } public String getExtraUsage( TableEnvironment env ) { @@ -350,8 +350,8 @@ public MatchEngine stringToObject( Environment env, String stringVal ) /* Configure score column parameter accordingly. */ ValueInfo scoreInfo = engine.getMatchScoreInfo(); - scoreParam_.setDefault( scoreInfo == null ? null - : scoreInfo.getName() ); + scoreParam_.setStringDefault( scoreInfo == null ? null + : scoreInfo.getName() ); /* Configure the engine's subparameters. */ setConfigValues( env, engine.getMatchParameters(), paramsParam_, @@ -384,7 +384,7 @@ private void setConfigValues( Environment env, DescribedValue[] configs, int nConfig = configs.length; if ( nConfig == 0 ) { wordsParam.setNullPermitted( true ); - wordsParam.setDefault( null ); + wordsParam.setStringDefault( null ); } /* Otherwise, enquire about the values to use via the relevant diff --git a/ttools/src/main/uk/ac/starlink/ttools/join/MatchMapper.java b/ttools/src/main/uk/ac/starlink/ttools/join/MatchMapper.java index 6e5fd953dc..dc97499b71 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/join/MatchMapper.java +++ b/ttools/src/main/uk/ac/starlink/ttools/join/MatchMapper.java @@ -54,14 +54,14 @@ public MatchMapper() { irefParam_.setPrompt( "Index of reference table in " + PAIRS_MODE + " mode" ); irefParam_.setUsage( "" ); - irefParam_.setDefault( "1" ); + irefParam_.setIntDefault( 1 ); mmodeParam_ = new ChoiceParameter( "multimode", new String[] { PAIRS_MODE, GROUP_MODE, } ); mmodeParam_.setPrompt( "Semantics of multi-table match" ); - mmodeParam_.setDefault( PAIRS_MODE ); + mmodeParam_.setStringDefault( PAIRS_MODE ); irefParam_.setDescription( new String[] { "

If " + mmodeParam_.getName() + "" @@ -402,7 +402,7 @@ public MultiJoinTypeParameter( String numLabel ) { prompt += " from table " + numLabel; } setPrompt( prompt ); - setDefault( MultiJoinType.DEFAULT.toString() ); + setDefaultOption( MultiJoinType.DEFAULT ); setDescription( new String[] { "

Determines which rows", ( hasNum ? ( "from input table " + numLabel ) diff --git a/ttools/src/main/uk/ac/starlink/ttools/join/ProgressIndicatorParameter.java b/ttools/src/main/uk/ac/starlink/ttools/join/ProgressIndicatorParameter.java index 4f2d304342..db0b1b5bdb 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/join/ProgressIndicatorParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/join/ProgressIndicatorParameter.java @@ -28,7 +28,7 @@ public class ProgressIndicatorParameter extends ChoiceParameter { public ProgressIndicatorParameter( String name ) { super( name, new String[] { NONE, LOG, PROFILE, } ); setPrompt( "How to report progress to screen" ); - setDefault( LOG ); + setStringDefault( LOG ); setDescription( new String[] { "

Determines whether information on progress of the match", "should be output to the standard error stream as it progresses.", diff --git a/ttools/src/main/uk/ac/starlink/ttools/join/SkyMatch2Mapper.java b/ttools/src/main/uk/ac/starlink/ttools/join/SkyMatch2Mapper.java index 0324de63a4..63cac0094e 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/join/SkyMatch2Mapper.java +++ b/ttools/src/main/uk/ac/starlink/ttools/join/SkyMatch2Mapper.java @@ -121,7 +121,7 @@ public TableMapping createMapping( Environment env, int nin ) FixedSkyMatchEngine matcher = new FixedSkyMatchEngine( pixer, error ); int defk = pixer.getHealpixK(); if ( defk >= 0 ) { - healpixkParam_.setDefault( Integer.toString( defk ) ); + healpixkParam_.setIntDefault( defk ); } int k = healpixkParam_.intValue( env ); pixer.setHealpixK( k ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/mode/CgiMode.java b/ttools/src/main/uk/ac/starlink/ttools/mode/CgiMode.java index a85b5bda45..77b9734a5b 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/mode/CgiMode.java +++ b/ttools/src/main/uk/ac/starlink/ttools/mode/CgiMode.java @@ -27,7 +27,7 @@ public class CgiMode implements ProcessingMode { public CgiMode() { formatParam_ = new OutputFormatParameter( "ofmt" ); - formatParam_.setDefault( "votable" ); + formatParam_.setStringDefault( "votable" ); formatParam_.setNullPermitted( false ); formatParam_.setDescription( new String[] { "

Specifies the format in which the output table will be written", diff --git a/ttools/src/main/uk/ac/starlink/ttools/mode/CubeMode.java b/ttools/src/main/uk/ac/starlink/ttools/mode/CubeMode.java index ec0667e33c..df411fdf54 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/mode/CubeMode.java +++ b/ttools/src/main/uk/ac/starlink/ttools/mode/CubeMode.java @@ -48,7 +48,7 @@ public class CubeMode implements ProcessingMode { public CubeMode() { boundsParam_ = new WordsParameter( "bounds" ); boundsParam_.setNullPermitted( true ); - boundsParam_.setDefault( null ); + boundsParam_.setStringDefault( null ); boundsParam_.setWordParser( new BoundsParser() ); boundsParam_.setWordUsage( "[]:[]" ); boundsParam_.setPrompt( "Data bounds for each dimension" ); @@ -114,7 +114,7 @@ public CubeMode() { typeParam_ = new ChoiceParameter( "otype", OUT_TYPES ); typeParam_.setNullPermitted( true ); - typeParam_.setDefault( null ); + typeParam_.setStringDefault( null ); typeParam_.setPrompt( "Type of output array elements" ); typeParam_.setDescription( new String[] { "

The type of numeric value which will fill the output array.", @@ -130,7 +130,7 @@ public CubeMode() { scaleParam_ = new StringParameter( "scale" ); scaleParam_.setUsage( "" ); scaleParam_.setNullPermitted( true ); - scaleParam_.setDefault( null ); + scaleParam_.setStringDefault( null ); scaleParam_.setPrompt( "Value by which to scale counts" ); scaleParam_.setDescription( new String[] { "

Optionally gives a value by which the count in each bin is", diff --git a/ttools/src/main/uk/ac/starlink/ttools/mode/JdbcMode.java b/ttools/src/main/uk/ac/starlink/ttools/mode/JdbcMode.java index 560166f43d..8ad52eb34a 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/mode/JdbcMode.java +++ b/ttools/src/main/uk/ac/starlink/ttools/mode/JdbcMode.java @@ -50,7 +50,7 @@ public JdbcMode() { hostParam_ = new StringParameter( "host" ); hostParam_.setPrompt( "SQL database host" ); hostParam_.setPrompt( "" ); - hostParam_.setDefault( "localhost" ); + hostParam_.setStringDefault( "localhost" ); hostParam_.setDescription( new String[] { "

The host which is acting as a database server.", "

", @@ -77,7 +77,7 @@ public JdbcMode() { WriteMode[] modes = WriteMode.getAllModes(); writeParam_ = new ChoiceParameter( "write", modes ); writeParam_.setPrompt( "Mode for writing to the database table" ); - writeParam_.setDefault( WriteMode.CREATE.toString() ); + writeParam_.setDefaultOption( WriteMode.CREATE ); StringBuffer descrip = new StringBuffer() .append( "

Controls how the values are written to a table " ) .append( "in the database. " ) @@ -101,7 +101,7 @@ public JdbcMode() { userParam_.setNullPermitted( true ); userParam_.setPreferExplicit( true ); try { - userParam_.setDefault( System.getProperty( "user.name" ) ); + userParam_.setStringDefault( System.getProperty( "user.name" ) ); } catch ( SecurityException e ) { // no default - OK diff --git a/ttools/src/main/uk/ac/starlink/ttools/mode/MocMode.java b/ttools/src/main/uk/ac/starlink/ttools/mode/MocMode.java index 67728e6121..c1c06daf3b 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/mode/MocMode.java +++ b/ttools/src/main/uk/ac/starlink/ttools/mode/MocMode.java @@ -13,6 +13,7 @@ import uk.ac.starlink.task.IntegerParameter; import uk.ac.starlink.task.Parameter; import uk.ac.starlink.task.OutputStreamParameter; +import uk.ac.starlink.task.StringParameter; import uk.ac.starlink.task.TaskException; import uk.ac.starlink.ttools.DocUtils; import uk.ac.starlink.ttools.TableConsumer; @@ -32,9 +33,9 @@ public class MocMode implements ProcessingMode { private final IntegerParameter orderParam_; - private final Parameter raParam_; - private final Parameter decParam_; - private final Parameter radiusParam_; + private final StringParameter raParam_; + private final StringParameter decParam_; + private final StringParameter radiusParam_; private final ChoiceParameter mocfmtParam_; private final OutputStreamParameter outParam_; private static final Logger logger_ = @@ -56,7 +57,7 @@ public MocMode() { "(3520*2^-k arcmin).", "

", } ); - orderParam_.setDefault( Integer.toString( 13 ) ); + orderParam_.setIntDefault( 13 ); String system = null; String inDescrip = "the input table"; @@ -65,7 +66,7 @@ public MocMode() { decParam_ = SkyCoordParameter.createDecParameter( "dec", system, inDescrip ); - radiusParam_ = new DoubleParameter( "radius" ); + radiusParam_ = new StringParameter( "radius" ); radiusParam_.setUsage( "" ); radiusParam_.setPrompt( "Radius expression in degrees" ); radiusParam_.setDescription( new String[] { @@ -77,7 +78,7 @@ public MocMode() { " may be used instead.", "

", } ); - radiusParam_.setDefault( "0" ); + radiusParam_.setStringDefault( "0" ); mocfmtParam_ = new ChoiceParameter( "mocfmt", MocFormat.getFormats() ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/mode/SampMode.java b/ttools/src/main/uk/ac/starlink/ttools/mode/SampMode.java index 8cbe9f0352..2d4f0627c9 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/mode/SampMode.java +++ b/ttools/src/main/uk/ac/starlink/ttools/mode/SampMode.java @@ -85,7 +85,7 @@ public SampMode() { "table.load.format.", "

", } ); - formatsParam_.setDefault( "votable fits" ); + formatsParam_.setStringDefault( "votable fits" ); clientParam_ = new StringParameter( "client" ); clientParam_.setDescription( new String[] { diff --git a/ttools/src/main/uk/ac/starlink/ttools/plot2/task/ConfigParameter.java b/ttools/src/main/uk/ac/starlink/ttools/plot2/task/ConfigParameter.java index 2e6a5de78e..9d95d73e23 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plot2/task/ConfigParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plot2/task/ConfigParameter.java @@ -26,7 +26,7 @@ public class ConfigParameter extends Parameter { public ConfigParameter( String name, ConfigKey key ) { super( name, key.getValueClass(), true ); key_ = key; - setDefault( key.valueToString( key.getDefaultValue() ) ); + setStringDefault( key.valueToString( key.getDefaultValue() ) ); boolean nullPermitted; try { key.stringToValue( null ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/plot2/task/Plot2Task.java b/ttools/src/main/uk/ac/starlink/ttools/plot2/task/Plot2Task.java index 3e88e6888d..0dff131f48 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plot2/task/Plot2Task.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plot2/task/Plot2Task.java @@ -132,27 +132,27 @@ public Plot2Task() { } ); geomParam_ = new ChoiceParameter( "geom", DataGeom.class ); xpixParam_ = new IntegerParameter( "xpix" ); - xpixParam_.setDefault( "500" ); + xpixParam_.setIntDefault( 500 ); ypixParam_ = new IntegerParameter( "ypix" ); - ypixParam_.setDefault( "400" ); + ypixParam_.setIntDefault( 400 ); insetsParam_ = new InsetsParameter( "insets" ); painterParam_ = createPaintModeParameter(); dstoreParam_ = new DataStoreParameter( "storage" ); orderParam_ = new StringMultiParameter( "order", ',' ); orderParam_.setNullPermitted( true ); bitmapParam_ = new BooleanParameter( "forcebitmap" ); - bitmapParam_.setDefault( Boolean.FALSE.toString() ); + bitmapParam_.setBooleanDefault( false ); boostParam_ = new DoubleParameter( "boost" ); boostParam_.setMinimum( 0, true ); boostParam_.setMaximum( 1, true ); - boostParam_.setDefault( Double.toString( 0.05 ) ); + boostParam_.setDoubleDefault( 0.05 ); animateParam_ = new InputTableParameter( "animate" ); animateParam_.setNullPermitted( true ); animateFilterParam_ = new FilterParameter( "acmd" ); parallelParam_ = new IntegerParameter( "parallel" ); parallelParam_.setMinimum( 1 ); - parallelParam_.setDefault( Integer.toString( Runtime.getRuntime() - .availableProcessors() ) ); + parallelParam_.setIntDefault( Runtime.getRuntime() + .availableProcessors() ); } public String getPurpose() { diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/BarStyleFactory.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/BarStyleFactory.java index 26fed4d452..32b1819cc1 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/BarStyleFactory.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/BarStyleFactory.java @@ -66,7 +66,7 @@ public Style getStyle( Environment env, String stSuffix ) /* Configure line width. */ IntegerParameter lineParam = createLineWidthParameter( stSuffix ); - lineParam.setDefault( Integer.toString( style0.getLineWidth() ) ); + lineParam.setIntDefault( style0.getLineWidth() ); style.setLineWidth( lineParam.intValue( env ) ); /* Configure dash. */ @@ -124,7 +124,7 @@ private ChoiceParameter createShapeParameter( String stSuffix ) { BarStyle.PLACE_OVER ), "fillover" ); param.addOption( new BarShape( BarStyle.FORM_OPEN, BarStyle.PLACE_OVER ), "openover" ); - param.setDefault( "fill" ); + param.setStringDefault( "fill" ); param.setPrompt( "Histogram bar style for dataset " + stSuffix ); param.setDescription( new String[] { "

Defines how histogram bars will be drawn for dataset", @@ -153,7 +153,7 @@ private IntegerParameter createLineWidthParameter( String stSuffix ) { "Only certain bar styles are affected by the line width.", "

", } ); - param.setDefault( Integer.toString( 2 ) ); + param.setIntDefault( 2 ); param.setMinimum( 1 ); return param; } diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/FontParameter.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/FontParameter.java index 85b98dddbf..ec90c8b005 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/FontParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/FontParameter.java @@ -37,11 +37,11 @@ public FontParameter( String name ) { * be present, and it ought to be a sensible default. */ String dflt = "dialog"; if ( Arrays.asList( getOptionNames() ).contains( dflt ) ) { - setDefault( dflt ); + setStringDefault( dflt ); } else { assert false : Arrays.asList( getOptionNames() ); - setDefault( getOptionNames()[ 0 ] ); + setStringDefault( getOptionNames()[ 0 ] ); } setPrompt( "Font family name" ); setUsage( "dialog|serif|..." ); @@ -74,7 +74,7 @@ public FontParameter( String name ) { "

Sets the font size used for plot annotations.", "

", } ); - sizeParam_.setDefault( Integer.toString( 12 ) ); + sizeParam_.setIntDefault( 12 ); sizeParam_.setMinimum( 1 ); /* Set up associated font style parameter. */ @@ -96,7 +96,7 @@ public FontParameter( String name ) { "bold-italic.", "

", } ); - styleParam_.setDefault( "plain" ); + styleParam_.setStringDefault( "plain" ); } /** diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/HistogramPlotStateFactory.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/HistogramPlotStateFactory.java index ff36fe764a..136622a186 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/HistogramPlotStateFactory.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/HistogramPlotStateFactory.java @@ -59,7 +59,7 @@ public HistogramPlotStateFactory() { "

Lower bound for Y axis.", "

", } ); - yloParam_.setDefault( "0" ); + yloParam_.setDoubleDefault( 0. ); yhiParam_ = new DoubleParameter( "yhi" ); yhiParam_.setNullPermitted( true ); @@ -76,7 +76,7 @@ public HistogramPlotStateFactory() { "

Whether to use a logarithmic scale for the Y axis.", "

", } ); - ylogParam_.setDefault( "false" ); + ylogParam_.setBooleanDefault( false ); ylabelParam_ = new StringParameter( "ylabel" ); ylabelParam_.setPrompt( "Label for vertical axis" ); @@ -86,7 +86,8 @@ public HistogramPlotStateFactory() { "if no value is supplied for this parameter.", "

", } ); - ylabelParam_.setDefault( Histogram.getYInfo( false, false ).getName() ); + ylabelParam_.setStringDefault( Histogram.getYInfo( false, false ) + .getName() ); ylabelParam_.setNullPermitted( true ); binwidthParam_ = new DoubleParameter( "binwidth" ); @@ -108,7 +109,7 @@ public HistogramPlotStateFactory() { "Otherwise (the default), no scaling is done.", "

", } ); - normParam_.setDefault( "false" ); + normParam_.setBooleanDefault( false ); cumulativeParam_ = new BooleanParameter( "cumulative" ); cumulativeParam_.setPrompt( "Cumulative plot?" ); @@ -122,7 +123,7 @@ public HistogramPlotStateFactory() { "on the X axis that it covers.", "

", } ); - cumulativeParam_.setDefault( "false" ); + cumulativeParam_.setBooleanDefault( false ); binbaseParam_ = new DoubleParameter( "binbase" ); binbaseParam_.setPrompt( "Lower bound for one histogram bin" ); @@ -136,7 +137,7 @@ public HistogramPlotStateFactory() { "corresponding distance.", "

", } ); - binbaseParam_.setDefault( "0" ); + binbaseParam_.setDoubleDefault( 0. ); } public Parameter[] getParameters() { @@ -175,7 +176,7 @@ protected void configurePlotState( PlotState pstate, Environment env ) final double ylo; if ( ylog ) { yloParam_.setNullPermitted( true ); - yloParam_.setDefault( null ); + yloParam_.setStringDefault( null ); ylo = yloParam_.doubleValue( env ); } else { @@ -184,7 +185,7 @@ protected void configurePlotState( PlotState pstate, Environment env ) * trouble with static parameter settings (e.g. from HTML forms). * So work around it. */ yloParam_.setNullPermitted( true ); - yloParam_.setDefault( "0" ); + yloParam_.setDoubleDefault( 0 ); double yl = yloParam_.doubleValue( env ); ylo = Double.isNaN( yl ) ? 0 : yl; } @@ -200,18 +201,18 @@ protected void configurePlotState( PlotState pstate, Environment env ) double xhi = state.getRanges()[ 0 ][ 1 ]; if ( ! Double.isNaN( xlo ) && ! Double.isNaN( xhi ) ) { binwidthParam_.setNullPermitted( false ); - binwidthParam_.setDefault( Double - .toString( getDefaultBinWidth( xlo, xhi, - xlog ) ) ); + binwidthParam_.setDoubleDefault( getDefaultBinWidth( xlo, xhi, + xlog ) ); } double bw = binwidthParam_.doubleValue( env ); state.setBinWidth( Double.isNaN( bw ) ? 0.0 : bw ); state.setNormalised( normParam_.booleanValue( env ) ); - ylabelParam_.setDefault( Histogram.getYInfo( state.getWeighted(), - state.getNormalised() ) - .getName() ); + ylabelParam_.setStringDefault( Histogram + .getYInfo( state.getWeighted(), + state.getNormalised() ) + .getName() ); state.setAxisLabels( new String[] { state.getAxisLabels()[ 0 ], ylabelParam_.stringValue( env ), @@ -219,7 +220,7 @@ protected void configurePlotState( PlotState pstate, Environment env ) state.setNormalised( normParam_.booleanValue( env ) ); state.setCumulative( cumulativeParam_.booleanValue( env ) ); - binbaseParam_.setDefault( state.getLogFlags()[ 0 ] ? "1" : "0" ); + binbaseParam_.setDoubleDefault( state.getLogFlags()[ 0 ] ? 1. : 0. ); state.setBinBase( binbaseParam_.doubleValue( env ) ); } @@ -432,7 +433,7 @@ private StringParameter createWeightParameter( String tlabel ) { "(contact the author to lobby for such an amendment).", "

", } ); - param.setDefault( "1" ); + param.setStringDefault( "1" ); return param; } } diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/MarkStyleFactory.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/MarkStyleFactory.java index 37a3037b92..b98582c5ee 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/MarkStyleFactory.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/MarkStyleFactory.java @@ -104,7 +104,7 @@ public Style getStyle( Environment env, String stSuffix ) /* Configure transparency (opacity limit). */ IntegerParameter transparParam = createTransparencyParameter( stSuffix ); - transparParam.setDefault( Integer.toString( style0.getOpaqueLimit() ) ); + transparParam.setIntDefault( style0.getOpaqueLimit() ); style.setOpaqueLimit( transparParam.intValue( env ) ); /* Configure line mode. */ @@ -117,7 +117,7 @@ public Style getStyle( Environment env, String stSuffix ) /* Configure point hide flag. */ BooleanParameter hideParam = createHidePointsParameter( stSuffix ); - hideParam.setDefault( style0.getHidePoints() ? "true" : "false" ); + hideParam.setBooleanDefault( style0.getHidePoints() ); style.setHidePoints( hideParam.booleanValue( env ) ); /* Configure error renderer if appropriate. */ @@ -164,7 +164,7 @@ private IntegerParameter createSizeParameter( String stSuffix ) { IntegerParameter param = new IntegerParameter( paramName( "size", stSuffix ) ); param.setPrompt( "Marker size in pixels for data set " + stSuffix ); - param.setDefault( Integer.toString( -1 ) ); + param.setIntDefault( -1 ); param.setDescription( new String[] { "

Defines the marker size in pixels for markers plotted in", "data set " + stSuffix + ".", @@ -321,7 +321,7 @@ private IntegerParameter createLineWidthParameter( String stSuffix ) { "parameter is set to draw lines.", "

", } ); - param.setDefault( "1" ); + param.setIntDefault( 1 ); param.setMinimum( 1 ); return param; } @@ -358,7 +358,7 @@ private DashParameter createDashParameter( String stSuffix ) { private BooleanParameter createHidePointsParameter( String stSuffix ) { BooleanParameter param = new BooleanParameter( paramName( "hide", stSuffix ) ); - param.setDefault( "false" ); + param.setBooleanDefault( false ); param.setPrompt( "Hide point markers for data set " + stSuffix + "?" ); param.setDescription( new String[] { "

Indicates whether the actual markers plotted for each point", diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/NamedObjectParameter.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/NamedObjectParameter.java index 5a3f0e94a2..d75166c916 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/NamedObjectParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/NamedObjectParameter.java @@ -77,16 +77,16 @@ public T stringToObject( Environment env, String sval ) */ public void setDefaultOption( T option ) { if ( option == null ) { - super.setDefault( null ); + super.setStringDefault( null ); return; } for ( NamedOption opt : optList_ ) { if ( opt.option_.equals( option ) ) { - super.setDefault( opt.name_ ); + super.setStringDefault( opt.name_ ); return; } } - super.setDefault( toString( option ) ); + super.setStringDefault( toString( option ) ); } /** diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/PaintMode.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/PaintMode.java index 7d86e9c084..e430d4e923 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/PaintMode.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/PaintMode.java @@ -175,7 +175,7 @@ public Painter createPainter( Environment env, } } if ( dfltExp != null ) { - formatParam.setDefault( dfltExp.getName() ); + formatParam.setStringDefault( dfltExp.getName() ); } final GraphicExporter exporter = (GraphicExporter) formatParam.objectValue( env ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/PaintModeParameter.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/PaintModeParameter.java index 257078c8c3..d8a4a69683 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/PaintModeParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/PaintModeParameter.java @@ -29,7 +29,7 @@ public PaintModeParameter( String name, GraphicExporter[] exporters ) { outParam_ = new OutputStreamParameter( "out" ); outParam_.setPrompt( "Output file for graphics" ); - outParam_.setDefault( null ); + outParam_.setStringDefault( null ); outParam_.setNullPermitted( false ); formatParam_ = @@ -79,7 +79,7 @@ public PaintModeParameter( String name, GraphicExporter[] exporters ) { /* Set the default as the final value. This happens to be "auto" * at present. If it wasn't, choosing the last one wouldn't * necessarily be a good choice. */ - setDefault( modes[ modes.length - 1 ].getName() ); + setStringDefault( modes[ modes.length - 1 ].getName() ); } /** diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/Plot3DStateFactory.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/Plot3DStateFactory.java index c4bb2ba7b2..f0d7ea5793 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/Plot3DStateFactory.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/Plot3DStateFactory.java @@ -49,7 +49,7 @@ public Plot3DStateFactory( String[] dimNames, boolean useAux, "make the fog thicker, or set to zero if no fogging is required.", "

", } ); - fogParam_.setDefault( new Double( 1.0 ).toString() ); + fogParam_.setDoubleDefault( 1.0 ); phiParam_ = new DoubleParameter( "phi" ); phiParam_.setPrompt( "Rotation around Z axis" ); @@ -59,7 +59,7 @@ public Plot3DStateFactory( String[] dimNames, boolean useAux, "abound the Z axis prior to drawing.", "

", } ); - phiParam_.setDefault( new Double( 30. ).toString() ); + phiParam_.setDoubleDefault( 30 ); thetaParam_ = new DoubleParameter( "theta" ); thetaParam_.setPrompt( "Rotation around plane horizontal" ); @@ -71,7 +71,7 @@ public Plot3DStateFactory( String[] dimNames, boolean useAux, "prior to drawing.", "

", } ); - thetaParam_.setDefault( new Double( 15. ).toString() ); + thetaParam_.setDoubleDefault( 15. ); } public Parameter[] getParameters() { diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/PlotStateFactory.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/PlotStateFactory.java index 44fe80b665..10f350a66e 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/PlotStateFactory.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/PlotStateFactory.java @@ -99,7 +99,7 @@ public PlotStateFactory( String[] dimNames, boolean useAux, "If false, they are absent.", "

", } ); - gridParam_.setDefault( true ); + gridParam_.setBooleanDefault( true ); seqParam_ = new StringMultiParameter( "sequence", ',' ); seqParam_.setPrompt( "Defines plot order of subsets" ); @@ -143,7 +143,7 @@ public PlotStateFactory( String[] dimNames, boolean useAux, "Setting it true may slow the plot down slightly.", "

", } ); - aaParam_.setDefault( true ); + aaParam_.setBooleanDefault( true ); } /** @@ -208,7 +208,7 @@ public Parameter[] getParameters() { if ( useAux_ ) { ShaderParameter shaderParam = createShaderParameters( new String[] { AUX_VARIABLE } )[ 0 ]; - assert shaderParam.getDefault() != null; + assert shaderParam.getStringDefault() != null; paramList.add( shaderParam ); } @@ -367,7 +367,7 @@ protected void configurePlotState( PlotState state, Environment env ) } } String seqDefault = seqbuf.toString(); - seqParam_.setDefault( seqDefault ); + seqParam_.setStringDefault( seqDefault ); String seqString = seqParam_.stringValue( env ); if ( seqString != null && ! seqString.equals( seqDefault ) ) { String[] setLabels = seqParam_.stringValue( env ) @@ -412,7 +412,7 @@ protected void configurePlotState( PlotState state, Environment env ) ? mainDimNames_[ idim ] : "Aux " + ( idim - mainNdim + 1 ); } - axParamSet.labelParam_.setDefault( labelDefault ); + axParamSet.labelParam_.setStringDefault( labelDefault ); labels[ idim ] = axParamSet.labelParam_.stringValue( env ); } state.setLogFlags( logFlags ); @@ -775,7 +775,7 @@ private SubsetDef[] getSubsetDefinitions( Environment env, String tlabel, * a single subset with inclusion of all points. */ if ( nset == 0 ) { StringParameter nameParam = createSubsetNameParameter( tlabel ); - nameParam.setDefault( tlabel ); + nameParam.setStringDefault( tlabel ); String name = nameParam.stringValue( env ); return new SubsetDef[] { new SubsetDef( tlabel, "true", name, @@ -793,7 +793,7 @@ private SubsetDef[] getSubsetDefinitions( Environment env, String tlabel, .stringValue( env ); StringParameter nameParam = createSubsetNameParameter( stLabel ); - nameParam.setDefault( expr ); + nameParam.setStringDefault( expr ); String name = nameParam.stringValue( env ); sdefs[ is ] = new SubsetDef( stLabel, expr, name, @@ -940,7 +940,7 @@ private ShaderParameter[] createShaderParameters( String[] auxlabels ) { for ( int i = 0; i < nparam; i++ ) { params[ i ] = new ShaderParameter( AUX_PREFIX + auxlabels[ i ] + "shader" ); - params[ i ].setDefault( dflts[ i ] ); + params[ i ].setStringDefault( dflts[ i ] ); } return params; } @@ -1016,7 +1016,7 @@ public AxisParameterSet( String axName ) { "axis is linear; if true it is logarithmic.", "

", } ); - logParam_.setDefault( "false" ); + logParam_.setBooleanDefault( false ); flipParam_ = new BooleanParameter( axName_ + "flip" ); flipParam_.setPrompt( "Reversed direction on " + axName_ @@ -1027,7 +1027,7 @@ public AxisParameterSet( String axName ) { "(e.g. right to left rather than left to right).", "

", } ); - flipParam_.setDefault( "false" ); + flipParam_.setBooleanDefault( false ); labelParam_ = new StringParameter( axName_ + "label" ); labelParam_.setPrompt( "Label for axis " + axName_ ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/plottask/PlotTask.java b/ttools/src/main/uk/ac/starlink/ttools/plottask/PlotTask.java index 332bd8b6fc..25499b8eff 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/plottask/PlotTask.java +++ b/ttools/src/main/uk/ac/starlink/ttools/plottask/PlotTask.java @@ -73,7 +73,7 @@ public PlotTask( String purpose, PlotStateFactory stateFactory, "

The width of the output graphic in pixels.", "

", } ); - xpixParam_.setDefault( "400" ); + xpixParam_.setIntDefault( 400 ); paramList_.add( xpixParam_ ); ypixParam_ = new IntegerParameter( "ypix" ); @@ -83,7 +83,7 @@ public PlotTask( String purpose, PlotStateFactory stateFactory, "

The height of the output graphic in pixels.", "

", } ); - ypixParam_.setDefault( "300" ); + ypixParam_.setIntDefault( 300 ); paramList_.add( ypixParam_ ); fontParam_ = new FontParameter( "font" ); @@ -154,9 +154,7 @@ public Executable createExecutable( Environment env ) throws TaskException { final int xpix = xpixParam_.intValue( env ); final int ypix = ypixParam_.intValue( env ); final PlotState state = stateFactory_.getPlotState( env ); - legendParam_.setDefault( state.getPlotData().getSetCount() > 1 - ? "true" - : "false" ); + legendParam_.setBooleanDefault( state.getPlotData().getSetCount() > 1 ); final boolean hasLegend = legendParam_.booleanValue( env ); final Painter painter = painterParam_.painterValue( env ); final Font font = fontParam_.fontValue( env ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/server/FormServlet.java b/ttools/src/main/uk/ac/starlink/ttools/server/FormServlet.java index 8b398a4c20..861fea83e7 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/server/FormServlet.java +++ b/ttools/src/main/uk/ac/starlink/ttools/server/FormServlet.java @@ -305,7 +305,7 @@ protected void writeColumnControl( ServletOutputStream out, String name, protected void writeTextControl( ServletOutputStream out, String name, Parameter param ) throws IOException { - String dflt = param.getDefault(); + String dflt = param.getStringDefault(); out.println( "
" + name + ":
" ); out.println( "
" ); out.print( "" + name + ":" ); out.println( "
" ); out.print( "" ); @@ -542,7 +542,7 @@ public void writeControls( ServletOutputStream out, StarTable table ) out.println( "
Y Axis
" ); out.println( "
" ); Parameter yloParam = getParameter( "ylo" ); - yloParam.setDefault( null ); + yloParam.setStringDefault( null ); writeTextControl( out, "ylo", getParameter( "ylo" ) ); writeTextControl( out, "yhi", getParameter( "yhi" ) ); writeBooleanControl( out, "ylog", getParameter( "ylog" ) ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/server/ServletEnvironment.java b/ttools/src/main/uk/ac/starlink/ttools/server/ServletEnvironment.java index a0bc86feca..72078e875b 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/server/ServletEnvironment.java +++ b/ttools/src/main/uk/ac/starlink/ttools/server/ServletEnvironment.java @@ -90,7 +90,7 @@ public void acquireValue( Parameter param ) throws TaskException { if ( isDefault && param instanceof OutputTableParameter ) { OutputTableParameter outParam = (OutputTableParameter) param; OutputFormatParameter formatParam = outParam.getFormatParameter(); - formatParam.setDefault( "votable" ); + formatParam.setStringDefault( "votable" ); String format = formatParam.stringValue( this ); StarTableWriter writer; try { @@ -110,7 +110,7 @@ else if ( isDefault && param instanceof OutputModeParameter ) { OutputModeParameter outParam = (OutputModeParameter) param; OutputFormatParameter formatParam = new OutputFormatParameter( "ofmt" ); - formatParam.setDefault( "votable" ); + formatParam.setStringDefault( "votable" ); String format = formatParam.stringValue( this ); StarTableWriter writer; try { @@ -129,7 +129,7 @@ else if ( isDefault && param instanceof OutputModeParameter ) { else if ( isDefault && param instanceof PaintModeParameter ) { PaintModeParameter pmParam = (PaintModeParameter) param; ChoiceParameter formatParam = pmParam.getFormatParameter(); - formatParam.setDefault( "png" ); + formatParam.setStringDefault( "png" ); GraphicExporter exporter = (GraphicExporter) formatParam.objectValue( this ); pmParam.setValueFromPainter( this, new ServletPainter( exporter ) ); @@ -143,7 +143,7 @@ else if ( isDefault && param instanceof PaintModeParameter ) { /* No value supplied: use parameter default. */ if ( isDefault ) { - stringVal = param.getDefault(); + stringVal = param.getStringDefault(); } /* Multiple-valued parameter: concatenate different values. */ diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/AbstractInputTableParameter.java b/ttools/src/main/uk/ac/starlink/ttools/task/AbstractInputTableParameter.java index 9b4559077e..9545686320 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/AbstractInputTableParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/AbstractInputTableParameter.java @@ -56,7 +56,7 @@ protected AbstractInputTableParameter( String name, Class clazz ) { char labelChar = name.charAt( 0 ); formatParam_ = new InputFormatParameter( labelChar + "fmt" + suffix ); streamParam_ = new BooleanParameter( labelChar + "stream" + suffix ); - streamParam_.setDefault( false ); + streamParam_.setBooleanDefault( false ); setDescription( new String[] { "

The location of the input table.", diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/CatMapper.java b/ttools/src/main/uk/ac/starlink/ttools/task/CatMapper.java index ac093e3ec3..ff7bbe014c 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/CatMapper.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/CatMapper.java @@ -69,7 +69,7 @@ public CatMapper( boolean hasLazy ) { seqParam_ = new StringParameter( "seqcol" ); seqParam_.setUsage( "" ); seqParam_.setNullPermitted( true ); - seqParam_.setDefault( null ); + seqParam_.setStringDefault( null ); seqParam_.setDescription( new String[] { "

Name of a column to be added to the output table", "which will contain the sequence number of the input table", @@ -82,7 +82,7 @@ public CatMapper( boolean hasLazy ) { locParam_ = new StringParameter( "loccol" ); locParam_.setUsage( "" ); locParam_.setNullPermitted( true ); - locParam_.setDefault( null ); + locParam_.setStringDefault( null ); locParam_.setDescription( new String[] { "

Name of a column to be added to the output table", "which will contain the location", @@ -94,7 +94,7 @@ public CatMapper( boolean hasLazy ) { ulocParam_ = new StringParameter( "uloccol" ); ulocParam_.setUsage( "" ); ulocParam_.setNullPermitted( true ); - ulocParam_.setDefault( null ); + ulocParam_.setStringDefault( null ); ulocParam_.setDescription( new String[] { "

Name of a column to be added to the output table", "which will contain the unique part of the location", @@ -114,7 +114,7 @@ public CatMapper( boolean hasLazy ) { } ); lazyParam_ = new BooleanParameter( "lazy" ); - lazyParam_.setDefault( false ); + lazyParam_.setBooleanDefault( false ); lazyParam_.setDescription( new String[] { "

Whether to perform table resolution lazily.", "If true, each table is only accessed when the time comes to", @@ -127,7 +127,7 @@ public CatMapper( boolean hasLazy ) { } ); countParam_ = new BooleanParameter( "countrows" ); - countParam_.setDefault( false ); + countParam_.setBooleanDefault( false ); countParam_.setDescription( new String[] { "

Whether to count the rows in the table before starting", "the output. This is essentially a tuning parameter -", diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/CdsUploadSkyMatch.java b/ttools/src/main/uk/ac/starlink/ttools/task/CdsUploadSkyMatch.java index 278b2696f3..8a82f90775 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/CdsUploadSkyMatch.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/CdsUploadSkyMatch.java @@ -132,7 +132,7 @@ public CdsUploadSkyMatch() { "

", } ); chunkParam_.setMinimum( 1 ); - chunkParam_.setDefault( Integer.toString( 50 * 1000 ) ); + chunkParam_.setIntDefault( 50 * 1000 ); findParam_ = new ChoiceParameter( "find", @@ -185,7 +185,7 @@ public CdsUploadSkyMatch() { "(2,000,000 at time of writing).", "

", } ); - maxrecParam_.setDefault( "-1" ); + maxrecParam_.setIntDefault( -1 ); paramList.add( maxrecParam_ ); urlParam_ = new URLParameter( "serviceurl" ); @@ -197,7 +197,7 @@ public CdsUploadSkyMatch() { "this parameter can be used to access them.", "

", } ); - urlParam_.setDefault( CdsUploadMatcher.XMATCH_URL ); + urlParam_.setStringDefault( CdsUploadMatcher.XMATCH_URL ); paramList.add( urlParam_ ); usemocParam_ = new BooleanParameter( "usemoc" ); @@ -209,7 +209,7 @@ public CdsUploadSkyMatch() { "This should improve efficiency, but have no effect on the result.", "

", } ); - usemocParam_.setDefault( Boolean.TRUE.toString() ); + usemocParam_.setBooleanDefault( true ); paramList.add( usemocParam_ ); presortParam_ = new BooleanParameter( "presort" ); @@ -237,7 +237,7 @@ public CdsUploadSkyMatch() { "But feel free to experiment.", "

", } ); - presortParam_.setDefault( Boolean.FALSE.toString() ); + presortParam_.setBooleanDefault( false ); paramList.add( presortParam_ ); fixcolsParam_ = new JoinFixActionParameter( "fixcols" ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/ChoiceMode.java b/ttools/src/main/uk/ac/starlink/ttools/task/ChoiceMode.java index 288d8b1b0d..495063c9b4 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/ChoiceMode.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/ChoiceMode.java @@ -78,11 +78,10 @@ public TableConsumer createConsumer( Environment env ) getDefaultAssociatedParameters( OutputModeParameter modeParam ) { /* Get the default mode object, which is copy mode. */ - String modeName = modeParam.getDefault(); + String modeName = modeParam.getStringDefault(); ProcessingMode mode; try { - mode = (ProcessingMode) - Stilts.getModeFactory().createObject( modeName ); + mode = Stilts.getModeFactory().createObject( modeName ); } catch ( LoadException e ) { logger_.warning( "Can't load default output mode?? " + e ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/ConnectionParameter.java b/ttools/src/main/uk/ac/starlink/ttools/task/ConnectionParameter.java index d44f236d73..0a8bd959a2 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/ConnectionParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/ConnectionParameter.java @@ -49,7 +49,7 @@ public ConnectionParameter( String name ) { try { Properties props = System.getProperties(); if ( props.containsKey( "user.name" ) ) { - userParam_.setDefault( props.getProperty( "user.name" ) ); + userParam_.setStringDefault( props.getProperty( "user.name" ) ); } } catch ( SecurityException e ) { diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/InputFormatParameter.java b/ttools/src/main/uk/ac/starlink/ttools/task/InputFormatParameter.java index 85623c90dd..819b2f051b 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/InputFormatParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/InputFormatParameter.java @@ -22,7 +22,7 @@ public InputFormatParameter( String name ) { super( name ); setPrompt( "Format name for input table" ); setNullPermitted( false ); - setDefault( StarTableFactory.AUTO_HANDLER ); + setStringDefault( StarTableFactory.AUTO_HANDLER ); setDescription( new String[] { "

Specifies the format of the input table", diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/InputTablesParameter.java b/ttools/src/main/uk/ac/starlink/ttools/task/InputTablesParameter.java index f572bc37ff..6a69c4d314 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/InputTablesParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/InputTablesParameter.java @@ -82,7 +82,7 @@ public InputTablesParameter( String name ) { "FITS and VOTable and their variants.", "

", } ); - multiParam_.setDefault( "false" ); + multiParam_.setBooleanDefault( false ); } /** diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/JoinFixActionParameter.java b/ttools/src/main/uk/ac/starlink/ttools/task/JoinFixActionParameter.java index 8fc6571b21..d151e1d73e 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/JoinFixActionParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/JoinFixActionParameter.java @@ -64,7 +64,7 @@ public JoinFixAction createAction( Environment env, } } ); - setDefault( dflt ); + setStringDefault( dflt ); StringBuffer dbuf = new StringBuffer() .append( "

Determines how input columns are renamed before\n" ) .append( "use in the output table. The choices are:\n" ) @@ -148,7 +148,7 @@ public StringParameter createSuffixParameter( String numLabel ) { public StringParameter createSuffixParameter( String name, String descrip, String dflt ) { StringParameter param = new StringParameter( name ); - param.setDefault( dflt ); + param.setStringDefault( dflt ); param.setNullPermitted( true ); param.setUsage( "

The location of the output table. This is usually a filename", diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/PixSample.java b/ttools/src/main/uk/ac/starlink/ttools/task/PixSample.java index 07925652a2..c85917e834 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/PixSample.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/PixSample.java @@ -324,7 +324,7 @@ private static class PixSampleTablesInput implements TablesInput { "This is usually, but not necessarily, FITS.", "

", } ); - pixFmtParam.setDefault( "fits" ); + pixFmtParam.setStringDefault( "fits" ); pixFilterParam_ = new FilterParameter( "pcmd" ); pixFilterParam_.setPrompt( "Processing command(s)" diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/RegQuery.java b/ttools/src/main/uk/ac/starlink/ttools/task/RegQuery.java index 6ecdd96367..a202489959 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/RegQuery.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/RegQuery.java @@ -72,7 +72,7 @@ public RegQuery() { urlParam_ = new URLParameter( "regurl" ); urlParam_.setPrompt( "URL of registry service" ); - urlParam_.setDefault( Ri1RegistryQuery.AG_REG ); + urlParam_.setStringDefault( Ri1RegistryQuery.AG_REG ); urlParam_.setDescription( new String[] { "

The URL of a SOAP endpoint which provides", "a VOResource1.0 IVOA registry service.", @@ -88,7 +88,7 @@ public RegQuery() { soapoutParam_ = new OutputStreamParameter( "soapout" ); soapoutParam_.setNullPermitted( true ); - soapoutParam_.setDefault( null ); + soapoutParam_.setStringDefault( null ); soapoutParam_.setPrompt( "SOAP message destination stream" ); soapoutParam_.setDescription( new String[] { "

If set to a non-null value, this gives the destination", diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/SqlClient.java b/ttools/src/main/uk/ac/starlink/ttools/task/SqlClient.java index 4dfac3f3a8..e536540320 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/SqlClient.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/SqlClient.java @@ -44,7 +44,7 @@ public SqlClient() { connParam_ = new ConnectionParameter( "db" ); stmtParam_ = new StatementParameter( "sql" ); ofmtParam_ = new OutputFormatParameter( "ofmt" ); - ofmtParam_.setDefault( "text" ); + ofmtParam_.setStringDefault( "text" ); } public String getPurpose() { diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/SqlUpdate.java b/ttools/src/main/uk/ac/starlink/ttools/task/SqlUpdate.java index a166c32807..07da9b1a0e 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/SqlUpdate.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/SqlUpdate.java @@ -85,7 +85,7 @@ public SqlUpdate() { } ); progressParam_ = new BooleanParameter( "progress" ); - progressParam_.setDefault( "true" ); + progressParam_.setBooleanDefault( true ); progressParam_.setPrompt( "Display progress on console?" ); progressParam_.setDescription( new String[] { "

If true, a spinner will be drawn on standard error", diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/StiltsServer.java b/ttools/src/main/uk/ac/starlink/ttools/task/StiltsServer.java index f1f1ab0ebe..21e7e33bb6 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/StiltsServer.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/StiltsServer.java @@ -59,7 +59,7 @@ public StiltsServer() { "

Port number on which the server should run.", "

", } ); - portParam_.setDefault( new Integer( 2112 ).toString() ); + portParam_.setIntDefault( 2112 ); baseParam_ = new StringParameter( "basepath" ); baseParam_.setPrompt( "Base path for server URLs" ); @@ -74,7 +74,7 @@ public StiltsServer() { "

", } ); baseParam_.setNullPermitted( true ); - baseParam_.setDefault( baseDefault ); + baseParam_.setStringDefault( baseDefault ); tasksParam_ = new StringParameter( "tasks" ); tasksParam_.setPrompt( "List of tasks provided" ); @@ -107,7 +107,7 @@ public StiltsServer() { } String tasksDefault = taskBuf.toString(); TaskServlet.getTaskNames( taskFactory, tasksDefault ); // test no error - tasksParam_.setDefault( tasksDefault ); + tasksParam_.setStringDefault( tasksDefault ); tfactParam_ = new TableFactoryParameter( "tablefactory" ); } diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/TableFactoryParameter.java b/ttools/src/main/uk/ac/starlink/ttools/task/TableFactoryParameter.java index 6f62ccda04..6a21ec086b 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/TableFactoryParameter.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/TableFactoryParameter.java @@ -93,7 +93,7 @@ public TableFactoryParameter( String name ) { "and may change significantly in future releases.", "

", } ); - setDefault( FILE_OPTION ); + setStringDefault( FILE_OPTION ); } public StarTableFactory stringToObject( Environment env, String sval ) diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/TableLoop.java b/ttools/src/main/uk/ac/starlink/ttools/task/TableLoop.java index 1d05950b7e..f88d85619f 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/TableLoop.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/TableLoop.java @@ -36,7 +36,7 @@ public TableLoop() { "

Gives the name of the single column produced by this command.", "

", } ); - varParam_.setDefault( "i" ); + varParam_.setStringDefault( "i" ); stepParam_ = new DoubleParameter( "step" ); stepParam_.setPrompt( "Loop step value" ); @@ -45,7 +45,7 @@ public TableLoop() { "at each iteration, i.e. each table row.", "

", } ); - stepParam_.setDefault( "1" ); + stepParam_.setDoubleDefault( 1. ); startParam_ = new DoubleParameter( "start" ); startParam_.setPrompt( "Loop initial value" ); @@ -54,7 +54,7 @@ public TableLoop() { "This will the the value in the first row of the table.", "

", } ); - startParam_.setDefault( "0" ); + startParam_.setDoubleDefault( 0. ); endParam_ = new DoubleParameter( "end" ); endParam_.setPrompt( "Loop final value" ); @@ -75,7 +75,7 @@ public TableLoop() { "the column will be an integer column.", "

", } ); - forceFloatParam_.setDefault( false ); + forceFloatParam_.setBooleanDefault( false ); int ipos = 0; varParam_.setPosition( ++ipos ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/TablePlot3D.java b/ttools/src/main/uk/ac/starlink/ttools/task/TablePlot3D.java index 6fdbca007c..48832be388 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/TablePlot3D.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/TablePlot3D.java @@ -16,6 +16,7 @@ public TablePlot3D() { new Plot3DStateFactory( new String[] { "X", "Y", "Z" }, true, true, 3 ), new CartesianPlot3D() ); - getXpixParameter().setDefault( getYpixParameter().getDefault() ); + getXpixParameter().setStringDefault( getYpixParameter() + .getStringDefault() ); } } diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/TapLint.java b/ttools/src/main/uk/ac/starlink/ttools/task/TapLint.java index 31234f359f..a0a194fc35 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/TapLint.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/TapLint.java @@ -87,7 +87,7 @@ public TapLint() { } } stagesParam_.setUsage( subuf.toString() + "[ ...]" ); - stagesParam_.setDefault( sdbuf.toString() ); + stagesParam_.setStringDefault( sdbuf.toString() ); stagesParam_.setDescription( new String[] { "

Lists the validation stages which the validator will perform.", "Each stage is represented by a short code, as follows:", @@ -138,7 +138,7 @@ public TapLint() { dbuf.toString(), "

", } ); - reportParam_.setDefault( tchrs ); + reportParam_.setStringDefault( tchrs ); paramList.add( reportParam_ ); repeatParam_ = new IntegerParameter( "maxrepeat" ); @@ -151,7 +151,7 @@ public TapLint() { "repetitions of essentially the same error.", "

", } ); - repeatParam_.setDefault( "9" ); + repeatParam_.setIntDefault( 9 ); paramList.add( repeatParam_ ); truncParam_ = new IntegerParameter( "truncate" ); @@ -160,7 +160,7 @@ public TapLint() { "

Limits the line length written to the output.", "

", } ); - truncParam_.setDefault( "640" ); + truncParam_.setIntDefault( 640 ); paramList.add( truncParam_ ); debugParam_ = new BooleanParameter( "debug" ); @@ -170,7 +170,7 @@ public TapLint() { "output along with the normal validation messages.", "

", } ); - debugParam_.setDefault( "false" ); + debugParam_.setBooleanDefault( false ); paramList.add( debugParam_ ); params_ = paramList.toArray( new Parameter[ 0 ] ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/TapMapper.java b/ttools/src/main/uk/ac/starlink/ttools/task/TapMapper.java index 9c2546fc0e..b75daf8f53 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/TapMapper.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/TapMapper.java @@ -79,7 +79,7 @@ public TapMapper() { "to submit the query.", "

", } ); - parseParam_.setDefault( Boolean.FALSE.toString() ); + parseParam_.setBooleanDefault( false ); paramList.add( parseParam_ ); syncParam_ = new BooleanParameter( "sync" ); @@ -102,7 +102,7 @@ public TapMapper() { "In most cases false (the default) is preferred.", "

", } ); - syncParam_.setDefault( Boolean.FALSE.toString() ); + syncParam_.setBooleanDefault( false ); paramList.add( syncParam_ ); maxrecParam_ = new LongParameter( "maxrec" ); @@ -132,7 +132,7 @@ public TapMapper() { "to submit a PQL query.", "

", } ); - langParam_.setDefault( "ADQL" ); + langParam_.setStringDefault( "ADQL" ); paramList.add( langParam_ ); resultReader_ = new TapResultReader(); @@ -263,7 +263,7 @@ private static Parameter createUploadNameParameter( String label ) { "\"TAP_UPLOAD.<label>\".", "

", } ); - upnameParam.setDefault( "up" + label ); + upnameParam.setStringDefault( "up" + label ); return upnameParam; } } diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/TapQuerier.java b/ttools/src/main/uk/ac/starlink/ttools/task/TapQuerier.java index 9b80348d66..b7fa96b702 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/TapQuerier.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/TapQuerier.java @@ -16,6 +16,6 @@ true, new TapMapper(), IntegerParameter countParam = ((VariableTablesInput) getTablesInput()).getCountParam(); countParam.setMinimum( 0 ); - countParam.setDefault( "0" ); + countParam.setIntDefault( 0 ); } } diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/TapResultReader.java b/ttools/src/main/uk/ac/starlink/ttools/task/TapResultReader.java index 581c85d43e..b1909b9ed8 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/TapResultReader.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/TapResultReader.java @@ -31,7 +31,7 @@ public class TapResultReader { private final IntegerParameter pollParam_; private final BooleanParameter progressParam_; - private final ChoiceParameter deleteParam_; + private final ChoiceParameter deleteParam_; private final Parameter[] parameters_; private static final Logger logger_ = Logger.getLogger( "uk.ac.starlink.ttools.task" ); @@ -58,7 +58,7 @@ public TapResultReader() { "

", } ); pollParam_.setMinimum( 50 ); - pollParam_.setDefault( "5000" ); + pollParam_.setIntDefault( 5000 ); paramList.add( pollParam_ ); progressParam_ = new BooleanParameter( "progress" ); @@ -68,10 +68,11 @@ public TapResultReader() { "reported to standard output as it happens.", "

", } ); - progressParam_.setDefault( "true" ); + progressParam_.setBooleanDefault( true ); paramList.add( progressParam_ ); - deleteParam_ = new ChoiceParameter( "delete", DeleteMode.values() ); + deleteParam_ = new ChoiceParameter( "delete", + DeleteMode.values() ); deleteParam_.setPrompt( "Delete job on exit?" ); deleteParam_.setDescription( new String[] { "

Determines under what circumstances the UWS job is to be", @@ -86,7 +87,7 @@ public TapResultReader() { "", "

", } ); - deleteParam_.setDefault( DeleteMode.finished.toString() ); + deleteParam_.setDefaultOption( DeleteMode.finished ); paramList.add( deleteParam_ ); parameters_ = paramList.toArray( new Parameter[ 0 ] ); @@ -122,7 +123,7 @@ public TapResultProducer createResultProducer( Environment env ) final int pollMillis = pollParam_.intValue( env ); final boolean progress = progressParam_.booleanValue( env ); final PrintStream errStream = env.getErrorStream(); - final DeleteMode delete = (DeleteMode) deleteParam_.objectValue( env ); + final DeleteMode delete = deleteParam_.objectValue( env ); final StarTableFactory tfact = LineTableEnvironment.getTableFactory( env ); diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/VotCopy.java b/ttools/src/main/uk/ac/starlink/ttools/task/VotCopy.java index 77f133bb07..2fed467d29 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/VotCopy.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/VotCopy.java @@ -69,7 +69,7 @@ public VotCopy() { inParam_.setPosition( 1 ); inParam_.setPrompt( "Input votable" ); inParam_.setUsage( "" ); - inParam_.setDefault( "-" ); + inParam_.setStringDefault( "-" ); inParam_.setDescription( new String[] { "

Location of the input VOTable.", "May be a URL, filename, or \"-\" to indicate standard input.", @@ -82,7 +82,7 @@ public VotCopy() { outParam_.setPosition( 2 ); outParam_.setPrompt( "Output votable" ); outParam_.setUsage( "" ); - outParam_.setDefault( "-" ); + outParam_.setStringDefault( "-" ); outParam_.setDescription( new String[] { "

Location of the output VOTable.", "May be a filename or \"-\" to indicate standard output.", @@ -97,8 +97,7 @@ public VotCopy() { formatParam_.setPosition( 3 ); formatParam_.setPrompt( "Output votable format" ); formatParam_.setNullPermitted( true ); - formatParam_.setDefault( DataFormat.TABLEDATA.toString() - .toLowerCase() ); + formatParam_.setDefaultOption( DataFormat.TABLEDATA ); formatParam_.setPreferExplicit( true ); formatParam_.setDescription( new String[] { "

Determines the encoding format of the table data in the ", @@ -119,7 +118,7 @@ public VotCopy() { .toArray( new VOTableVersion[ 0 ] ) ); versionParam_.setPrompt( "Output votable version" ); versionParam_.setNullPermitted( true ); - versionParam_.setDefault( null ); + versionParam_.setStringDefault( null ); versionParam_.setDescription( new String[] { "

Determines the version of the VOTable standard to which", "the output will conform.", @@ -173,7 +172,7 @@ public VotCopy() { "" + formatParam_.getName() + "=BINARY/FITS.", "

", } ); - nomagicParam_.setDefault( "true" ); + nomagicParam_.setBooleanDefault( true ); baseParam_ = new StringParameter( "base" ); baseParam_.setUsage( "" ); @@ -238,7 +237,7 @@ public Executable createExecutable( Environment env ) throws TaskException { + forceVersion + " - v1.3+ only" ); } boolean nomagic = nomagicParam_.booleanValue( env ); - cacheParam_.setDefault( format == DataFormat.FITS ); + cacheParam_.setBooleanDefault( format == DataFormat.FITS ); PrintStream pstrm = env.getOutputStream(); boolean inline; if ( format == DataFormat.TABLEDATA || @@ -248,10 +247,10 @@ public Executable createExecutable( Environment env ) throws TaskException { else { if ( format == DataFormat.BINARY || format == DataFormat.BINARY2 ) { - hrefParam_.setDefault( "false" ); + hrefParam_.setBooleanDefault( false ); } else if ( format == DataFormat.FITS ) { - hrefParam_.setDefault( "true" ); + hrefParam_.setBooleanDefault( true ); } else { assert false; @@ -262,8 +261,9 @@ else if ( format == DataFormat.FITS ) { if ( ! inline ) { baseParam_.setNullPermitted( false ); if ( outLoc != null && ! outLoc.equals( "-" ) ) { - baseParam_.setDefault( new File( outLoc ).getName() - .replaceFirst( "\\.[a-zA-Z0-9]*$", "" ) ); + baseParam_ + .setStringDefault( new File( outLoc ).getName() + .replaceFirst( "\\.[a-zA-Z0-9]*$", "" ) ); } base = baseParam_.stringValue( env ); } diff --git a/ttools/src/main/uk/ac/starlink/ttools/task/VotLint.java b/ttools/src/main/uk/ac/starlink/ttools/task/VotLint.java index 2a0c941e28..afcc7db143 100644 --- a/ttools/src/main/uk/ac/starlink/ttools/task/VotLint.java +++ b/ttools/src/main/uk/ac/starlink/ttools/task/VotLint.java @@ -39,7 +39,7 @@ public class VotLint implements Task { public VotLint() { inParam_ = new InputStreamParameter( "votable" ); - inParam_.setDefault( "-" ); + inParam_.setStringDefault( "-" ); inParam_.setPosition( 1 ); inParam_.setPrompt( "VOTable location" ); inParam_.setDescription( new String[] { @@ -52,7 +52,7 @@ public VotLint() { } ); validParam_ = new BooleanParameter( "validate" ); - validParam_.setDefault( true ); + validParam_.setBooleanDefault( true ); validParam_.setPrompt( "Validate against VOTable DTD?" ); validParam_.setDescription( new String[] { "

Whether to validate the input document aganist", @@ -95,7 +95,7 @@ public VotLint() { outParam_ = new OutputStreamParameter( "out" ); outParam_.setPrompt( "File for output messages" ); outParam_.setUsage( "" ); - outParam_.setDefault( "-" ); + outParam_.setStringDefault( "-" ); outParam_.setDescription( new String[] { "

Destination file for output messages.", "May be a filename or \"-\" to indicate standard output.", diff --git a/ttools/src/testcases/uk/ac/starlink/ttools/task/ParameterTest.java b/ttools/src/testcases/uk/ac/starlink/ttools/task/ParameterTest.java index beaa080304..d35b0e19ee 100644 --- a/ttools/src/testcases/uk/ac/starlink/ttools/task/ParameterTest.java +++ b/ttools/src/testcases/uk/ac/starlink/ttools/task/ParameterTest.java @@ -66,7 +66,7 @@ private void checkParams( Parameter[] params ) throws SAXException { private void checkParam( Parameter param ) throws SAXException { assertTrue( param.getName(), - param.getDefault() != null || + param.getStringDefault() != null || param.isNullPermitted() || noDefaults.contains( param.getName() ) ); formatter_.formatXML( param.getDescription(), 0 );