Ejemplo n.º 1
0
                bleatId = bleatId.decode("utf8").strip()
                if not bleatId:
                    continue

                if not bleatId in bleats:
                    print "User {0} has unknown bleat: {1}".format(username, bleatId)
                    continue

                if bleats[bleatId]["username"] != username:
                    print "Bleat {0} has inconsistent username: {1} != {2}".format(bleatId, bleats[bleatId]["username"], username)

                bleats[bleatId]["user"] = user.id
                del bleats[bleatId]["username"]

    # Now all users have been created, the listens can be added
    for user in users.values():
        if getattr(user, "listeningTo", ""):
            user.listeningTo = map(lambda username: users[username].id, user.listeningTo.split())
            user.save()

    # Import all the bleats in chronological order
    for bleatId in sorted(bleats.keys(), key = lambda bleat: bleats[bleat]["timestamp"]):
        if not "user" in bleats[bleatId]:
            print "Bleat {0} is orphaned".format(bleatId)
            continue

        if "inReplyTo" in bleats[bleatId]:
            bleats[bleatId]["inReplyTo"] = bleats[bleats[bleatId]["inReplyTo"]].id

        bleats[bleatId] = Bleat.create(bleats[bleatId])