import sys,os
from ID3 import ID3
from twisted.spread import pb
from twisted.internet import reactor, defer
from twisted.python import util,log

sys.path.append("./")
from index import *

PORTNUM=44268
ID3FIELDS = ["TITLE", "ALBUM", "ARTIST"]
K=1

def trace(x):
    print "TRACE"
    return x

def printArg(x):
    print x


factory = pb.PBClientFactory()
reactor.connectTCP("localhost", PORTNUM, factory)
d = factory.getRootObject()
d.addErrback(log.err)

def printRes(res):
    print res
    for x in res:
        print x
        
def runQuery(obj):
    q = Query()
    q.addKeyword("title", "god")
    q.addKeyword("title", "wrote")
    q.addKeyword("title", "in")
    q.addKeyword("title", "lisp")
    q.addKeyword("title", "code")
    resDef = obj.callRemote("recursiveSearch", q)
    resDef.addCallback(printRes)
    resDef.addCallback(lambda x: reactor.stop())
    resDef.addErrback(log.err)

d.addCallback(runQuery)
d.addErrback(log.err)
reactor.run()



    

