# Generated by the protocol buffer compiler.  DO NOT EDIT!
# Source: smarthttp.proto for package 'gitaly'

require 'grpc'
require 'smarthttp_pb'

module Gitaly
  module SmartHTTPService
    class Service

      include GRPC::GenericService

      self.marshal_class_method = :encode
      self.unmarshal_class_method = :decode
      self.service_name = 'gitaly.SmartHTTPService'

      # The response body for GET /info/refs?service=git-upload-pack
      # Will be invoked when the user executes a `git fetch`, meaning the server
      # will upload the packs to that user. The user doesn't upload new objects.
      rpc :InfoRefsUploadPack, Gitaly::InfoRefsRequest, stream(Gitaly::InfoRefsResponse)
      # The response body for GET /info/refs?service=git-receive-pack
      # Will be invoked when the user executes a `git push`, but only advertises
      # references to the user.
      rpc :InfoRefsReceivePack, Gitaly::InfoRefsRequest, stream(Gitaly::InfoRefsResponse)
      # Request and response body for POST /upload-pack
      rpc :PostUploadPack, stream(Gitaly::PostUploadPackRequest), stream(Gitaly::PostUploadPackResponse)
      # Request and response body for POST /receive-pack
      rpc :PostReceivePack, stream(Gitaly::PostReceivePackRequest), stream(Gitaly::PostReceivePackResponse)
    end

    Stub = Service.rpc_stub_class
  end
end
