Sha256: d334a22fd03f2496f16036951e4667cd6de01411c7113453ad469bfd019dbc14

Contents?: true

Size: 828 Bytes

Versions: 17

Compression:

Stored size: 828 Bytes

Contents

module ForestAdminDatasourceToolkit
  module Decorators
    class DatasourceDecorator
      def initialize(child_datasource, collection_decorator_class)
        @child_datasource = child_datasource
        @collection_decorator_class = collection_decorator_class
        @decorators = {}
      end

      def collections
        @child_datasource.collections.transform_values { |c| get_collection(c.name) }
      end

      def get_collection(name)
        collection = @child_datasource.get_collection(name)
        unless @decorators.key?(collection.name)
          @decorators[collection.name] = @collection_decorator_class.new(collection, self)
        end

        @decorators[collection.name]
      end

      def render_chart(caller, name)
        @child_datasource.render_chart(caller, name)
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
forest_admin_datasource_toolkit-1.0.0.pre.beta.40 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.39 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.38 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.37 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.36 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.35 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.34 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.33 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.32 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.31 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.30 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.29 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.28 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.27 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.26 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.25 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb
forest_admin_datasource_toolkit-1.0.0.pre.beta.24 lib/forest_admin_datasource_toolkit/decorators/datasource_decorator.rb