Class: CouchbaseOrm::IndexSchema::DSL
- Inherits:
-
Object
- Object
- CouchbaseOrm::IndexSchema::DSL
- Defined in:
- lib/couchbase-orm/index_schema.rb
Instance Method Summary collapse
- #add_index(name, keys:, where: nil, num_replica: nil, defer_build: false) ⇒ Object
-
#initialize(indexes) ⇒ DSL
constructor
A new instance of DSL.
- #remove_index(name) ⇒ Object
- #rename_index(old_name, new_name) ⇒ Object
Constructor Details
#initialize(indexes) ⇒ DSL
Returns a new instance of DSL.
9 10 11 |
# File 'lib/couchbase-orm/index_schema.rb', line 9 def initialize(indexes) @indexes = indexes end |
Instance Method Details
#add_index(name, keys:, where: nil, num_replica: nil, defer_build: false) ⇒ Object
13 14 15 16 17 18 19 20 21 22 |
# File 'lib/couchbase-orm/index_schema.rb', line 13 def add_index(name, keys:, where: nil, num_replica: nil, defer_build: false) index_definition = CouchbaseOrm::IndexDefinition.new( name: name, keys: keys, where: where, defer_build: defer_build, num_replica: num_replica ) @indexes[index_definition.name] = index_definition end |
#remove_index(name) ⇒ Object
24 25 26 |
# File 'lib/couchbase-orm/index_schema.rb', line 24 def remove_index(name) @indexes.delete(CouchbaseOrm::IndexDefinition.normalize_name(name)) end |
#rename_index(old_name, new_name) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/couchbase-orm/index_schema.rb', line 28 def rename_index(old_name, new_name) index_definition = @indexes.delete(CouchbaseOrm::IndexDefinition.normalize_name(old_name)) return unless index_definition renamed_index = CouchbaseOrm::IndexDefinition.new( name: new_name, keys: index_definition.keys, where: index_definition.where, defer_build: index_definition.defer_build, num_replica: index_definition.num_replica ) @indexes[renamed_index.name] = renamed_index end |