- idxs = [i for i in idxs if i in valid_indexes and i in self.delegatedIndexes]
- else :
- idxs = self.delegatedIndexes
+ idxs_ = [i for i in idxs if i in valid_indexes]
+
+ super(CatalogTool, self).catalog_object(w, uid, idxs_, update_metadata, pghandler)
+ self.solrAdd(w, uid, idxs)
+
+ security.declarePrivate('reindexObject')
+ def reindexObject(self, object, idxs=[], update_metadata=1, uid=None):
+ """Update catalog after object data has changed.
+
+ The optional idxs argument is a list of specific indexes
+ to update (all of them by default).
+
+ The update_metadata flag controls whether the object's
+ metadata record is updated as well.
+
+ If a non-None uid is passed, it will be used as the catalog uid
+ for the object instead of its physical path.
+ """
+ if uid is None:
+ uid = self.__url(object)