00001 #include <iostream> 00002 00003 #include "SDXResourceReader.h" 00004 #include "SDXContentHandler.h" 00005 #include "SDXException.h" 00006 00007 using namespace SDX; 00008 00009 ResourceReader::ResourceReader(ContentHandler* contentHandler) : 00010 m_contentHandler(contentHandler) 00011 { 00012 00013 } 00014 00015 void ResourceReader::setContentHandler(ContentHandler* contentHandler){ 00016 m_contentHandler = contentHandler; 00017 } 00018 00019 std::string ResourceReader::getError(){ 00020 return m_error; 00021 } 00022 00023 bool ResourceReader::read(){ 00024 if(m_contentHandler){ 00025 m_error.clear(); 00026 00027 m_contentHandler->startDocument(); 00028 try { 00029 process(); 00030 } catch(Exception e) { 00031 m_error = e.what(); 00032 } 00033 m_contentHandler->endDocument(); 00034 } else 00035 m_error = "No parser set"; 00036 00037 return m_error.empty(); 00038 }
1.5.8