Hyper.Grpc.Server (Hyper v0.1.0)

Copy Markdown View Source

gRPC handler for hyper.grpc.v0.Hyper. A thin translation layer: each RPC maps its request to a domain value via Hyper.Grpc.Codec.from_grpc/1, calls the existing Hyper BEAM API, and maps the result back with Hyper.Grpc.Codec.to_grpc/1 (raising the GRPC.RPCError it returns on error).

Summary

Functions

create_vm(req, stream)

@spec create_vm(Hyper.Grpc.V0.CreateVmRequest.t(), GRPC.Server.Stream.t()) ::
  Hyper.Grpc.V0.CreateVmResponse.t()

fork_vm(fork_vm_request, stream)

@spec fork_vm(Hyper.Grpc.V0.ForkVmRequest.t(), GRPC.Server.Stream.t()) ::
  Hyper.Grpc.V0.ForkVmResponse.t()

get_vm(get_vm_request, stream)

@spec get_vm(Hyper.Grpc.V0.GetVmRequest.t(), GRPC.Server.Stream.t()) ::
  Hyper.Grpc.V0.GetVmResponse.t()

get_vm_usage(get_vm_usage_request, stream)

@spec get_vm_usage(Hyper.Grpc.V0.GetVmUsageRequest.t(), GRPC.Server.Stream.t()) ::
  Hyper.Grpc.V0.GetVmUsageResponse.t()

list_vms(empty, stream)

@spec list_vms(Google.Protobuf.Empty.t(), GRPC.Server.Stream.t()) ::
  Hyper.Grpc.V0.ListVmsResponse.t()

load_image(req, stream)

@spec load_image(Hyper.Grpc.V0.LoadImageRequest.t(), GRPC.Server.Stream.t()) ::
  Hyper.Grpc.V0.LoadImageResponse.t()

service_name(_)

stop_vm(stop_vm_request, stream)

@spec stop_vm(Hyper.Grpc.V0.StopVmRequest.t(), GRPC.Server.Stream.t()) ::
  Google.Protobuf.Empty.t()