Subversion Repositories SmartDukaan

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
30 ashish 1
# 
2
# Licensed to the Apache Software Foundation (ASF) under one
3
# or more contributor license agreements. See the NOTICE file
4
# distributed with this work for additional information
5
# regarding copyright ownership. The ASF licenses this file
6
# to you under the Apache License, Version 2.0 (the
7
# "License"); you may not use this file except in compliance
8
# with the License. You may obtain a copy of the License at
9
# 
10
#   http://www.apache.org/licenses/LICENSE-2.0
11
# 
12
# Unless required by applicable law or agreed to in writing,
13
# software distributed under the License is distributed on an
14
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
# KIND, either express or implied. See the License for the
16
# specific language governing permissions and limitations
17
# under the License.
18
# 
19
 
20
=begin
21
The only change required for a transport to support BinaryProtocolAccelerated is to implement 2 methods:
22
  * borrow(size), which takes an optional argument and returns atleast _size_ bytes from the transport, 
23
                  or the default buffer size if no argument is given
24
  * consume!(size), which removes size bytes from the front of the buffer
25
 
26
See MemoryBuffer and BufferedTransport for examples.
27
=end
28
 
29
module Thrift
30
  class BinaryProtocolAcceleratedFactory < BaseProtocolFactory
31
    def get_protocol(trans)
32
      BinaryProtocolAccelerated.new(trans)
33
    end
34
  end
35
end