Class: CanadianTire::StoreAddressChangesImporter::Result
- Inherits:
-
Data
- Object
- Data
- CanadianTire::StoreAddressChangesImporter::Result
- Defined in:
- app/services/canadian_tire/store_address_changes_importer.rb
Overview
Outcome of a single import run.
Instance Attribute Summary collapse
-
#added ⇒ Object
readonly
Returns the value of attribute added.
-
#added [Integer] count of +ADDITION+ rows inserted.([Integer]) ⇒ Object
readonly
Outcome of a single import run.
-
#deleted ⇒ Object
readonly
Returns the value of attribute deleted.
-
#deleted [Integer] count of +DELETION+ rows destroyed.([Integer]) ⇒ Object
readonly
Outcome of a single import run.
-
#errors ⇒ Object
readonly
Returns the value of attribute errors.
-
#errors [Array<Hash>] rows that failed validation —([Array<Hash>]) ⇒ Object
readonly
unknown +CHANGE TYPE+ or exception during apply.
-
#skipped ⇒ Object
readonly
Returns the value of attribute skipped.
-
#skipped [Array<Hash>] rows that were intentionally not([Array<Hash>]) ⇒ Object
readonly
applied (idempotency hits — missing target, duplicate add, blank type), each as +{ row:, store:, reason: }+.
-
#updated ⇒ Object
readonly
Returns the value of attribute updated.
-
#updated [Integer] count of update-variant rows applied.([Integer]) ⇒ Object
readonly
Outcome of a single import run.
Instance Method Summary collapse
-
#initialize(added: 0, deleted: 0, updated: 0, skipped: [], errors: []) ⇒ Result
constructor
A new instance of Result.
- #success? ⇒ Boolean
- #summary ⇒ Object
Constructor Details
#initialize(added: 0, deleted: 0, updated: 0, skipped: [], errors: []) ⇒ Result
Returns a new instance of Result.
75 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 75 def initialize(added: 0, deleted: 0, updated: 0, skipped: [], errors: []) = super |
Instance Attribute Details
#added ⇒ Object (readonly)
Returns the value of attribute added
74 75 76 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 def added @added end |
#added [Integer] count of +ADDITION+ rows inserted.([Integer]) ⇒ Object (readonly)
Outcome of a single import run.
74 75 76 77 78 79 80 81 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 Result = Data.define(:added, :deleted, :updated, :skipped, :errors) do def initialize(added: 0, deleted: 0, updated: 0, skipped: [], errors: []) = super def success? = errors.empty? def summary "added=#{added} deleted=#{deleted} updated=#{updated} " \ "skipped=#{skipped.length} errors=#{errors.length}" end end |
#deleted ⇒ Object (readonly)
Returns the value of attribute deleted
74 75 76 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 def deleted @deleted end |
#deleted [Integer] count of +DELETION+ rows destroyed.([Integer]) ⇒ Object (readonly)
Outcome of a single import run.
74 75 76 77 78 79 80 81 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 Result = Data.define(:added, :deleted, :updated, :skipped, :errors) do def initialize(added: 0, deleted: 0, updated: 0, skipped: [], errors: []) = super def success? = errors.empty? def summary "added=#{added} deleted=#{deleted} updated=#{updated} " \ "skipped=#{skipped.length} errors=#{errors.length}" end end |
#errors ⇒ Object (readonly)
Returns the value of attribute errors
74 75 76 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 def errors @errors end |
#errors [Array<Hash>] rows that failed validation —([Array<Hash>]) ⇒ Object (readonly)
unknown +CHANGE TYPE+ or exception during apply.
74 75 76 77 78 79 80 81 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 Result = Data.define(:added, :deleted, :updated, :skipped, :errors) do def initialize(added: 0, deleted: 0, updated: 0, skipped: [], errors: []) = super def success? = errors.empty? def summary "added=#{added} deleted=#{deleted} updated=#{updated} " \ "skipped=#{skipped.length} errors=#{errors.length}" end end |
#skipped ⇒ Object (readonly)
Returns the value of attribute skipped
74 75 76 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 def skipped @skipped end |
#skipped [Array<Hash>] rows that were intentionally not([Array<Hash>]) ⇒ Object (readonly)
applied (idempotency hits — missing target, duplicate add, blank type),
each as +{ row:, store:, reason: }+.
74 75 76 77 78 79 80 81 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 Result = Data.define(:added, :deleted, :updated, :skipped, :errors) do def initialize(added: 0, deleted: 0, updated: 0, skipped: [], errors: []) = super def success? = errors.empty? def summary "added=#{added} deleted=#{deleted} updated=#{updated} " \ "skipped=#{skipped.length} errors=#{errors.length}" end end |
#updated ⇒ Object (readonly)
Returns the value of attribute updated
74 75 76 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 def updated @updated end |
#updated [Integer] count of update-variant rows applied.([Integer]) ⇒ Object (readonly)
Outcome of a single import run.
74 75 76 77 78 79 80 81 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 74 Result = Data.define(:added, :deleted, :updated, :skipped, :errors) do def initialize(added: 0, deleted: 0, updated: 0, skipped: [], errors: []) = super def success? = errors.empty? def summary "added=#{added} deleted=#{deleted} updated=#{updated} " \ "skipped=#{skipped.length} errors=#{errors.length}" end end |
Instance Method Details
#success? ⇒ Boolean
76 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 76 def success? = errors.empty? |
#summary ⇒ Object
77 78 79 80 |
# File 'app/services/canadian_tire/store_address_changes_importer.rb', line 77 def summary "added=#{added} deleted=#{deleted} updated=#{updated} " \ "skipped=#{skipped.length} errors=#{errors.length}" end |