Пример #1
0
def main():
    usage = """usage: %prog
    Report if all tables are the same length"""
    parser = GlobalOptionsParser(usage=usage)
    (options, args) = parser.parse_args()
    parser.check_args(0, args)
    session = LionDB(options.config, options.trace, options.app)

    # first get a list of the diffs between each language and the master language
    request = "SELECT langid FROM languages"
    session.execute_query(request)
    langs = session.cursor.fetchall()
    any_diffs_found = False
    for l in langs:
        lid = l[0]
        diffs = session.list_langtable_diffs(lid, session.masterlang)
        if diffs != None:
            any_diffs_found = True
            longer, shorter, data = diffs
            if longer == lid:
                print "%s has more entries than %s" % (lid, session.masterlang)
            else:
                print "%s has fewer entries than %s" % (lid,
                                                        session.masterlang)

    if any_diffs_found == False:
        print "All tables are the same length as %s" % session.masterlang
Пример #2
0
def main():
    usage = """usage: %prog
    Report if all tables are the same length"""
    parser = GlobalOptionsParser(usage=usage)
    (options, args) = parser.parse_args()
    parser.check_args(0, args)
    session = LionDB(options.config, options.trace, options.app)    
    
    # first get a list of the diffs between each language and the master language
    request = "SELECT langid FROM languages"
    session.execute_query(request)
    langs = session.cursor.fetchall()
    any_diffs_found = False
    for l in langs:
        lid = l[0]
        diffs = session.list_langtable_diffs(lid, session.masterlang)
        if diffs != None:
            any_diffs_found = True
            longer, shorter, data = diffs
            if longer == lid:
                print "%s has more entries than %s" % (lid, session.masterlang)
            else:
                print "%s has fewer entries than %s" % (lid, session.masterlang)
        
    if any_diffs_found == False:
        print "All tables are the same length as %s" % session.masterlang
Пример #3
0
def main():
    usage = """usage: %prog langid1 langid2"""
    parser = GlobalOptionsParser(usage=usage)
    (options, args) = parser.parse_args()
    parser.check_args(2, args)

    session = LionDB(options.config, options.trace, options.app)
    results = session.list_langtable_diffs(args[0], args[1])
    if results == None:
        print "Tables are equal"
    else:
        longer, shorter, data = results
        print "Items in %s that are not in %s" % (longer, shorter)

        for r in data:
            print "%-10s%-10s" % (r[0], r[1])
Пример #4
0
def main():
    usage = """usage: %prog langid1 langid2"""
    parser = GlobalOptionsParser(usage=usage)
    (options, args) = parser.parse_args()
    parser.check_args(2, args)
    
    session = LionDB(options.config, options.trace, options.app)    
    results = session.list_langtable_diffs(args[0], args[1])
    if results == None:
        print "Tables are equal"
    else:
        longer, shorter, data = results
        print "Items in %s that are not in %s" % (longer, shorter)
        
        for r in data:
            print "%-10s%-10s" % (r[0], r[1]) 
Пример #5
0
def main():
    usage = """usage: %prog
    Normalizes imbalances in the DB"""
    parser = GlobalOptionsParser(usage=usage)
    (options, args) = parser.parse_args()
    parser.check_args(0, args)
    session = LionDB(options.config, options.trace, options.app)

    warn1 = "remove items from all tables that aren't in %s" % session.masterlang
    warn2 = "add missing items to all tables from %s " % session.masterlang

    if parser.safety_check(warn1) == False:
        exit(1)
    if parser.safety_check(warn2) == False:
        exit(1)

    # first get a list of the diffs between each language and the master language
    request = "SELECT langid FROM languages"
    session.execute_query(request)
    langs = session.cursor.fetchall()

    for l in langs:
        lid = l[0]
        diffs = session.list_langtable_diffs(lid, session.masterlang)
        if diffs != None:
            longer, shorter, data = diffs
            # if the given language has more entries than the master language, remove the extras
            if longer == lid:
                for d in data:
                    xmlid = d[0]
                    session.remove_item(lid, xmlid)

            # if the given language has fewer entries than the master language, copy the relevant items over
            else:
                for d in data:
                    xmlid = d[0]
                    session.copy_item(xmlid, session.masterlang, lid)