• Nicolas Dumazet's avatar
    Portal type classes. · a94f18cd
    Nicolas Dumazet authored
    - All ERP5 objects now become instances of erp5.portal_type.**
      Being an instance of a portal type does no longer only mean
      "having a portal_type attribute", it now also means deriving from
      a specific, ad-hoc Python class for this portal type.
    
    - erp5.portal_type module is built dynamically and its objects
      are classes subclassing the physical Document classes on disk.
    
    - ERP5Type.Document fate:
      + classes previously stored here are gone
      + newTempXXX methods stay, and will work correctly. But a call
        to such a method will require an BaseType object in
        portal_types module.
      + other stuff is gone
    
    - Temporary documents will be instances of erp5.temp_portal_type.*
      All classes in this submodule subclass the respective
      erp5.portal_type.* persistent class
    
    - Documents that were created dynamically without a product path
      (for instance, those created with ClassTool) are now stored
      in a specific module, erp5.document.*
    
    
    Migration after this revision should be handled automatically,
    but updating beyond this point should nonetheless not be done
    carelessly.
    
    Expected changes in XML for business templates:
     - Classpath of documents:
          ERP5Type.Document.XXX -> erp5.portal_type.XXX
     - new "type_class" attribute on Portal Type Objects (BaseType Documents)
    
    
    
    git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@39371 20353a03-c40f-0410-a6d1-a30d3c3de9de
    a94f18cd
testMigration.py 4.14 KB