Class: StagingTable::TransferResult

Inherits:
Object
  • Object
show all
Defined in:
lib/staging_table/transfer_result.rb

Overview

Holds statistics about a transfer operation

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(inserted: 0, updated: 0, skipped: 0) ⇒ TransferResult

Returns a new instance of TransferResult.



8
9
10
11
12
13
# File 'lib/staging_table/transfer_result.rb', line 8

def initialize(inserted: 0, updated: 0, skipped: 0)
  @inserted = inserted
  @updated = updated
  @skipped = skipped
  @total = inserted + updated + skipped
end

Instance Attribute Details

#insertedObject (readonly)

Returns the value of attribute inserted.



6
7
8
# File 'lib/staging_table/transfer_result.rb', line 6

def inserted
  @inserted
end

#skippedObject (readonly)

Returns the value of attribute skipped.



6
7
8
# File 'lib/staging_table/transfer_result.rb', line 6

def skipped
  @skipped
end

#totalObject (readonly)

Returns the value of attribute total.



6
7
8
# File 'lib/staging_table/transfer_result.rb', line 6

def total
  @total
end

#updatedObject (readonly)

Returns the value of attribute updated.



6
7
8
# File 'lib/staging_table/transfer_result.rb', line 6

def updated
  @updated
end

Instance Method Details

#empty?Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/staging_table/transfer_result.rb', line 28

def empty?
  total.zero?
end

#inspectObject



32
33
34
# File 'lib/staging_table/transfer_result.rb', line 32

def inspect
  "#<StagingTable::TransferResult inserted=#{inserted} updated=#{updated} skipped=#{skipped} total=#{total}>"
end

#success?Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/staging_table/transfer_result.rb', line 24

def success?
  inserted > 0 || updated > 0
end

#to_hObject



15
16
17
18
19
20
21
22
# File 'lib/staging_table/transfer_result.rb', line 15

def to_h
  {
    inserted: inserted,
    updated: updated,
    skipped: skipped,
    total: total
  }
end