Print this page
3166 feed generation needs performance improvement
3306 feed returns invalid last-modified header
*** 28,37 ****
--- 28,38 ----
import os
import sys
import cherrypy
import pkg.catalog as catalog
+ import pkg.fmri as fmri
import pkg.indexer as indexer
import pkg.server.query_engine as query_e
from pkg.misc import SERVER_DEFAULT_MEM_USE_KB
from pkg.misc import emsg
*** 258,262 ****
--- 259,280 ----
if not self.query_engine:
self.query_engine = \
query_e.ServerQueryEngine(self.index_root)
query = query_e.Query(token, case_sensitive=False)
return self.query_engine.search(query)
+
+ @staticmethod
+ def read_catalog(catalog, dir, auth=None):
+ """Read the catalog file in "dir" and combine it with the
+ existing data in "catalog"."""
+
+ catf = file(os.path.join(dir, "catalog"))
+ for line in catf:
+ if not line.startswith("V pkg") and \
+ not line.startswith("C pkg"):
+ continue
+
+ f = fmri.PkgFmri(line[7:])
+ ServerCatalog.cache_fmri(catalog, f, auth)
+
+ catf.close()
+