001 //
002 // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v1.0.1-05/30/2003 05:06 AM(java_re)-fcs
003 // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
004 // Any modifications to this file will be lost upon recompilation of the source schema.
005 // Generated on: 2004.10.11 at 12:13:34 EDT
006 //
007
008 /*
009 * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
010 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
011 */
012 package astronomy.data.spectra.impl.runtime;
013
014 import javax.xml.bind.ValidationEvent;
015 import javax.xml.bind.helpers.PrintConversionEventImpl;
016 import javax.xml.bind.helpers.ValidationEventLocatorImpl;
017
018 import org.xml.sax.SAXException;
019
020 import com.sun.xml.bind.ProxyGroup;
021
022 /**
023 *
024 * @author
025 * Kohsuke Kawaguchi (kohsuke.kawaguchi@sun.com)
026 */
027 public class Util {
028 /**
029 * Report a print conversion error while marshalling.
030 */
031 public static void handlePrintConversionException(
032 Object caller, Exception e, XMLSerializer serializer ) throws SAXException {
033
034 if( e instanceof SAXException )
035 // assume this exception is not from application.
036 // (e.g., when a marshaller aborts the processing, this exception
037 // will be thrown)
038 throw (SAXException)e;
039
040 ValidationEvent ve = new PrintConversionEventImpl(
041 ValidationEvent.ERROR, e.getMessage(),
042 new ValidationEventLocatorImpl(caller) );
043 serializer.reportError(ve);
044 }
045
046
047 private static final Class[] xmlSerializableSatellite = new Class[] {
048 XMLSerializable.class,
049 XMLSerializer.class,
050 NamespaceContext2.class
051 };
052
053 public static XMLSerializable toXMLSerializable(Object o) {
054 return (XMLSerializable)ProxyGroup.blindWrap( o, XMLSerializable.class, xmlSerializableSatellite );
055 }
056
057
058 private static final Class[] validatableSatellite = new Class[] {
059 XMLSerializable.class,
060 XMLSerializer.class,
061 ValidatableObject.class,
062 NamespaceContext2.class
063 };
064
065 public static ValidatableObject toValidatableObject(Object o) {
066 return (ValidatableObject)ProxyGroup.blindWrap( o, ValidatableObject.class, validatableSatellite );
067 }
068 }