validation des test et nettoyage
authorBenoît Pin <benoit.pin@gmail.com>
Tue, 27 Apr 2010 19:52:04 +0000 (21:52 +0200)
committerBenoît Pin <benoit.pin@gmail.com>
Tue, 27 Apr 2010 19:52:04 +0000 (21:52 +0200)
Les tests fonctionnels passent pour la génération des tuiles, nettoyages.

ImageManipulationTool.py
Portfolio.py
__init__.py
container.py
event_handlers.py
interfaces.py
lightbox.py
manipulation.py
photo.py
utils.py

index 9c34580..4ec31f7 100755 (executable)
@@ -9,8 +9,6 @@
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ Image manipulation tool
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ Image manipulation tool
-$Id: ImageManipulationTool.py 1391 2009-09-16 23:36:05Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/ImageManipulationTool.py $
 """
 
 from AccessControl import ClassSecurityInfo
 """
 
 from AccessControl import ClassSecurityInfo
@@ -102,8 +100,13 @@ class ImageManipulationTool( UniqueObject, OrderedFolder) :
                
                if not self.isRunning() :
                        utool = getToolByName(self, 'portal_url')
                
                if not self.isRunning() :
                        utool = getToolByName(self, 'portal_url')
+                       ctool = getToolByName(self, 'portal_catalog')
                        portal = utool.getPortalObject()
                        portal = utool.getPortalObject()
-                       thread = ImageQueueProcessorThread(portal.getPhysicalPath(), itemPath)
+                       brains = ctool.unrestrictedSearchResults(portal_type='Photo', tiles_available=0)
+                       paths = [b.getPath() for b in brains]
+                       if itemPath is not None :
+                               paths.insert(0, itemPath)
+                       thread = ImageQueueProcessorThread(portal.getPhysicalPath(), paths)
                        thread.start()
                        path = self.absolute_url(1)
                        queue_threads[path] = thread
                        thread.start()
                        path = self.absolute_url(1)
                        queue_threads[path] = thread
index bee4b4d..3012469 100755 (executable)
@@ -9,8 +9,6 @@
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ Deprecated Image and Portfolio classes
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ Deprecated Image and Portfolio classes
-$Id: Portfolio.py 622 2008-11-16 23:38:18Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/Portfolio.py $
 """
 
 from deprecated.Portfolio import Portfolio, Photo
 """
 
 from deprecated.Portfolio import Portfolio, Photo
index f179dde..9b59eaa 100644 (file)
@@ -9,8 +9,6 @@
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ Image manipulation and presentation for CMF
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ Image manipulation and presentation for CMF
-$Id: __init__.py 626 2008-11-22 09:11:58Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/__init__.py $
 """
 
 from Products.CMFCore import utils as cmfutils
 """
 
 from Products.CMFCore import utils as cmfutils
index 1501cb5..11391aa 100755 (executable)
@@ -9,8 +9,6 @@
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ container classes for photo storage.
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ container classes for photo storage.
-$Id: container.py 622 2008-11-16 23:38:18Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/container.py $
 """
 
 from AccessControl import ClassSecurityInfo, Unauthorized
 """
 
 from AccessControl import ClassSecurityInfo, Unauthorized
index dec74bc..7e75286 100755 (executable)
@@ -1,14 +1,14 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-####################################################
-# Copyright © 2009 Luxia SAS. All rights reserved. #
-#                                                  #
-# Contributors:                                    #
-#  - Benoît Pin <pinbe@luxia.fr>                   #
-####################################################
+############################################################
+# Copyright © 2005-2010  Benoît PIN <benoit.pin@ensmp.fr>  #
+# Plinn - http://plinn.org                                 #
+#                                                          #
+# This program is free software; you can redistribute it   #
+# and/or modify it under the terms of the Creative Commons #
+# "Attribution-Noncommercial 2.0 Generic"                  #
+# http://creativecommons.org/licenses/by-nc/2.0/           #
+############################################################
 """ Event handlers module
 """ Event handlers module
-
-$Id: event_handlers.py 1391 2009-09-16 23:36:05Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/event_handlers.py $
 """
 
 import transaction
 """
 
 import transaction
index 060540d..04f4281 100755 (executable)
@@ -1,14 +1,14 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-####################################################
-# Copyright © 2009 Luxia SAS. All rights reserved. #
-#                                                  #
-# Contributors:                                    #
-#  - Benoît Pin <pinbe@luxia.fr>                   #
-####################################################
+############################################################
+# Copyright © 2005-2008  Benoît PIN <benoit.pin@ensmp.fr>  #
+# Plinn - http://plinn.org                                 #
+#                                                          #
+# This program is free software; you can redistribute it   #
+# and/or modify it under the terms of the Creative Commons #
+# "Attribution-Noncommercial 2.0 Generic"                  #
+# http://creativecommons.org/licenses/by-nc/2.0/           #
+############################################################
 """ Interfaces for Portfolio classes
 """ Interfaces for Portfolio classes
-
-$Id: interfaces.py 1202 2009-07-15 08:48:42Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/interfaces.py $
 """
 
 from zope.interface import Interface
 """
 
 from zope.interface import Interface
index 962d913..98adde2 100755 (executable)
@@ -10,8 +10,6 @@
 ############################################################
 """ Lightboxes contains references to images.
     References are made with CMFUid stuff.
 ############################################################
 """ Lightboxes contains references to images.
     References are made with CMFUid stuff.
-$Id: lightbox.py 622 2008-11-16 23:38:18Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/lightbox.py $
 """
 
 from Globals import InitializeClass
 """
 
 from Globals import InitializeClass
index 8c057d6..a4623ba 100755 (executable)
@@ -1,21 +1,20 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-####################################################
-# Copyright © 2009 Luxia SAS. All rights reserved. #
-#                                                  #
-# Contributors:                                    #
-#  - Benoît Pin <pinbe@luxia.fr>                   #
-####################################################
+############################################################
+# Copyright © 2005-2010  Benoît PIN <benoit.pin@ensmp.fr>  #
+# Plinn - http://plinn.org                                 #
+#                                                          #
+# This program is free software; you can redistribute it   #
+# and/or modify it under the terms of the Creative Commons #
+# "Attribution-Noncommercial 2.0 Generic"                  #
+# http://creativecommons.org/licenses/by-nc/2.0/           #
+############################################################
 """ Image threaded batch computation module
 """ Image threaded batch computation module
-
-$Id: manipulation.py 1391 2009-09-16 23:36:05Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/manipulation.py $
 """
 
 import threading
 import logging
 import atexit
 from types import StringTypes
 """
 
 import threading
 import logging
 import atexit
 from types import StringTypes
-#import Zope2
 from math import ceil
 import transaction
 from ZODB.POSException import ConflictError
 from math import ceil
 import transaction
 from ZODB.POSException import ConflictError
@@ -38,23 +37,6 @@ class ImageQueueProcessorThread(threading.Thread) :
                        itemsPath = [itemsPath]
                for i in itemsPath :
                        self.queueAdd(i)
                        itemsPath = [itemsPath]
                for i in itemsPath :
                        self.queueAdd(i)
-
-#      def __init__(self, portal_path, itemPath):
-#              threading.Thread.__init__(self)
-#              self.app = app = Zope2.app()
-#              self.portal = portal = app.unrestrictedTraverse(portal_path)
-#              self.imgTool = portal.portal_image_manipulation
-#              self.queue = []
-#              if itemPath :
-#                      self.queueAdd(itemPath)
-#              else :
-#                      ctool = portal.portal_catalog
-#                      brains = ctool.unrestrictedSearchResults(portal_type='Photo', tiles_available=0)
-#                      for b in brains :
-#                              self.queueAdd(b.getPath())
-       
-       def __del__(self) :
-               print "ayé, c'est la fin !"
        
        @property
        def queueSize(self) :
        
        @property
        def queueSize(self) :
@@ -84,12 +66,7 @@ class ImageQueueProcessorThread(threading.Thread) :
                self.__stopped = True
        
        def _process(self, app) :
                self.__stopped = True
        
        def _process(self, app) :
-               
                path = self.queue.pop(0)
                path = self.queue.pop(0)
-               
-               #import Zope2
-               #app = Zope2.app()
-               
                try :
                        p = app.unrestrictedTraverse(path)
                except KeyError :
                try :
                        p = app.unrestrictedTraverse(path)
                except KeyError :
index 2508ebc..e7a10a1 100755 (executable)
--- a/photo.py
+++ b/photo.py
@@ -9,8 +9,6 @@
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ CMFAware Image
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ CMFAware Image
-$Id: photo.py 1202 2009-07-15 08:48:42Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/photo.py $
 """
 
 from Globals import InitializeClass
 """
 
 from Globals import InitializeClass
index 1fee07f..4ee5520 100755 (executable)
--- a/utils.py
+++ b/utils.py
@@ -9,8 +9,6 @@
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ Global utilities for portfolio / photo objects.
 # http://creativecommons.org/licenses/by-nc/2.0/           #
 ############################################################
 """ Global utilities for portfolio / photo objects.
-$Id: utils.py 1200 2009-07-08 15:50:15Z pin $
-$URL: http://svn.luxia.fr/svn/labo/projects/zope/Portfolio/trunk/utils.py $
 """
 
 from AccessControl import ModuleSecurityInfo
 """
 
 from AccessControl import ModuleSecurityInfo