Subversion Repositories SmartDukaan

Rev

Rev 3537 | Rev 3915 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

'''
Created on 04-May-2010

@author: ashish
'''
from shop2020.config.client.ConfigClient import ConfigClient
from shop2020.thriftpy.model.v1.user import UserContextService
from thrift.transport import TSocket, TTransport
from thrift.protocol.TBinaryProtocol import TBinaryProtocolFactory
from thrift.server import TServer
from shop2020.model.v1.user.impl.UserContextSerivceHandler import UserContextServiceHandler


host_name = 'localhost'
port = 9000
dbname = 'user'
db_hostname='localhost'

def main():
    #get the config client
    try:
        config_client = ConfigClient()
        host_name = config_client.get_property('user_service_server_host')
        port = config_client.get_property('user_service_server_port')
        dbname = config_client.get_property('user_service_dbname')
        db_hostname = config_client.get_property('user_service_db_hostname')
    except:
        #error while spawning the config server
        host_name = 'localhost'
        port = 9000
        dbname = 'user'
        db_hostname='localhost'
    
    handler = UserContextServiceHandler(dbname, db_hostname)
    processor = UserContextService.Processor(handler)
    transport = TSocket.TServerSocket(port=port)
    tfactory = TTransport.TFramedTransportFactory()
    pfactory = TBinaryProtocolFactory()
    server = TServer.TThreadedServer(processor, transport, tfactory, pfactory)
    print "Starting UserService at, port "+ str(port)+" host "+host_name
    server.serve()
    print "Server functioning"
    

if __name__ == '__main__':
    main()