Sha256: 6c17f52a5ffa871bec694599f06ea983c9f4a5830ac81b96b11079c2ce57fc67
Contents?: true
Size: 922 Bytes
Versions: 20
Compression:
Stored size: 922 Bytes
Contents
# frozen_string_literal: true require_relative 'avro_base' require_relative 'avro_validation' require 'avro_turf/messaging' module Deimos module SchemaBackends # Encode / decode using the Avro schema registry. class AvroSchemaRegistry < AvroBase # @override def decode_payload(payload, schema:) avro_turf_messaging.decode(payload, schema_name: schema) end # @override def encode_payload(payload, schema: nil, topic: nil) avro_turf_messaging.encode(payload, schema_name: schema, subject: topic) end private # @return [AvroTurf::Messaging] def avro_turf_messaging @avro_turf_messaging ||= AvroTurf::Messaging.new( schema_store: @schema_store, registry_url: Deimos.config.schema.registry_url, schemas_path: Deimos.config.schema.path, namespace: @namespace ) end end end end
Version data entries
20 entries across 20 versions & 1 rubygems