Method: RJGit::RJGitPack#process

Defined in:
lib/transport.rb

#process(client_msg) ⇒ Object



26
27
28
29
30
31
32
33
34
35
# File 'lib/transport.rb', line 26

def process(client_msg)
  input, output = init_buffers(client_msg)
  @jpack.set_bi_directional_pipe(@bidirectional)
  begin
    @jpack.send(@action, input, output, nil)
  rescue Java::OrgEclipseJgitErrors::InvalidObjectIdException, Java::OrgEclipseJgitTransport::UploadPackInternalServerErrorException, Java::JavaIo::IOException => e
    return nil, e
  end
  return ByteArrayInputStream.new(output.to_byte_array).to_io, nil
end