Class: MigrationDefs::AddIndexFunc

Inherits:
AbstractMigrationClass show all
Defined in:
lib/migration_defs.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name) ⇒ AddIndexFunc

Returns a new instance of AddIndexFunc.



508
509
510
511
512
# File 'lib/migration_defs.rb', line 508

def initialize(name)
  @name = name
  @columns = '[]'
  @option = IndexOption.new
end

Instance Attribute Details

#columnsObject

Returns the value of attribute columns.



506
507
508
# File 'lib/migration_defs.rb', line 506

def columns
  @columns
end

#nameObject

Returns the value of attribute name.



506
507
508
# File 'lib/migration_defs.rb', line 506

def name
  @name
end

#optionObject

Returns the value of attribute option.



506
507
508
# File 'lib/migration_defs.rb', line 506

def option
  @option
end

Instance Method Details

#get_strObject



525
526
527
528
529
530
531
532
# File 'lib/migration_defs.rb', line 525

def get_str
  result = 'add_index '
  result += " :#{@name}" if !@name.nil? && !@name.blank?
  result += ", #{@columns}" if !@columns.nil? && !@columns.blank?
  result += " #{@option.get_str}"
  result += "\n"
  result
end

#parse_from_params(parse_params) ⇒ Object



518
519
520
521
522
523
# File 'lib/migration_defs.rb', line 518

def parse_from_params(parse_params)
  @columns = set_columns(parse_params[:columns])
  @option.set_option 'name', parse_params[:index_name]
  @option.set_option 'unique', parse_params[:unique]
  @option.set_option 'length', parse_params[:length]
end

#set_columns(val) ⇒ Object



514
515
516
# File 'lib/migration_defs.rb', line 514

def set_columns(val)
  @columns = val
end