uc3-dmp-id 0.0.120 → 0.0.121

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8ae962d11255c69b46fcf602f63e2bd4af87dc3ac8890328c195be2aef6ed790
4
- data.tar.gz: 603c459afac9269cc1b8febc875ded85d5d7cc720137bc2a4e74af80311e5bf7
3
+ metadata.gz: 6a7b18e8a03e8b1fec669c319659352f4cee0fc5d726c92a45c178ea37116375
4
+ data.tar.gz: 4239900d4abfe0c89126ba713d135b55ede35b05db53671390fabab773372933
5
5
  SHA512:
6
- metadata.gz: 31896127df6ff802a4fad901596d746264d95273d0e6d37a2b66f668775101f97fc17a2e242752735c67fa398e0a9b6702311de39bd3d42505f85190761c84d8
7
- data.tar.gz: 4cc9c80985441ce41c37115b666ee55bcb2b6683e88c38ef963a24814f73cfb70ea34c91701d8ad4a9455cee3648070c11e87f4e80274a71642c860265026eba
6
+ metadata.gz: 8e2d9142e4adcc5604ee23d35d16f3f06c48f872476d049223293c6779c89ec5cdb5b5db80a0ad27ded0c46110d105ed41351b55b4dcc655b9eec698b56ddb1a
7
+ data.tar.gz: 93393c6f351ceef8afdf2f59213f58ac8a908bde9511d67e263e780b1bc2d0120ed0d9de02a6a93e9151e5289176162473929afc7de65952aa1cab354ee781a6
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'time'
4
+
3
5
  module Uc3DmpId
4
6
  class AsserterError < StandardError; end
5
7
 
@@ -105,7 +107,7 @@ puts "MODIFIED_VERSION ASSERTIONS: #{modified_version['dmphub_assertions']}"
105
107
  JSON.parse({
106
108
  id: SecureRandom.hex(4).upcase,
107
109
  provenance: updater.gsub('PROVENANCE#', ''),
108
- timestamp: Time.now.iso8601,
110
+ timestamp: Time.now.utc.iso8601,
109
111
  status: 'new',
110
112
  note: note,
111
113
  assertions: mods
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'securerandom'
4
+ require 'time'
4
5
 
5
6
  module Uc3DmpId
6
7
  class CreatorError < StandardError; end
@@ -40,6 +41,11 @@ module Uc3DmpId
40
41
  annotated = Helper.annotate_dmp_json(provenance: provenance, p_key: p_key, json: json['dmp'])
41
42
  logger.info(message: "Creating DMP ID: #{p_key}") if logger.respond_to?(:debug)
42
43
 
44
+ # Set the :created and :modified timestamps
45
+ now = Time.now.utc.iso8601
46
+ annotated['created'] = now
47
+ annotated['modified'] = now
48
+
43
49
  # Create the item
44
50
  resp = client.put_item(json: annotated, logger: logger)
45
51
  raise CreatorError, Uc3DmpId::MSG_DMP_NO_DMP_ID if resp.nil?
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'time'
4
+
3
5
  module Uc3DmpId
4
6
  class DeleterError < StandardError; end
5
7
 
@@ -27,10 +29,14 @@ module Uc3DmpId
27
29
 
28
30
  # Annotate the DMP ID
29
31
  dmp['dmp']['SK'] = Helper::DMP_TOMBSTONE_VERSION
30
- dmp['dmp']['dmphub_tombstoned_at'] = Time.now.iso8601
32
+ dmp['dmp']['dmphub_tombstoned_at'] = Time.now.utc.iso8601
31
33
  dmp['dmp']['title'] = "OBSOLETE: #{dmp['title']}"
32
34
  logger.info(message: "Tomstoning DMP ID: #{p_key}") if logger.respond_to?(:debug)
33
35
 
36
+ # Set the :modified timestamps
37
+ now = Time.now.utc.iso8601
38
+ dmp['modified'] = now
39
+
34
40
  # Create the Tombstone version
35
41
  resp = client.put_item(json: dmp, logger: logger)
36
42
  raise DeleterError, MSG_DMP_NO_TOMBSTONE if resp.nil?
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'securerandom'
4
+ require 'time'
4
5
 
5
6
  module Uc3DmpId
6
7
  class UpdaterError < StandardError; end
@@ -42,6 +43,10 @@ module Uc3DmpId
42
43
  version = _process_modifications(owner: owner, updater: updater, version: version, mods: mods, note: note,
43
44
  logger: logger)
44
45
 
46
+ # Set the :modified timestamps
47
+ now = Time.now.utc.iso8601
48
+ version['modified'] = now
49
+
45
50
  # Save the changes
46
51
  resp = client.put_item(json: version, logger: logger)
47
52
  raise UpdaterError, MSG_DMP_UNABLE_TO_VERSION if resp.nil?
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Uc3DmpId
4
- VERSION = '0.0.120'
4
+ VERSION = '0.0.121'
5
5
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'uc3-dmp-dynamo'
4
+ require 'time'
4
5
 
5
6
  module Uc3DmpId
6
7
  class VersionerError < StandardError; end
@@ -31,7 +32,7 @@ module Uc3DmpId
31
32
  # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
32
33
  def generate_version(client:, latest_version:, owner:, updater:, logger: nil)
33
34
  # Only create a version if the Updater is not the Owner OR the changes have happened on a different day
34
- mod_time = Time.parse(latest_version.fetch('modified', Time.now.iso8601))
35
+ mod_time = Time.parse(latest_version.fetch('modified', Time.now.utc.iso8601))
35
36
  now = Time.now
36
37
  if mod_time.nil? || !(now - mod_time).is_a?(Float)
37
38
  logger.error(message: "#{SOURCE} unable to determine mod time: #{mod_time}") if logger.respond_to?(:debug)
@@ -50,7 +51,7 @@ module Uc3DmpId
50
51
  # Make a copy of the latest_version and then update it's SK to the :modified to mark it in a point of time
51
52
  # We essentially make a snapshot of the record before making changes
52
53
  prior = Helper.deep_copy_dmp(obj: latest_version)
53
- prior['SK'] = "#{Helper::SK_DMP_PREFIX}#{latest_version['modified'] || Time.now.iso8601}"
54
+ prior['SK'] = "#{Helper::SK_DMP_PREFIX}#{latest_version['modified'] || Time.now.utc.iso8601}"
54
55
  # Create the prior version record ()
55
56
  client = client.nil? ? Uc3DmpDynamo::Client.new : client
56
57
  resp = client.put_item(json: prior, logger: logger)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uc3-dmp-id
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.120
4
+ version: 0.0.121
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Riley