//--------------------------------------------------------------- // CNativeMmsUtility::getBodyTextFromAttManL // @see header //--------------------------------------------------------------- void CNativeMmsUtility::getBodyTextFromAttManL(QString& returnbuf) { #ifdef _DEBUG_TRACES_ qDebug() << " Enter CNativeMmsUtility::getBodyTextFromAttManL"; #endif TUint count = iattachmanager->AttachmentCount(); for (int i = 0; i < count; i++) { CMsvAttachment *attachment = iattachmanager->GetAttachmentInfoL(i); TPtrC8 mimetype = attachment->MimeType(); if (!isAttachment(attachment) && mimetype.CompareF(KMsgMimeTextPlain) == 0) { QString filepath = XQConversions::s60DescToQString(attachment->FilePath()); readFileIntoBuffer(filepath, returnbuf); break; } } #ifdef _DEBUG_TRACES_ qDebug() << " Exit CNativeMmsUtility::getBodyTextFromAttManL"; #endif return; }
//--------------------------------------------------------------- // CNativeMmsUtility::getBodyTextFromSmilL // @see header //--------------------------------------------------------------- void CNativeMmsUtility::getBodyTextFromSmilL(QString& returnbuf) { #ifdef _DEBUG_TRACES_ qDebug() << " Enter CNativeMmsUtility::getBodyTextFromSmilL"; #endif TPtrC attrvalptr; //reset the reader to the root of the DOM tree ireader->reset(); //begin traversal while (!ireader->atEndL()) { CMDXMLNode* node = ireader->nextNodeL(); if (node->NodeType() == CMDXMLNode::EElementNode && node->NodeName().CompareF(KTextTag) == 0) { CMDXMLElement* el = static_cast<CMDXMLElement*> (node); if (KErrNone == el->GetAttribute(KSrcAttr, attrvalptr)) { QString filepath = getByUrlL(attrvalptr); if (filepath.isEmpty()) { //get smil's containing dir //because media source is relative to it. QString smildirpath = fileDir(ismilfilepath); QString mfilename = XQConversions::s60DescToQString(attrvalptr); filepath = smildirpath.append(mfilename); } readFileIntoBuffer(filepath, returnbuf); break; } } } #ifdef _DEBUG_TRACES_ qDebug() << " Exit CNativeMmsUtility::getBodyTextFromSmilL"; #endif return; }
DirectoryEntryContent* DirectoryListingService::get(DirectoryEntry* req) { DirectoryEntryContent* rep = new DirectoryEntryContent(); if (_knownEntries.find(req->name()) == _knownEntries.end()) { UM_LOG_ERR("Request for unkown file '%s'", req->name().c_str()); return rep; } struct stat fileStat; if (stat((_dir + '/' + req->name()).c_str(), &fileStat) != 0) { UM_LOG_ERR("Error with stat on '%s': %s", req->name().c_str(), strerror(errno)); return rep; } char* buffer = readFileIntoBuffer(req->name().c_str(), fileStat.st_size); rep->set_content(buffer, fileStat.st_size); rep->set_md5(md5(buffer, fileStat.st_size)); free(buffer); return rep; }