misc/scripts/pyroforge2datafeed.py
branchstable
changeset 8008 9489dc9bc114
parent 7917 436400e7f807
child 8696 0bb18407c053
equal deleted inserted replaced
7987:0977d9594d3c 8008:9489dc9bc114
    43 
    43 
    44 print '******************** backport entity content ***************************'
    44 print '******************** backport entity content ***************************'
    45 
    45 
    46 from cubicweb.server import debugged
    46 from cubicweb.server import debugged
    47 todelete = {}
    47 todelete = {}
       
    48 host = source.config['base-url'].split('://')[1]
    48 for entity in rql('Any X WHERE X cw_source S, S eid %(s)s', {'s': source.eid}).entities():
    49 for entity in rql('Any X WHERE X cw_source S, S eid %(s)s', {'s': source.eid}).entities():
    49     with debugged('DBG_SQL'):
       
    50         etype = entity.__regid__
    50         etype = entity.__regid__
    51         if not source.support_entity(etype):
    51         if not source.support_entity(etype):
    52             print "source doesn't support %s, delete %s" % (etype, entity.eid)
    52             print "source doesn't support %s, delete %s" % (etype, entity.eid)
    53         elif etype in DONT_GET_BACK_ETYPES:
    53         elif etype in DONT_GET_BACK_ETYPES:
    54             print 'ignore %s, delete %s' % (etype, entity.eid)
    54             print 'ignore %s, delete %s' % (etype, entity.eid)
    55         else:
    55         else:
    56             try:
    56             try:
    57                 entity.complete()
    57                 entity.complete()
    58             except:
    58                 if not host in entity.cwuri:
       
    59                     print 'SKIP foreign entity', entity.cwuri, source.config['base-url']
       
    60                     continue
       
    61             except Exception:
    59                 print '%s %s much probably deleted, delete it (extid %s)' % (
    62                 print '%s %s much probably deleted, delete it (extid %s)' % (
    60                     etype, entity.eid, entity.cw_metainformation()['extid'])
    63                     etype, entity.eid, entity.cw_metainformation()['extid'])
    61             else:
    64             else:
    62                 print 'get back', etype, entity.eid
    65                 print 'get back', etype, entity.eid
    63                 entity.cw_edited = EditedEntity(entity, **entity.cw_attr_cache)
    66                 entity.cw_edited = EditedEntity(entity, **entity.cw_attr_cache)