Sha256: e086ffc603098f2d504fff0a3cef486ea19249fd25eda921b7242e8c6e87061e
Contents?: true
Size: 968 Bytes
Versions: 1
Compression:
Stored size: 968 Bytes
Contents
module Lurker module Json class Reference < Schema REF = '$ref'.freeze attr_reader :original_uri delegate :merge!, :replace!, :reorder!, to: :@schema def to_original_hash(options = {}) @original_schema.to_hash end private def parse_schema(schema) @original_schema = schema.dup # NOTE : We decide that reference is relative, so we are using merge # We use first read for correct relative path resolving reader = Lurker::Json::Reader.new(@uri.merge(schema[REF]).path) payload = reader.payload @original_uri = parse_uri(reader.path) @schema = @parser.plain(uri: reader.path).parse(payload) # NOTE : The easiest way to get schema copy is to parse it again. # It's faster and reliable # @_schema = @parser.plain(uri: reader.path).parse(reader.payload) # @_schema_file = URI.parse(reader.path) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
lurker-0.6.3 | lib/lurker/json/schema/reference.rb |