View Javadoc
1 /* 2 * Copyright (C) The Spice Group. All rights reserved. 3 * 4 * This software is published under the terms of the Spice 5 * Software License version 1.1, a copy of which has been included 6 * with this distribution in the LICENSE.txt file. 7 */ 8 package org.realityforge.converter.lib; 9 10 import org.realityforge.converter.AbstractConverter; 11 import org.realityforge.converter.ConverterException; 12 13 /*** 14 * String to class converter 15 * 16 * @author <a href="mailto:peter at realityforge.org">Peter Donald</a> 17 * @version $Revision: 1.4 $ $Date: 2003/03/25 02:51:26 $ 18 */ 19 public class StringToClassConverter 20 extends AbstractConverter 21 { 22 /*** 23 * Construct the converter. 24 */ 25 public StringToClassConverter() 26 { 27 this( null ); 28 } 29 30 /*** 31 * Construct the converter with a default value. 32 * If the default value is non-null, it will be returned if unable 33 * to convert object to correct type. 34 * 35 * @param defaultValue the default value 36 */ 37 public StringToClassConverter( final Class defaultValue ) 38 { 39 super( String.class, Class.class, defaultValue ); 40 } 41 42 /*** 43 * Converts a String to a Class. 44 * 45 * @param object the original object to convert 46 * @param context the context in which to convert object (unused) 47 * @return the converted object 48 * @throws ConverterException if error converting object 49 */ 50 public Object convert( final Object object, final Object context ) 51 throws ConverterException 52 { 53 //TODO: Should we use ContextClassLoader here??? 54 try 55 { 56 return Class.forName( (String)object ); 57 } 58 catch( final Exception e ) 59 { 60 return noConvert( object, e ); 61 } 62 } 63 } 64

This page was automatically generated by Maven