summaryrefslogtreecommitdiffstats
path: root/xmlserializer/XmlFileDocSource.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'xmlserializer/XmlFileDocSource.cpp')
-rw-r--r--xmlserializer/XmlFileDocSource.cpp17
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