diff options
Diffstat (limited to 'xmlserializer/XmlFileDocSource.cpp')
-rw-r--r-- | xmlserializer/XmlFileDocSource.cpp | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/xmlserializer/XmlFileDocSource.cpp b/xmlserializer/XmlFileDocSource.cpp index c8a0837..f1094f1 100644 --- a/xmlserializer/XmlFileDocSource.cpp +++ b/xmlserializer/XmlFileDocSource.cpp @@ -43,9 +43,7 @@ CXmlFileDocSource::CXmlFileDocSource(const string& strXmlInstanceFile, const str bool CXmlFileDocSource::populate(CXmlSerializingContext& serializingContext) { // Check that the doc has been created - if (!_pDoc) { - - serializingContext.setError("Could not parse file " + _strXmlInstanceFile); + if (!isParsable(serializingContext)) { return false; } @@ -84,6 +82,19 @@ bool CXmlFileDocSource::populate(CXmlSerializingContext& serializingContext) return true; } +bool CXmlFileDocSource::isParsable(CXmlSerializingContext& serializingContext) const +{ + // Check that the doc has been created + if (!_pDoc) { + + serializingContext.setError("Could not parse file " + _strXmlInstanceFile); + + return false; + } + + return true; +} + bool CXmlFileDocSource::isInstanceDocumentValid() { #ifdef LIBXML_SCHEMAS_ENABLED |