def testBTreeMigration(self): # create (unmigrated) btree folder folder = self.makeUnmigratedFolder(self.portal, 'test', title='Foo') view = BTreeMigrationView(self.portal, self.app.REQUEST) self.failUnless(view.migrate(folder)) folder = self.portal.test # get the object again... self.failUnless(isSaneBTreeFolder(folder)) self.assertEqual(folder.getId(), 'test') self.assertEqual(folder.Title(), 'Foo') # a second migration should be skipped self.failIf(view.migrate(folder))
def upgrade_1000_to_1001(context): if not HAS_FOLDER: return portal = getToolByName(context, "portal_url").getPortalObject() catalog = getToolByName(portal, "portal_catalog") request = portal.REQUEST view = BTreeMigrationView(portal, request) for brain in catalog(portal_type="FaqFolder"): obj = brain.getObject() view.migrate(obj)
class CMFEditionsFolderMigrator(CMFEditionsUpgrader): def upgrade(self): from Products.BTreeFolder2.BTreeFolder2 import BTreeFolder2Base as BTreeFolder from plone.app.folder.migration import BTreeMigrationView self.folder_class = BTreeFolder self.folder_migrator = BTreeMigrationView(self.context, None) super(CMFEditionsFolderMigrator, self).upgrade() def upgradeObj(self, obj): if isinstance(obj, self.folder_class): self.folder_migrator.migrate(obj)
class CMFEditionsFolderMigrator(CMFEditionsUpgrader): def upgrade(self): from Products.BTreeFolder2.BTreeFolder2 import ( BTreeFolder2Base as BTreeFolder) from plone.app.folder.migration import BTreeMigrationView self.folder_class = BTreeFolder self.folder_migrator = BTreeMigrationView(self.context, None) super(CMFEditionsFolderMigrator, self).upgrade() def upgradeObj(self, obj): if isinstance(obj, self.folder_class): self.folder_migrator.migrate(obj)