Пример #1
0
    def run(self):

        if not self.check():
            import sys
            print '-------------------------------------------------'
            print 'Self-check failed.'
            print
            sys.exit(2)


        if self.id or self.legacy_id:

            if(self.object_type == 'media'):

                if self.legacy_id:
                    legacy_obj = Medias.objects.using('legacy').get(id=int(self.legacy_id))
                    obj, status = get_media_by_legacy_object(legacy_obj, force=True)
                    legacy_obj.migrated = datetime.now()
                    legacy_obj.save()

            if(self.object_type == 'release'):

                if self.legacy_id:
                    legacy_obj = Releases.objects.using('legacy').get(id=int(self.legacy_id))
                    obj, status = get_release_by_legacy_object(legacy_obj, force=True)
                    legacy_obj.migrated = datetime.now()
                    legacy_obj.save()

            if(self.object_type == 'artist'):

                if self.legacy_id:
                    legacy_obj = Artists.objects.using('legacy').get(id=int(self.legacy_id))
                    obj, status = get_artist_by_legacy_object(legacy_obj, force=True)
                    legacy_obj.migrated = datetime.now()
                    legacy_obj.save()

            if(self.object_type == 'label'):

                if self.legacy_id:
                    legacy_obj = Labels.objects.using('legacy').get(id=int(self.legacy_id))
                    obj, status = get_label_by_legacy_object(legacy_obj, force=True)
                    legacy_obj.migrated = datetime.now()
                    legacy_obj.save()

            if(self.object_type == 'user'):

                if self.legacy_id:

                    from obp_legacy.models_legacy import ElggUsers
                    legacy_obj = ElggUsers.objects.using('legacy_legacy').get(ident=int(self.legacy_id))
                    obj, status = get_user_by_legacy_legacy_object(legacy_obj, force=True)
                    legacy_obj.migrated = datetime.now()
                    legacy_obj.save()

            if(self.object_type == 'playlist'):

                if self.legacy_id:

                    from obp_legacy.models_legacy import ElggCmMaster

                    legacy_obj = ElggCmMaster.objects.using('legacy_legacy').get(ident=int(self.legacy_id))
                    obj, status = get_playlist_by_legacy_object(legacy_obj, force=True)
                    legacy_obj.migrated = datetime.now()
                    legacy_obj.save()

            return

        if(self.object_type == 'release'):

            objects = Releases.objects.using('legacy').filter(Q(migrated__lte=F('updated')) | Q(migrated=None)).exclude(name__in=[u'', u'UNSORTED-FILES']).all()[0:self.limit]

            for legacy_obj in objects:
                obj, status = get_release_by_legacy_object(legacy_obj, force=FORCE_UPDATE)
                legacy_obj.migrated = datetime.now()
                legacy_obj.save()
        
        
        if(self.object_type == 'media'):

            #objects = Medias.objects.using('legacy').filter(migrated=None).exclude(name=u'').order_by('-created').all()[0:self.limit]
            objects = Medias.objects.using('legacy').filter(Q(migrated__lte=F('updated')) | Q(migrated=None)).exclude(name=u'', mediasreleases__release__name__in=[u'UNSORTED-FILES', u'']).order_by('-created').all()[0:self.limit]

            print 'NUM OBJECTS: %s' % objects.count()
        
            for legacy_obj in objects:
                obj, status = get_media_by_legacy_object(legacy_obj, force=FORCE_UPDATE)
                legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'label'):

            #objects = Labels.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:self.limit]
            objects = Labels.objects.using('legacy').filter(Q(migrated__lte=F('updated')) | Q(migrated=None)).exclude(name=u'').all()[0:self.limit]
        
            for legacy_obj in objects:
                obj, status = get_label_by_legacy_object(legacy_obj, force=FORCE_UPDATE)
                legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'artist'):

            #objects = Artists.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:self.limit]
            objects = Artists.objects.using('legacy').filter(Q(migrated__lte=F('updated')) | Q(migrated=None)).exclude(name=u'').all()[0:self.limit]
        
            for legacy_obj in objects:
                obj, status = get_artist_by_legacy_object(legacy_obj, force=FORCE_UPDATE)
                legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'user'):

            #objects = Users.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:5]
            #objects = Users.objects.using('legacy').exclude(username=u'').all()[0:1000]
            from obp_legacy.models_legacy import ElggUsers
            objects = ElggUsers.objects.using('legacy_legacy').filter(user_type='person')[0:self.limit]
            #objects = ElggUsers.objects.using('legacy_legacy').filter(user_type='person', ident=9)[0:2000] # jonas
        
            for legacy_obj in objects:
                obj, status = get_user_by_legacy_legacy_object(legacy_obj)                
                #legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'group'):

            #objects = Users.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:5]
            #objects = Users.objects.using('legacy').exclude(username=u'').all()[0:1000]
            from obp_legacy.models_legacy import ElggUsers
            objects = ElggUsers.objects.using('legacy_legacy').filter(user_type='community')[0:self.limit]
        
            for legacy_obj in objects:
                obj, status = get_community_by_legacy_legacy_object(legacy_obj)                
                #legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'playlist'):

            from obp_legacy.models_legacy import ElggCmMaster
            objects = ElggCmMaster.objects.using('legacy_legacy').filter(type='Container', migrated=None)[0:self.limit]

            for legacy_obj in objects:
                obj, status = get_playlist_by_legacy_object(legacy_obj)                
                legacy_obj.migrated = datetime.now()
                legacy_obj.save()


        if(self.object_type == 'license'):

            from obp_legacy.models import Licenses
            objects = Licenses.objects.using('legacy').all()

            for legacy_obj in objects:
                print legacy_obj
                obj, status = get_license_by_legacy_object(legacy_obj)
Пример #2
0
    def walker(self):
        
        if(self.object_type == 'release'):

            objects = Releases.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:100000]
        
            for legacy_obj in objects:
                obj, status = get_release_by_legacy_object(legacy_obj)                
                legacy_obj.migrated = datetime.now()
                legacy_obj.save()
        
        
        if(self.object_type == 'media'):

            objects = Medias.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:100000]
        
            print 'NUM OBJECTS: %s' % objects.count()
        
            for legacy_obj in objects:
                obj, status = get_media_by_legacy_object(legacy_obj)                
                legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'label'):

            objects = Labels.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:100000]
        
            for legacy_obj in objects:
                obj, status = get_label_by_legacy_object(legacy_obj)                
                legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'artist'):

            objects = Artists.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:100]
        
            for legacy_obj in objects:
                obj, status = get_artist_by_legacy_object(legacy_obj)                
                legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'user'):

            #objects = Users.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:5]
            #objects = Users.objects.using('legacy').exclude(username=u'').all()[0:1000]
            from obp_legacy.models_legacy import ElggUsers
            objects = ElggUsers.objects.using('legacy_legacy').filter(user_type='person')[0:2000]
            #objects = ElggUsers.objects.using('legacy_legacy').filter(user_type='person', ident=9)[0:2000] # jonas
        
            for legacy_obj in objects:
                obj, status = get_user_by_legacy_legacy_object(legacy_obj)                
                #legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'group'):

            #objects = Users.objects.using('legacy').filter(migrated=None).exclude(name=u'').all()[0:5]
            #objects = Users.objects.using('legacy').exclude(username=u'').all()[0:1000]
            from obp_legacy.models_legacy import ElggUsers
            objects = ElggUsers.objects.using('legacy_legacy').filter(user_type='community')[0:50]
        
            for legacy_obj in objects:
                obj, status = get_community_by_legacy_legacy_object(legacy_obj)                
                #legacy_obj.migrated = datetime.now()
                legacy_obj.save()
                
                        
        if(self.object_type == 'playlist'):

            from obp_legacy.models_legacy import ElggCmMaster
            objects = ElggCmMaster.objects.using('legacy_legacy').filter(type='Container')[0:100]
        
            for legacy_obj in objects:
                obj, status = get_playlist_by_legacy_object(legacy_obj)                
                #legacy_obj.migrated = datetime.now()
                legacy_obj.save()