Class: DataShift::Loaders::Configuration

Inherits:
Configuration show all
Defined in:
lib/datashift/loaders/configuration.rb

Class Attribute Summary collapse

Instance Attribute Summary collapse

Attributes inherited from Configuration

#dummy_run, #exclude, #exclude_associations, #expand_associations, #force_inclusion_of_columns, #image_path_prefix, #include_all_columns, #mandatory, #remove_columns, #remove_rails, #strict_inbound_mapping, #update_and_validate, #verbose, #with

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Configuration

from_hash, #op_type_in_scope?, #op_types_in_scope, #prep_remove_list, rails_columns, #with_all?

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



39
40
41
42
43
44
# File 'lib/datashift/loaders/configuration.rb', line 39

def initialize
  @allow_empty_rows = false
  @abort_on_failure = false
  @destroy_on_failure = true
  @header_row = 0
end

Class Attribute Details

.configuration=(value) ⇒ Object (writeonly)

Sets the attribute configuration

Parameters:

  • value

    the value to set the attribute configuration to.



65
66
67
# File 'lib/datashift/loaders/configuration.rb', line 65

def configuration=(value)
  @configuration = value
end

Instance Attribute Details

#abort_on_failureObject

Stop processing and abort if any row fails to import Default is false - row reported as failure but loading continues

Parameters:

  • (Boolean)


32
33
34
# File 'lib/datashift/loaders/configuration.rb', line 32

def abort_on_failure
  @abort_on_failure
end

#allow_empty_rowsObject

Default is to stop processing once we hit a completely empty row. Over ride. WARNING maybe slow, as will process all rows as defined by Excel

Parameters:

  • (Boolean)


20
21
22
# File 'lib/datashift/loaders/configuration.rb', line 20

def allow_empty_rows
  @allow_empty_rows
end

#destroy_on_failureObject

Destroy failed objects - if object.save fails at any point destroy the current object - all or nothing Default is true - database is cleaned up

Parameters:

  • (Boolean)


26
27
28
# File 'lib/datashift/loaders/configuration.rb', line 26

def destroy_on_failure
  @destroy_on_failure
end

#header_rowObject

Custom Readers



48
49
50
51
# File 'lib/datashift/loaders/configuration.rb', line 48

def header_row
  raise MissingHeadersError, "Minimum row for Headers is 0 - passed #{@header_row}" if @header_row.to_i < 0
  @header_row
end

Class Method Details

.callDataShift::Loaders::Configuration

Returns DataShift’s current configuration.

Returns:



54
55
56
# File 'lib/datashift/loaders/configuration.rb', line 54

def self.call
  @configuration ||= Loaders::Configuration.new
end

.configure {|call| ... } ⇒ Object

Modify DataShift’s current Import configuration “‘ DataShift::Loaders::Configuration.configure do |config|

config.verbose = false

end “‘

Yields:



74
75
76
# File 'lib/datashift/loaders/configuration.rb', line 74

def self.configure
  yield call
end

.resetObject



58
59
60
# File 'lib/datashift/loaders/configuration.rb', line 58

def self.reset
  @configuration = Loaders::Configuration.new
end