package com.c2kernel.persistency.outcome; import java.io.IOException; import java.io.StringReader; import org.exolab.castor.xml.schema.reader.SchemaReader; import org.xml.sax.InputSource; /************************************************************************** * * $Revision: 1.2 $ * $Date: 2005/04/26 06:48:13 $ * * Copyright (C) 2003 CERN - European Organization for Nuclear Research * All rights reserved. **************************************************************************/ public class SchemaValidator extends OutcomeValidator { org.exolab.castor.xml.schema.Schema castorSchema; /** * */ public SchemaValidator() { } public org.exolab.castor.xml.schema.Schema getSOM() { return castorSchema; } /** * */ @Override public synchronized String validate(String outcome) { errors = new StringBuffer(); try { InputSource schemaSource = new InputSource(new StringReader(outcome)); SchemaReader mySchemaReader = new SchemaReader(schemaSource); mySchemaReader.setErrorHandler(this); mySchemaReader.setValidation(true); castorSchema = mySchemaReader.read(); } catch (IOException e) { errors.append(e.getMessage()); } return errors.toString(); } }