Class ForNameStringParser

  extended bycom.martiansoftware.jsap.StringParser
      extended bycom.martiansoftware.jsap.stringparsers.ForNameStringParser

public class ForNameStringParser
extends StringParser

A StringParser that passes the argument to a static method of signature forName(String) of a specified class.

Note that, for instance, this parser can be used with Class (resulting in a string parser identical to ClassStringParser), but also Charset, and more generally, any class using the forName(String) convention.

Sebastiano Vigna

Method Summary
static ForNameStringParser getParser(Class klass)
          Returns a class forName() string parser.
 Object parse(String arg)
          Parses the specified argument into an Object of the appropriate type.
Methods inherited from class com.martiansoftware.jsap.StringParser
setUp, tearDown
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Method Detail


public static ForNameStringParser getParser(Class klass)
                                     throws SecurityException,
Returns a class forName() string parser.

When required to parse an argument, the returned string parser will return the object obtain by means of a call to a static method of klass of signature forName(String).

klass - a class with a static method of signature forName(String).


public Object parse(String arg)
             throws ParseException
Description copied from class: StringParser
Parses the specified argument into an Object of the appropriate type. If the specified argument cannot be converted into the desired Object, a ParseException should be thrown.

Note: this method MAY BE CALLED with a null argument. Take this into consideration when subclassing!

Specified by:
parse in class StringParser
arg - the argument to convert to an Object of class appropriate to the StringParser subclass.
the Object resulting from the parsed argument.
ParseException - if the specified argument cannot be parsed.

Copyright © 2002-2006, Martian Software, Inc.. All Rights Reserved.
For the latest version and documentation, please visit