cubicweb/dataimport/importer.py
branch3.26
changeset 12625 ba5231e1aa45
parent 12173 d13fc09301bd
child 12626 32ee89340e59
equal deleted inserted replaced
12618:3f125fdbcd70 12625:ba5231e1aa45
    28 """
    28 """
    29 
    29 
    30 from collections import defaultdict
    30 from collections import defaultdict
    31 import logging
    31 import logging
    32 
    32 
       
    33 import six
       
    34 
    33 from logilab.mtconverter import xml_escape
    35 from logilab.mtconverter import xml_escape
    34 
    36 
    35 from cubicweb import Binary
    37 from cubicweb import Binary
    36 
    38 
    37 
    39 
    69         importer.import_entities(set_cwuri(extentities))
    71         importer.import_entities(set_cwuri(extentities))
    70     """
    72     """
    71     def use_extid_as_cwuri_filter(extentities):
    73     def use_extid_as_cwuri_filter(extentities):
    72         for extentity in extentities:
    74         for extentity in extentities:
    73             if extentity.extid not in extid2eid:
    75             if extentity.extid not in extid2eid:
    74                 extentity.values.setdefault('cwuri', set([extentity.extid.decode('utf-8')]))
    76                 cwuri = extentity.extid
       
    77                 if isinstance(cwuri, six.binary_type):
       
    78                     cwuri = cwuri.decode('utf-8')
       
    79                 extentity.values.setdefault('cwuri', set([cwuri]))
    75             yield extentity
    80             yield extentity
    76     return use_extid_as_cwuri_filter
    81     return use_extid_as_cwuri_filter
    77 
    82 
    78 
    83 
    79 def drop_extra_values(extentities, schema, import_log):
    84 def drop_extra_values(extentities, schema, import_log):