Definition at line 180 of file Collection.h. References Impala::atol(), Impala::FileNamePath(), Impala::Persistency::XmlFileReader::FindElementsByName(), Impala::Util::Database::GetIOBuffer(), Impala::Persistency::FileLocator::GetName(), Impala::Persistency::File::GetReadBuffer(), ILOG_DEBUG, mDb, mFileName, mId, mSource, mSrcDir, mUse, Impala::Persistency::XmlFileReader::Read(), and Impala::Util::XmlDoc::XMLCh2String(). Referenced by Collection(). 00181 { 00182 mDb = db; 00183 mSrcDir = FileNamePath(fileName); 00184 Util::IOBuffer* ioBuf = db->GetIOBuffer(fileName, true, true, ""); 00185 Persistency::XmlFileReader reader; 00186 DOMDocument* doc = reader.Read(fileName, ioBuf); 00187 #else // REPOSITORY_USED 00188 ReadData(const Persistency::FileLocator& loc) 00189 { 00190 mSrcDir = FileNamePath(loc.GetName()); 00191 typedef Persistency::RepositoryInFileSystem FS; 00192 Persistency::File file = FS::GetInstance().GetFile(loc, false, false); 00193 Util::IOBuffer* ioBuf = file.GetReadBuffer(true, ""); 00194 Persistency::XmlFileReader reader; 00195 DOMDocument* doc = reader.Read(loc.GetName(), ioBuf); 00196 #endif // REPOSITORY_USED 00197 delete ioBuf; 00198 DOMNodeList* vList = reader.FindElementsByName(doc, "VideoFile"); 00199 for (XMLSize_t i=0 ; i<vList->getLength() ; i++) 00200 { 00201 DOMNode* video = vList->item(i); 00202 DOMNodeList* children = video->getChildNodes(); 00203 for (XMLSize_t j=0 ; j<children->getLength() ; j++) 00204 { 00205 DOMNode* child = children->item(j); 00206 DOMNode* grandChild = child->getFirstChild(); 00207 if (!grandChild) 00208 continue; 00209 String name = XMLCh2String(child->getNodeName()); 00210 String val = XMLCh2String(grandChild->getNodeValue()); 00211 ILOG_DEBUG("read " << name << " = " << val); 00212 if (name == "id") 00213 mId.push_back(atol(val)); 00214 else if (name == "filename") 00215 mFileName.push_back(val); 00216 else if (name == "use") 00217 mUse.push_back(val); 00218 else if (name == "source") 00219 mSource.push_back(val); 00220 } 00221 } 00222 }
Here is the call graph for this function:
|