module Geoblacklight::MetadataTransformer

Public Class Methods

instance(metadata) click to toggle source

Initialize a new MetadataTransformer instance @param [Geoblacklight::Metadata::Base] metadata string or File path to the raw metadata @return [Geoblacklight::MetadataTransformer::BaseTransformer]

# File lib/geoblacklight/metadata_transformer.rb, line 27
def self.instance(metadata)
  type = metadata.class.name.split("::").last
  begin
    klass = "Geoblacklight::MetadataTransformer::#{type.capitalize}".constantize
  rescue
    raise TypeError, "Metadata type #{type} is not supported"
  end

  klass.new(metadata)
end