module Avro::Name

Public Class Methods

add_name(names, new_schema) click to toggle source

Add a new schema object to the names dictionary (in place).

    # File lib/avro/schema.rb
403 def self.add_name(names, new_schema)
404   new_fullname = new_schema.fullname
405   if Avro::Schema::VALID_TYPES.include?(new_fullname)
406     raise SchemaParseError, "#{new_fullname} is a reserved type name."
407   elsif names.nil?
408     names = {}
409   elsif names.has_key?(new_fullname)
410     raise SchemaParseError, "The name \"#{new_fullname}\" is already in use."
411   end
412 
413   names[new_fullname] = new_schema
414   names
415 end
extract_namespace(name, namespace) click to toggle source
    # File lib/avro/schema.rb
394 def self.extract_namespace(name, namespace)
395   parts = name.split('.')
396   if parts.size > 1
397     namespace, name = parts[0..-2].join('.'), parts.last
398   end
399   return name, namespace
400 end
make_fullname(name, namespace) click to toggle source
    # File lib/avro/schema.rb
417 def self.make_fullname(name, namespace)
418   if !name.include?('.') && !namespace.nil?
419     namespace + '.' + name
420   else
421     name
422   end
423 end