Class: Dyna::DynamoDBWrapper
- Inherits:
-
Object
- Object
- Dyna::DynamoDBWrapper
- Includes:
- Logger::ClientHelper
- Defined in:
- lib/dyna/wrapper/table.rb,
lib/dyna/wrapper/dynamo_db_wrapper.rb
Defined Under Namespace
Classes: Table
Instance Method Summary collapse
- #create(dsl) ⇒ Object
-
#initialize(ddb, options) ⇒ DynamoDBWrapper
constructor
A new instance of DynamoDBWrapper.
- #tables ⇒ Object
- #updated? ⇒ Boolean
Methods included from Logger::ClientHelper
Constructor Details
#initialize(ddb, options) ⇒ DynamoDBWrapper
Returns a new instance of DynamoDBWrapper.
5 6 7 8 |
# File 'lib/dyna/wrapper/dynamo_db_wrapper.rb', line 5 def initialize(ddb, ) @ddb = ddb @options = .dup end |
Instance Method Details
#create(dsl) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/dyna/wrapper/dynamo_db_wrapper.rb', line 19 def create(dsl) log(:info, 'Create Table', :cyan, "#{dsl.table_name}") unless @options.dry_run params = dsl.symbolize_keys params.delete(:scalable_targets) params.delete(:scaling_policies) params.delete(:time_to_live_specification) result = @ddb.create_table(params) @options.updated = true result end end |
#tables ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'lib/dyna/wrapper/dynamo_db_wrapper.rb', line 10 def tables @ddb.list_tables.map { |tables| tables.table_names.map do |table_name| describe_table = @ddb.describe_table(table_name: table_name).table Table.new(@ddb, describe_table, @options) end }.flatten end |
#updated? ⇒ Boolean
33 34 35 |
# File 'lib/dyna/wrapper/dynamo_db_wrapper.rb', line 33 def updated? !!@options.updated end |