[Checkins] SVN: Sandbox/luciano/kirbi/ added ObjectModified event to index books updated via XML-RPC

Luciano Ramalho luciano at ramalho.org
Sat Aug 11 15:17:43 EDT 2007


Log message for revision 78749:
  added ObjectModified event to index books updated via XML-RPC
  

Changed:
  _U  Sandbox/luciano/kirbi/
  U   Sandbox/luciano/kirbi/src/kirbi/demo/collection.py
  U   Sandbox/luciano/kirbi/src/kirbi/pac.py

-=-

Property changes on: Sandbox/luciano/kirbi
___________________________________________________________________
Name: svn:ignore
   - develop-eggs
eggs
bin
parts
.installed.cfg



   + *.kpf
develop-eggs
eggs
bin
parts
.installed.cfg




Modified: Sandbox/luciano/kirbi/src/kirbi/demo/collection.py
===================================================================
--- Sandbox/luciano/kirbi/src/kirbi/demo/collection.py	2007-08-11 17:45:17 UTC (rev 78748)
+++ Sandbox/luciano/kirbi/src/kirbi/demo/collection.py	2007-08-11 19:17:42 UTC (rev 78749)
@@ -1,3 +1,4 @@
+#!/usr/bin/env python
 # -*- coding: utf-8 -*-
 
 collection = [
@@ -1736,3 +1737,20 @@
      'publisher': u'Addison-Wesley Professional',
      'title': u'UML Distilled: A Brief Guide to the Standard Object Modeling Language, Third Edition'}
 ]
+
+if __name__=='__main__':
+    
+    from sys import argv
+    if len(argv) == 1:
+        print 'usage:'
+        print '    %s <field1> [<field2> [<field3>...]]' % argv[0]
+        print
+        print '  where <fieldN> is one of:'
+        print '    ' + ' '.join(sorted(collection[0].keys()))
+    else:
+        if len(argv) > 2: # if more than 1 field, print field names
+            print '#',
+            print '\t'.join([field for field in argv[1:]])
+        for book in collection:
+            fields = []
+            print '\t'.join([book[field] for field in argv[1:]])

Modified: Sandbox/luciano/kirbi/src/kirbi/pac.py
===================================================================
--- Sandbox/luciano/kirbi/src/kirbi/pac.py	2007-08-11 17:45:17 UTC (rev 78748)
+++ Sandbox/luciano/kirbi/src/kirbi/pac.py	2007-08-11 19:17:42 UTC (rev 78749)
@@ -1,8 +1,9 @@
 import grok
-from book import Book
+from book import Book, IBook
 from zope.app.container.contained import NameChooser as BaseNameChooser
 from zope.app.container.interfaces import INameChooser
 from zope.interface import implements
+from zope import event, lifecycleevent
 from zope import schema
 from operator import attrgetter
 from isbn import isValidISBN, isValidISBN10, convertISBN10toISBN13, filterDigits
@@ -70,6 +71,7 @@
                 book = self[isbn13]
                 book.update(**book_dict)
                 del self.pending_isbns[isbn13]
+                event.notify(lifecycleevent.ObjectModifiedEvent(book, IBook))
                 updated += 1
         return updated
             



More information about the Checkins mailing list