Sha256: 57c95029115a179e79380bb0e1af6823deccbe703185e488a4691304b13f7c43
Contents?: true
Size: 1.23 KB
Versions: 2
Compression:
Stored size: 1.23 KB
Contents
module ForestAdminDatasourceToolkit class Collection < Components::Contracts::CollectionContract attr_accessor :fields, :segments attr_reader :actions, :charts, :datasource, :name, :schema, :native_driver attr_writer :searchable, :countable def initialize(datasource, name, native_driver: nil) super() @datasource = datasource @name = name @native_driver = native_driver @fields = {} @schema = {} @fields = {} @actions = {} @segments = {} @charts = {} @searchable = false @countable = true end def is_countable? @countable end def is_searchable? @searchable end def add_field(name, field) raise Exceptions::ForestException, "Field #{name} already defined in collection" if @fields.key?(name) @fields[name] = field end def add_fields(fields) fields.each do |name, field| add_field(name, field) end end def add_action(name, action) raise Exceptions::ForestException, "Action #{name} already defined in collection" if @actions[key] @actions[name] = action end end end
Version data entries
2 entries across 2 versions & 1 rubygems