pimpl<PortalsImporterJob>::pimpl(shared_ptr<Portal> portal, shared_ptr<IStream> stream) : m_portal(portal), m_stream(stream), m_serializer(OS_NEW PortalsSerializer()) { OS_ASSERT(portal != nullptr); OS_ASSERT(stream != nullptr); }
pimpl<PortalsImporterJob>::pimpl(shared_ptr<Portal> portal, const String &url) : m_portal(portal), m_stream(nullptr), m_url(url), m_serializer(OS_NEW PortalsSerializer()) { OS_ASSERT(portal != nullptr); }
PortalsExporterJob::PortalsExporterJob(uint32 id, shared_ptr<Portal> portal, const String &format) : JobBase(true, id, portal), m_format(format), m_serializer(OS_NEW PortalsSerializer()) { OS_ASSERT(portal != nullptr); m_filename = FileSystem::instance()->createValidFilename(portal->getName()); if(m_filename.empty()) m_filename = OS_PORTALFILE_DEFAULT_NAME; else m_filename = FileSystem::instance()->makeFilename(m_filename, getExtension()); m_downloadDirectory = PortalsSystem::instance()->getTempDirectory()->addDirectoryCallback(boost::bind(&PortalsExporterJob::handleDownloadRequest, this, _1, _2)); OS_ASSERT(m_downloadDirectory != nullptr); m_serializer->getProgressEvent()->connect(boost::bind(&PortalsExporterJob::onProgress, this)); }