dmp-dynamo_adapter 0.2.9 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/dmp/dynamo_adapter.rb +9 -5
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1df64725fca2ba042c200d8615e9d304503836f48bd04451cb08a034773b4ad9
|
4
|
+
data.tar.gz: ce3dc12d41f2b48f7106d390cb0ef7d7b61f5ea3d77337adba094e8604f59575
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b0393c336cc05254ae08dc757f449fda523f6caaaff7a65241b466d468af7ef9e595a95ea56d2b6a3934dc406bf9414b0da2bc2c06ea77c8e7d89c61abb87331
|
7
|
+
data.tar.gz: d2ac537a78af198168ff50006a8d74ed880f0103f2cce91045c48578dbbd7e44815205f37d7167c206c8cd468ee92bad35caca6d4af96700aaf2b66950e07ff0
|
data/lib/dmp/dynamo_adapter.rb
CHANGED
@@ -70,7 +70,7 @@ p "FINDING BY PK: PK - #{p_key.inspect} / SK - #{s_key.inspect}"
|
|
70
70
|
return_consumed_capacity: @debug_mode ? 'TOTAL' : 'NONE'
|
71
71
|
}
|
72
72
|
)
|
73
|
-
return { status: 404, error: MSG_NOT_FOUND } if response
|
73
|
+
return { status: 404, error: MSG_NOT_FOUND } if response.fetch(:item, []).empty?
|
74
74
|
|
75
75
|
{ status: 200, items: [response[:item]] }
|
76
76
|
rescue Aws::Errors::ServiceError => e
|
@@ -129,11 +129,14 @@ p "PUTTING ITEM:"
|
|
129
129
|
return_consumed_capacity: @debug_mode ? 'TOTAL' : 'NONE'
|
130
130
|
}
|
131
131
|
)
|
132
|
+
# Fetch the newly created record
|
133
|
+
response = find_by_pk(p_key: p_key, s_key: Dmp::MetadataHandler::LATEST_VERSION)
|
134
|
+
return { status: 500, error: MSG_DEFAULT } unless response[:status] == 200
|
132
135
|
|
133
136
|
p 'CREATED!?'
|
134
|
-
pp response
|
137
|
+
pp response[:items]
|
135
138
|
|
136
|
-
{ status: 201, items: [
|
139
|
+
{ status: 201, items: response[:items] }
|
137
140
|
rescue Aws::DynamoDB::Errors::DuplicateItemException
|
138
141
|
{ status: 405, error: MSG_EXISTS }
|
139
142
|
rescue Aws::Errors::ServiceError => e
|
@@ -176,7 +179,7 @@ p ''
|
|
176
179
|
|
177
180
|
json = splice_json(original_version: version_result[:items].first&.item, new_version: json)
|
178
181
|
|
179
|
-
p ''
|
182
|
+
# p ''
|
180
183
|
p "AFTER:"
|
181
184
|
pp json
|
182
185
|
|
@@ -253,7 +256,8 @@ pp json
|
|
253
256
|
# Attempt to find the DMP item by its 'is_metadata_for' :dmproadmap_related_identifier
|
254
257
|
# rubocop:disable Metrics/MethodLength, Metrics/AbcSize
|
255
258
|
def find_by_dmphub_provenance_identifier(json:)
|
256
|
-
return { status: 400, error: MSG_DEFAULT } if json.nil? ||
|
259
|
+
return { status: 400, error: MSG_DEFAULT } if json.nil? ||
|
260
|
+
json.fetch('dmp_id', {})['identifier'].nil?
|
257
261
|
|
258
262
|
p "FINDING BY PROVENANCE ID: #{json['dmp_id']['identifier']}"
|
259
263
|
|