| 51 | } |
| 52 | |
| 53 | std::pair<us::ServiceRegistration<IFileReader>, us::ServiceRegistration<IFileWriter>> AbstractFileIO::RegisterService( |
| 54 | us::ModuleContext *context) |
| 55 | { |
| 56 | std::pair<us::ServiceRegistration<IFileReader>, us::ServiceRegistration<IFileWriter>> result; |
| 57 | result.first = this->AbstractFileReader::RegisterService(context); |
| 58 | const CustomMimeType *writerMimeType = this->AbstractFileWriter::GetMimeType(); |
| 59 | if (writerMimeType == nullptr || (writerMimeType->GetName().empty() && writerMimeType->GetExtensions().empty())) |
| 60 | { |
| 61 | this->AbstractFileWriter::SetMimeType( |
| 62 | CustomMimeType(this->AbstractFileReader::GetRegisteredMimeType().GetName())); |
| 63 | } |
| 64 | result.second = this->AbstractFileWriter::RegisterService(context); |
| 65 | return result; |
| 66 | } |
| 67 | |
| 68 | AbstractFileIO::AbstractFileIO(const AbstractFileIO &other) : AbstractFileIOReader(other), AbstractFileIOWriter(other) |
| 69 | { |