Mercurial > hg > svcore
diff rdf/RDFTransformFactory.cpp @ 1163:d094598f84bd
Better error reporting for transform load (from RDF and XML)
author | Chris Cannam |
---|---|
date | Thu, 25 Feb 2016 10:53:10 +0000 |
parents | 7d003fe48225 |
children |
line wrap: on
line diff
--- a/rdf/RDFTransformFactory.cpp Wed Feb 24 11:35:51 2016 +0000 +++ b/rdf/RDFTransformFactory.cpp Thu Feb 25 10:53:10 2016 +0000 @@ -129,7 +129,12 @@ } m_store->import(qurl, BasicStore::ImportIgnoreDuplicates); m_isRDF = true; - } catch (...) { } + } catch (const std::exception &e) { + // The file is not RDF -- we report this by returning false + // from isRDF (because we have not reached the m_isRDF = true + // line above), but we also set the error string + m_errorString = e.what(); + } } RDFTransformFactoryImpl::~RDFTransformFactoryImpl() @@ -146,7 +151,7 @@ bool RDFTransformFactoryImpl::isOK() { - return (m_errorString == ""); + return m_isRDF && (m_errorString == ""); } QString @@ -160,6 +165,8 @@ { std::vector<Transform> transforms; + if (!m_isRDF) return transforms; + std::map<QString, Transform> uriTransformMap; Nodes tnodes = m_store->match