def parallel_arct(arg):
    arcticle = arg
    local_id = 0
    with lock:
        local_id = id.value
        id.value += 1
    try:
        newarticle = NewsArticle(local_id, arcticle[0], arcticle[1], arcticle[2], arcticle[3], arcticle[4], countries)
        newarticle.extract_metadata()
    except Exception:
        print "Constructor"
    
    return newarticle
supportBar = SupportBar()

#create file for results
results = open('../output/results.txt', 'w+')
debug = open('../output/debug.txt', 'w+')

id = -1
for filename in xmlfiles:
    larct = parse("../filesXML/" + filename)
    sys.stdout.write("(" + str(len(larct)) + "/" )
    sys.stdout.flush()
    for arcticle in larct:
        id += 1
        try:
            newarticle = NewsArticle(id, arcticle[0], arcticle[1], arcticle[2], arcticle[3], arcticle[4])
            newarticle.extract_metadata()

            aggr.add_article(newarticle)
            
            #Update StatusBar
            supportBar.increase()
            size = len(str(supportBar.get()))
            spaces = ' ' * (4 - size)
            sys.stdout.write("{0}){1}\b\b\b\b\b".format(supportBar.get(), spaces))
            sys.stdout.flush()
            
        except KeyboardInterrupt:
            print "\nProgram Closed Successfully!"
            sys.exit(1)
        except Exception,e:
            print "\nException occurred!" + filename