Class: Simpleadmin::Config
- Inherits:
-
Object
- Object
- Simpleadmin::Config
- Includes:
- Singleton
- Defined in:
- lib/simpleadmin/config.rb
Overview
Configuration storage to customize allowed tables, to choose a database adapter and name
Constant Summary collapse
- DEFAULT_TABLE_SCHEMAS =
['public'].freeze
Instance Attribute Summary collapse
- #allowed_tables ⇒ Object
- #client ⇒ Object
- #database_credentials ⇒ Object
- #on_create ⇒ Object
- #on_destroy ⇒ Object
- #on_update ⇒ Object
- #table_schemas ⇒ Object
Class Method Summary collapse
- .allowed_table?(table_name) ⇒ Boolean
- .allowed_tables ⇒ Object
- .database_credentials ⇒ Object
- .on_create ⇒ Object
- .on_destroy ⇒ Object
- .on_update ⇒ Object
- .setup {|instance| ... } ⇒ Object
- .table_schemas ⇒ Object
Instance Attribute Details
#allowed_tables ⇒ Object
38 39 40 |
# File 'lib/simpleadmin/config.rb', line 38 def allowed_tables @allowed_tables end |
#client ⇒ Object
38 39 40 |
# File 'lib/simpleadmin/config.rb', line 38 def client @client end |
#database_credentials ⇒ Object
38 39 40 |
# File 'lib/simpleadmin/config.rb', line 38 def database_credentials @database_credentials end |
#on_create ⇒ Object
39 40 41 |
# File 'lib/simpleadmin/config.rb', line 39 def on_create @on_create end |
#on_destroy ⇒ Object
39 40 41 |
# File 'lib/simpleadmin/config.rb', line 39 def on_destroy @on_destroy end |
#on_update ⇒ Object
39 40 41 |
# File 'lib/simpleadmin/config.rb', line 39 def on_update @on_update end |
#table_schemas ⇒ Object
38 39 40 |
# File 'lib/simpleadmin/config.rb', line 38 def table_schemas @table_schemas end |
Class Method Details
.allowed_table?(table_name) ⇒ Boolean
46 47 48 49 50 |
# File 'lib/simpleadmin/config.rb', line 46 def allowed_table?(table_name) return true if instance.allowed_tables.include?(:all) instance.allowed_tables.include?(table_name) end |
.allowed_tables ⇒ Object
52 53 54 |
# File 'lib/simpleadmin/config.rb', line 52 def allowed_tables instance.allowed_tables || [] end |
.database_credentials ⇒ Object
56 57 58 |
# File 'lib/simpleadmin/config.rb', line 56 def database_credentials instance.database_credentials end |
.on_create ⇒ Object
60 61 62 63 64 |
# File 'lib/simpleadmin/config.rb', line 60 def on_create raise NotImplementedError, 'Please define #on_create in an initializer to use gem' if instance.on_create.nil? instance.on_create end |
.on_destroy ⇒ Object
72 73 74 75 76 |
# File 'lib/simpleadmin/config.rb', line 72 def on_destroy raise NotImplementedError, 'Please define #on_destroy in an initializer to use gem' if instance.on_destroy.nil? instance.on_destroy end |
.on_update ⇒ Object
66 67 68 69 70 |
# File 'lib/simpleadmin/config.rb', line 66 def on_update raise NotImplementedError, 'Please define #on_update in an initializer to use gem' if instance.on_update.nil? instance.on_update end |
.setup {|instance| ... } ⇒ Object
42 43 44 |
# File 'lib/simpleadmin/config.rb', line 42 def setup yield(instance) end |
.table_schemas ⇒ Object
78 79 80 |
# File 'lib/simpleadmin/config.rb', line 78 def table_schemas instance.table_schemas || DEFAULT_TABLE_SCHEMAS end |