Some critical fixes for cases where argument values directly abut argument names

and for arguments with missing short names.


git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@610 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
hanna 2009-05-06 21:47:34 +00:00
parent 0aba688e6f
commit 1fe8155111
3 changed files with 2 additions and 5 deletions

View File

@ -50,7 +50,7 @@ class ArgumentDefinitions implements Iterable<ArgumentDefinition> {
throw new IllegalArgumentException( "Argument cannot have 0-length fullname." );
if( hasArgumentDefinition( definition.fullName, FullNameDefinitionMatcher ) )
throw new StingException("Duplicate definition of argument with full name: " + definition.fullName);
if( hasArgumentDefinition( definition.shortName, ShortNameDefinitionMatcher ) )
if( definition.shortName != null && hasArgumentDefinition( definition.shortName, ShortNameDefinitionMatcher ) )
throw new StingException("Duplicate definition of argument with short name: " + definition.shortName);
argumentDefinitions.add( definition );

View File

@ -3,15 +3,12 @@ package org.broadinstitute.sting.utils.cmdLine;
import org.broadinstitute.sting.utils.StingException;
import java.util.Formatter;
import java.util.Locale;
import java.util.Formattable;
import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Map;
import java.util.HashMap;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
import java.util.SortedSet;
import java.util.Collection;

View File

@ -60,7 +60,7 @@ public class ParsingEngine {
public ParsingEngine() {
parsingMethods.add( new ParsingMethod(Pattern.compile("\\s*--([\\w\\.]+)\\s*"), ArgumentDefinitions.FullNameDefinitionMatcher) );
parsingMethods.add( new ParsingMethod(Pattern.compile("\\s*-([\\w\\.])([\\w\\.]*)\\s*"),
parsingMethods.add( new ParsingMethod(Pattern.compile("\\s*-([\\w\\.])([\\w\\.\\/:\\-]*)\\s*"),
ArgumentDefinitions.ShortNameDefinitionMatcher,
ArgumentDefinitions.ShortNameAliasProvider) );
}