Sha256: a90036d27494e2f84f0648e394ee271fe0e47a40eaa7e5e58fe4d17a970e1b2b
Contents?: true
Size: 685 Bytes
Versions: 2
Compression:
Stored size: 685 Bytes
Contents
# frozen_string_literal: true module AnyCable module Middlewares # Checks that RPC client version is compatibly with # the current RPC proto version class CheckVersion < Middleware attr_reader :version def initialize(version) @version = version end def call(_request, call, _method) supported_versions = call.metadata["protov"]&.split(",") return yield if supported_versions&.include?(version) raise GRPC::Internal, "Incompatible AnyCable RPC client.\nCurrent server version: #{version}.\n" \ "Client supported versions: #{call.metadata["protov"] || "unknown"}." end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
anycable-1.0.0.preview2 | lib/anycable/middlewares/check_version.rb |
anycable-1.0.0.preview1 | lib/anycable/middlewares/check_version.rb |