1 17 package org.apache.ws.jaxme.generator.types; 18 19 import org.apache.ws.jaxme.generator.sg.SGFactory; 20 import org.apache.ws.jaxme.generator.sg.SchemaSG; 21 import org.apache.ws.jaxme.generator.sg.SimpleTypeSG; 22 import org.apache.ws.jaxme.impl.DatatypeConverterImpl; 23 import org.apache.ws.jaxme.js.JavaQName; 24 import org.apache.ws.jaxme.js.JavaQNameImpl; 25 import org.apache.ws.jaxme.js.TypedValue; 26 import org.apache.ws.jaxme.js.impl.TypedValueImpl; 27 import org.apache.ws.jaxme.xs.XSType; 28 import org.apache.ws.jaxme.xs.parser.impl.LocSAXException; 29 import org.xml.sax.SAXException ; 30 31 34 public class BooleanSG extends PrimitiveTypeSG { 35 37 public static final JavaQName BOOLEAN_TYPE = JavaQNameImpl.getInstance(boolean.class); 38 40 public static final JavaQName BOOLEAN_OBJECT_TYPE = JavaQNameImpl.getInstance(Boolean .class); 41 42 44 public BooleanSG(SGFactory pFactory, SchemaSG pSchema, XSType pType) throws SAXException { 45 super(pFactory, pSchema, pType); 46 } 47 48 protected String getDatatypeName() { return "Boolean"; } 49 protected JavaQName getDatatypeType() { return BOOLEAN_TYPE; } 50 public JavaQName getPrimitiveRuntimeType(SimpleTypeSG pController) { return BOOLEAN_TYPE; } 51 protected JavaQName getObjectRuntimeType(SimpleTypeSG pController) { return BOOLEAN_OBJECT_TYPE; } 52 53 public TypedValue getCastFromString(SimpleTypeSG pController, String pValue) throws SAXException { 54 try { 55 return new TypedValueImpl(new DatatypeConverterImpl().parseBoolean(pValue) ? Boolean.TRUE : Boolean.FALSE, 56 BOOLEAN_OBJECT_TYPE); 57 } catch (RuntimeException e) { 58 try { 59 throw new LocSAXException("Failed to convert string value to " 60 + getDatatypeName() + " instance: " + pValue, getLocator()); 61 } catch (Exception e1) { 62 throw new SAXException("Failed to convert string value to " 63 + getDatatypeName() + " instance: " + pValue); 64 } 65 } 66 } 67 68 public boolean isCausingParseConversionEvent(SimpleTypeSG pController) { 69 return false; 70 } 71 } 72 | Popular Tags |