class OpenActive::DatasetSite::TemplateRenderer

Attributes

settings[R]

Public Class Methods

new(settings) click to toggle source
# File lib/openactive/dataset_site/template_renderer.rb, line 10
def initialize(settings)
  @settings = settings
end

Public Instance Methods

dataset() click to toggle source
# File lib/openactive/dataset_site/template_renderer.rb, line 14
def dataset
  return settings if settings.is_a?(OpenActive::Models::Dataset)

  @dataset ||= settings.to_dataset
end
json() click to toggle source
# File lib/openactive/dataset_site/template_renderer.rb, line 20
def json
  dataset.to_json(schema: true, pretty: true)
end
method_missing(orig_method_name, *args) click to toggle source
Calls superclass method
# File lib/openactive/dataset_site/template_renderer.rb, line 24
def method_missing(orig_method_name, *args)
  method_name = orig_method_name.to_s.underscore

  return super unless dataset.respond_to?(method_name)

  val = dataset.public_send(method_name, *args)

  OpenActive::Helpers::JsonLd.serialize_value(val, nil)
end
respond_to_missing?(orig_method_name, include_private = false) click to toggle source
Calls superclass method
# File lib/openactive/dataset_site/template_renderer.rb, line 34
def respond_to_missing?(orig_method_name, include_private = false)
  method_name = orig_method_name.to_s.underscore

  dataset.respond_to?(method_name) || super
end