Now writes entities to file instead of stdout...
This commit is contained in:
@@ -5,7 +5,7 @@
|
|||||||
#include <xercesc/dom/DOM.hpp>
|
#include <xercesc/dom/DOM.hpp>
|
||||||
#include <xercesc/util/XMLString.hpp>
|
#include <xercesc/util/XMLString.hpp>
|
||||||
#include <xercesc/util/PlatformUtils.hpp>
|
#include <xercesc/util/PlatformUtils.hpp>
|
||||||
#include <xercesc/framework/StdOutFormatTarget.hpp>
|
#include <xercesc/framework/LocalFileFormatTarget.hpp>
|
||||||
|
|
||||||
#include "Util/XercesString.h"
|
#include "Util/XercesString.h"
|
||||||
#include "EntityFile.h"
|
#include "EntityFile.h"
|
||||||
|
|||||||
@@ -24,10 +24,15 @@ void EntityFileWriter::WriteEntity(World* world, EntityID entity)
|
|||||||
root->appendChild(childrenElement);
|
root->appendChild(childrenElement);
|
||||||
appendEntityChildren(childrenElement, world, entity);
|
appendEntityChildren(childrenElement, world, entity);
|
||||||
|
|
||||||
XMLFormatTarget* target = new StdOutFormatTarget();
|
try {
|
||||||
DOMLSOutput* output = static_cast<DOMImplementationLS*>(m_DOMImplementation)->createLSOutput();
|
LocalFileFormatTarget* target = new LocalFileFormatTarget(X(m_FilePath.string()));
|
||||||
output->setByteStream(target);
|
DOMLSOutput* output = static_cast<DOMImplementationLS*>(m_DOMImplementation)->createLSOutput();
|
||||||
m_DOMLSSerializer->write(doc, output);
|
output->setByteStream(target);
|
||||||
|
m_DOMLSSerializer->write(doc, output);
|
||||||
|
delete target;
|
||||||
|
} catch (const std::runtime_error& e) {
|
||||||
|
LOG_ERROR("Failed to save \"%s\": %s", m_FilePath.c_str(), e.what());
|
||||||
|
}
|
||||||
|
|
||||||
doc->release();
|
doc->release();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user