Esempio n. 1
0
def request_handler(req):
    req.pause()

    filename = ''
    for i in range(10):
        filename += string.uppercase[random.randrange(26)]
    filename += '.uploaded'

    print "Got request storing in %s" % filename

    def file_open(err, file):
        pump = Pump(req, file.write_stream)
        start_time = datetime.now()

        def end_handler(stream):
            def file_close(err, file):
                end_time = datetime.now()
                print "Uploaded %d bytes to %s in %s" % (
                    pump.bytes_pumped, filename, end_time - start_time)
                req.response.end()

            file.close(file_close)

        req.end_handler(end_handler)
        pump.start()
        req.resume()

    FileSystem.open(filename, handler=file_open)
Esempio n. 2
0
def request_handler(req):
    req.pause()

    filename = ''
    for i in range(10):
        filename += string.uppercase[random.randrange(26)]
    filename += '.uploaded'

    print "Got request storing in %s"% filename

    def file_open(err, file):
        pump = Pump(req, file.write_stream)
        start_time = datetime.now()

        def end_handler(stream):
            def file_close(err, file):
                end_time = datetime.now()
                print "Uploaded %d bytes to %s in %s"%(pump.bytes_pumped, filename, end_time-start_time)
                req.response.end()
            file.close(file_close)
        req.end_handler(end_handler)
        pump.start()
        req.resume()

    FileSystem.open(filename, handler=file_open)
Esempio n. 3
0
 def test_async_file(self):
     def open_handler(err, file):
         tu.check_context()
         tu.azzert(err == None)
         num_chunks = 100;
         chunk_size = 1000;
         tot_buff = Buffer.create()
         self.written = 0
         for i in range(0, num_chunks):
             buff = TestUtils.gen_buffer(chunk_size)
             tot_buff.append_buffer(buff)
             def write_handler(err, res):
                 tu.check_context()
                 self.written += 1
                 if self.written == num_chunks:
                   # all written
                   tot_read = Buffer.create()
                   self.read = 0
                   for j in range(0, num_chunks):
                     pos = j * chunk_size
                     def read_handler(err, buff):
                         tu.check_context
                         tu.azzert(err == None)
                         self.read += 1
                         if self.read == num_chunks:
                             # all read
                             tu.azzert(TestUtils.buffers_equal(tot_buff, tot_read))
                             def close_handler(err, res):
                                 tu.check_context()
                                 tu.test_complete()
                             file.close(close_handler)
                     file.read(tot_read, pos, pos, chunk_size, read_handler)
             file.write(buff, i * chunk_size, write_handler)
     FileSystem.open(FILEDIR + "/somefile.txt", handler=open_handler)
Esempio n. 4
0
 def test_async_file_streams(self):
     filename = FILEDIR + "/somefile.txt"
     def open_handler(err, file):
         tu.check_context()
         tu.azzert(err == None)
         num_chunks = 100;
         chunk_size = 1000;
         tot_buff = Buffer.create()
         write_stream = file.write_stream
         for i in range(0, num_chunks):
             buff = TestUtils.gen_buffer(chunk_size)
             tot_buff.append_buffer(buff)
             write_stream.write_buffer(buff)
         def close_handler(err, file):
             def open_handler2(err, file):
                 tu.check_context()
                 tu.azzert(err == None)
                 read_stream = file.read_stream
                 tot_read = Buffer.create()
                 def data_handler(data):
                     tot_read.append_buffer(data)  
                 read_stream.data_handler(data_handler)
                 def end_handler(stream):
                     tu.azzert(TestUtils.buffers_equal(tot_buff, tot_read))
                     tu.check_context
                     def close_handler2(err, result):
                         tu.check_context()
                         tu.test_complete()
                     file.close(close_handler2)
                 read_stream.end_handler(end_handler)
             FileSystem.open(filename, handler=open_handler2)
         
         file.close(close_handler)
     FileSystem.open(filename, handler=open_handler)
Esempio n. 5
0
            def close_handler(err, file):
                def open_handler2(err, file):
                    tu.check_context()
                    tu.azzert(err == None)
                    read_stream = file.read_stream
                    tot_read = Buffer.create()

                    def data_handler(data):
                        tot_read.append_buffer(data)

                    read_stream.data_handler(data_handler)

                    def end_handler(stream):
                        tu.azzert(TestUtils.buffers_equal(tot_buff, tot_read))
                        tu.check_context

                        def close_handler2(err, result):
                            tu.check_context()
                            tu.test_complete()

                        file.close(close_handler2)

                    read_stream.end_handler(end_handler)

                FileSystem.open(filename, handler=open_handler2)
Esempio n. 6
0
def file_props(err, props):
    req.put_header("Content-Length", props.size)

    def open_handler(err, file):
        rs = file.read_stream
        pump = Pump(rs, req)

        def end_handler(stream):
            req.end()
        rs.end_handler(end_handler)
        pump.start()

    FileSystem.open(filename, handler=open_handler)
Esempio n. 7
0
def file_props(err, props):
    req.put_header("Content-Length", props.size)

    def open_handler(err, file):
        rs = file.read_stream
        pump = Pump(rs, req)

        def end_handler(stream):
            req.end()

        rs.end_handler(end_handler)
        pump.start()

    FileSystem.open(filename, handler=open_handler)
Esempio n. 8
0
 def close_handler(err, file):
     def open_handler2(err, file):
         tu.check_context()
         tu.azzert(err == None)
         read_stream = file.read_stream
         tot_read = Buffer.create()
         def data_handler(data):
             tot_read.append_buffer(data)  
         read_stream.data_handler(data_handler)
         def end_handler(stream):
             tu.azzert(TestUtils.buffers_equal(tot_buff, tot_read))
             tu.check_context
             def close_handler2(err, result):
                 tu.check_context()
                 tu.test_complete()
             file.close(close_handler2)
         read_stream.end_handler(end_handler)
     FileSystem.open(filename, handler=open_handler2)
Esempio n. 9
0
    def test_async_file(self):
        def open_handler(err, file):
            tu.check_context()
            tu.azzert(err == None)
            num_chunks = 100
            chunk_size = 1000
            tot_buff = Buffer.create()
            self.written = 0
            for i in range(0, num_chunks):
                buff = TestUtils.gen_buffer(chunk_size)
                tot_buff.append_buffer(buff)

                def write_handler(err, res):
                    tu.check_context()
                    self.written += 1
                    if self.written == num_chunks:
                        # all written
                        tot_read = Buffer.create()
                        self.read = 0
                        for j in range(0, num_chunks):
                            pos = j * chunk_size

                            def read_handler(err, buff):
                                tu.check_context
                                tu.azzert(err == None)
                                self.read += 1
                                if self.read == num_chunks:
                                    # all read
                                    tu.azzert(
                                        TestUtils.buffers_equal(
                                            tot_buff, tot_read))

                                    def close_handler(err, res):
                                        tu.check_context()
                                        tu.test_complete()

                                    file.close(close_handler)

                            file.read(tot_read, pos, pos, chunk_size,
                                      read_handler)

                file.write(buff, i * chunk_size, write_handler)

        FileSystem.open(FILEDIR + "/somefile.txt", handler=open_handler)
Esempio n. 10
0
    def test_async_file_streams(self):
        filename = FILEDIR + "/somefile.txt"

        def open_handler(err, file):
            tu.check_context()
            tu.azzert(err == None)
            num_chunks = 100
            chunk_size = 1000
            tot_buff = Buffer.create()
            write_stream = file.write_stream
            for i in range(0, num_chunks):
                buff = TestUtils.gen_buffer(chunk_size)
                tot_buff.append_buffer(buff)
                write_stream.write_buffer(buff)

            def close_handler(err, file):
                def open_handler2(err, file):
                    tu.check_context()
                    tu.azzert(err == None)
                    read_stream = file.read_stream
                    tot_read = Buffer.create()

                    def data_handler(data):
                        tot_read.append_buffer(data)

                    read_stream.data_handler(data_handler)

                    def end_handler(stream):
                        tu.azzert(TestUtils.buffers_equal(tot_buff, tot_read))
                        tu.check_context

                        def close_handler2(err, result):
                            tu.check_context()
                            tu.test_complete()

                        file.close(close_handler2)

                    read_stream.end_handler(end_handler)

                FileSystem.open(filename, handler=open_handler2)

            file.close(close_handler)

        FileSystem.open(filename, handler=open_handler)