Sha256: 497bc861ec8e6ce7dd19188fc94365c5edbd4af754e1f5f7f9399ae35d9434ed

Contents?: true

Size: 681 Bytes

Versions: 5

Compression:

Stored size: 681 Bytes

Contents

require 'active_support/concern'

module Onsi
  module Controller
    extend ActiveSupport::Concern

    module ClassMethods
      def render_version(version = nil)
        @render_version = version if version
        @render_version
      end

      def inherited(subclass)
        subclass.render_version(@render_version)
      end
    end

    def render_resource(resource, opts = {})
      version = opts.delete(:version) || self.class.render_version || Model::DEFAULT_API_VERSION
      payload = Resource.render(resource, version)
      render_options = {}
      render_options[:json] = payload
      render_options.merge!(opts)
      render(render_options)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
onsi-0.8.0 lib/onsi/controller.rb
onsi-0.7.0 lib/onsi/controller.rb
onsi-0.6.0 lib/onsi/controller.rb
onsi-0.5.0 lib/onsi/controller.rb
onsi-0.4.0 lib/onsi/controller.rb