def main():
    """ Main function """

    poller = Poller()
    proto = Protocol(poller)
    connection = Connection.attach(proto, 0)
    
    str_out = 'Hello, world!\n'

    sys.stdout.write('Connection::puts_readbuf() - Connection::read()\n')    
    llbuff_in = create_new_buffer() 
    connection.puts_readbuf(str_out)
    result = connection.read(llbuff_in, BUFF_LENGTH)
    sys.stdout.write('%d chars read: %s\n' % (result, llbuff_in.value))

    sys.stdout.write('Connection::write_readbuf() - Connection::read()\n')    
    llbuff_in = create_new_buffer() 
    connection.write_readbuf(str_out, len(str_out))
    result = connection.read(llbuff_in, BUFF_LENGTH)
    sys.stdout.write('%d chars read: %s\n' % (result, llbuff_in.value))
    
    sys.stdout.write('Connection::read() (expected empty string)\n')    
    llbuff_in = create_new_buffer() 
    result = connection.read(llbuff_in, BUFF_LENGTH)
    sys.stdout.write('%d chars read: %s\n\n' % (result, llbuff_in.value))
    
    sys.stdout.write('Connection::puts_readbuf() - Connection::readline()\n')    
    llbuff_in = create_new_buffer() 
    connection.puts_readbuf(str_out)
    result = connection.readline(llbuff_in, BUFF_LENGTH)
    sys.stdout.write('%d chars read: %s\n' % (result, llbuff_in.value))
    
    sys.stdout.write('Connection::write_rand_readbuf() - Connection::read()\n')
    llbuff_in = create_new_buffer() 
    connection.write_rand_readbuf(BUFF_LENGTH)
    result = connection.read(llbuff_in, BUFF_LENGTH)
    sys.stdout.write('%d characters read\n' %  result)

    connection.close()
Example #2
0
def main():
    """ Main function """

    poller = Poller() 
    if not poller:
        sys.exit("connection - cannot construct the poller")

    proto = MyProtocol(poller)
    if not proto:
        sys.exit("connection - cannot construct the protocol")

    proto.connection = Connection.attach(proto, 0)
    if not proto.connection:
        sys.exit("connection - cannot attach the connection")

    result = proto.connection.set_timeout(7.0)
    if result != 0:
        sys.exit("connection - cannot set the timeout")

    if proto.connection.enable_read() != 0:
        sys.exit("connection - cannot enable read")
    
    poller.loop()