Class Thrift::BufferedTransport
In: lib/thrift/transport/buffered_transport.rb
lib/thrift/transport/buffered_transport.rb
Parent: BaseTransport

Methods

close   close   flush   flush   new   new   open   open   open?   open?   read   read   write   write  

Constants

DEFAULT_BUFFER = 4096
DEFAULT_BUFFER = 4096

Public Class methods

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 25
25:     def initialize(transport)
26:       @transport = transport
27:       @wbuf = ''
28:       @rbuf = ''
29:       @index = 0
30:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 25
25:     def initialize(transport)
26:       @transport = transport
27:       @wbuf = ''
28:       @rbuf = ''
29:       @index = 0
30:     end

Public Instance methods

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 40
40:     def close
41:       flush
42:       @transport.close
43:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 40
40:     def close
41:       flush
42:       @transport.close
43:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 62
62:     def flush
63:       if @wbuf != ''
64:         @transport.write(@wbuf)
65:         @wbuf = ''
66:       end
67:       
68:       @transport.flush
69:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 62
62:     def flush
63:       if @wbuf != ''
64:         @transport.write(@wbuf)
65:         @wbuf = ''
66:       end
67:       
68:       @transport.flush
69:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 36
36:     def open
37:       @transport.open
38:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 36
36:     def open
37:       @transport.open
38:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 32
32:     def open?
33:       return @transport.open?
34:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 32
32:     def open?
33:       return @transport.open?
34:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 45
45:     def read(sz)
46:       @index += sz
47:       ret = @rbuf.slice(@index - sz, sz) || ''
48: 
49:       if ret.length == 0
50:         @rbuf = @transport.read([sz, DEFAULT_BUFFER].max)
51:         @index = sz
52:         ret = @rbuf.slice(0, sz) || ''
53:       end
54: 
55:       ret
56:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 45
45:     def read(sz)
46:       @index += sz
47:       ret = @rbuf.slice(@index - sz, sz) || ''
48: 
49:       if ret.length == 0
50:         @rbuf = @transport.read([sz, DEFAULT_BUFFER].max)
51:         @index = sz
52:         ret = @rbuf.slice(0, sz) || ''
53:       end
54: 
55:       ret
56:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 58
58:     def write(buf)
59:       @wbuf << buf
60:     end

[Source]

    # File lib/thrift/transport/buffered_transport.rb, line 58
58:     def write(buf)
59:       @wbuf << buf
60:     end

[Validate]