multiwoven-integrations 0.7.4 → 0.7.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 37b545ee313b4f088f5978fc8332e12506b2c964919a4a1a6599c7549c968ba0
4
- data.tar.gz: b8a089e677f9726a7ef2b432a6b6334a5e40e96b3190c216a133b6eef5cb6a09
3
+ metadata.gz: 28f2cee4355f4a7c3c902e63c472d66e0c9672e56eb8a7d3d59d6a1f30eb081b
4
+ data.tar.gz: 14826912ddd6788207ea9bd4973669770f4818566d9e647ad820ef9798366f16
5
5
  SHA512:
6
- metadata.gz: 8e1563c35fdf1db6451ce8c53231a2b7aba4a1eaf050d264817e3c4d63be2c46c30691b7b08007c74af76a4d91b01bcd256b370f4c2fefe6e23e617adf8e1f85
7
- data.tar.gz: 9fbe9e662993a134224d1ee03aff8ec6124ce7f59cc545b4beb3efba98407bfa42a19a846b4ebdb8d0c9a80ef4e9a58e82a4cc20219cc959a19ff3f16a98f926
6
+ metadata.gz: dd632aad01828e0b8b704682b4b1d0fd991dae8365234ed8dfd9f977c0189e768b924f084dc303370761fc0b4fc37ab63c29bc658cbd2de2af84125d8bd6abae
7
+ data.tar.gz: 070df0ba004365a1e1823085f093aab9814bf7034626da96d26659e3ae347766c07784ea711888e307397e0a7eb1bfc0bd4cb6ba9dcefa955232b77a1ab7749e
@@ -54,31 +54,35 @@ module Multiwoven
54
54
  end
55
55
 
56
56
  def process_records(records, stream)
57
+ log_message_array = []
57
58
  write_success = 0
58
59
  write_failure = 0
59
60
  records.each do |record_object|
60
61
  record = extract_data(record_object, stream.json_schema[:properties])
61
- response = process_stream(record, stream)
62
+ request, response = *process_stream(record, stream)
62
63
  if response.success?
63
64
  write_success += 1
64
65
  else
65
66
  write_failure += 1
66
67
  end
68
+ log_message_array << log_request_response("info", request, response.body)
67
69
  rescue StandardError => e
68
70
  handle_exception("ITERABLE:WRITE:EXCEPTION", "error", e)
69
71
  write_failure += 1
72
+ log_message_array << log_request_response("error", request, e.message)
70
73
  end
71
- tracking_message(write_success, write_failure)
74
+ tracking_message(write_success, write_failure, log_message_array)
72
75
  end
73
76
 
74
77
  def process_stream(record, stream)
75
78
  klass = ::Iterable.const_get(stream.name).new(*initialize_params(stream, record))
76
79
  item_attrs = initialize_attribute(stream, record)
77
- if stream.name == "CatalogItems"
78
- klass.send(@action, item_attrs)
79
- else
80
- klass.send(@action)
81
- end
80
+ response = if stream.name == "CatalogItems"
81
+ klass.send("create", item_attrs)
82
+ else
83
+ klass.send("create")
84
+ end
85
+ [item_attrs, response]
82
86
  end
83
87
 
84
88
  def initialize_params(stream, record)
@@ -97,12 +101,6 @@ module Multiwoven
97
101
  end
98
102
  end
99
103
 
100
- def tracking_message(success, failure)
101
- Multiwoven::Integrations::Protocol::TrackingMessage.new(
102
- success: success, failed: failure
103
- ).to_multiwoven_message
104
- end
105
-
106
104
  def load_catalog
107
105
  read_json(CATALOG_SPEC_PATH)
108
106
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Multiwoven
4
4
  module Integrations
5
- VERSION = "0.7.4"
5
+ VERSION = "0.7.5"
6
6
 
7
7
  ENABLED_SOURCES = %w[
8
8
  Snowflake
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multiwoven-integrations
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.4
4
+ version: 0.7.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Subin T P