project_store 0.6.8 → 0.6.9

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
  SHA1:
3
- metadata.gz: 68bf885a3948fba46055ea4b967e0ac9d313cc67
4
- data.tar.gz: bba7870f3eda812689c6fa811549c8511285d5e1
3
+ metadata.gz: c1df2bd03938b69e30dbefa75c4b66b4be402b1b
4
+ data.tar.gz: 1fa4346552c9729c76a8b4371d32a26e93eb2b63
5
5
  SHA512:
6
- metadata.gz: 952a0808722a918c1b8c9a01c604d5818e4a66c2ecff42fc631311dd2b174f3be8f1e0aef34b5a36c4ab7ef864dee6021788573ae3909452a100a9cff4ab4339
7
- data.tar.gz: ddf6e3cb95f019dee1a593c44a992be6ec194300fcf2f0c108f08821dbbacbf5c7debfade8690c1fc7bcd6e0982da49f8768ed6e43afe0f39de0b384c9c8bef1
6
+ metadata.gz: b347a01141464333148c7e745c0449a82e0776efcdaa6d43c8b58944c75a7dffc98ab64c4448b999844dea820ac00bffd83fd4d25f57fdae706ac3b1ad44ebd6
7
+ data.tar.gz: 65c1bf127f43b87a9fa16398d4ab2b139f2946fba2bee9822577c8a82d972802e7baba9d85aa63ba7611d5cf7c91ddffab006bb26b0896293d0339aaeff52ca6
@@ -8,7 +8,7 @@ module ProjectStore
8
8
  include ProjectStore::Editing
9
9
 
10
10
  attr_accessor :continue_on_error
11
- attr_reader :path, :project_entities, :entity_types, :stores, :logger
11
+ attr_reader :path, :project_entities, :entity_types, :files, :logger
12
12
 
13
13
  def initialize(path)
14
14
  raise PSE, "Invalid store path '#{path}'!" unless valid_path? path
@@ -16,7 +16,7 @@ module ProjectStore
16
16
  @path = File.expand_path path
17
17
  self.continue_on_error = false
18
18
  @project_entities = {}
19
- @stores = {}
19
+ @files = {}
20
20
  @entity_types = {}
21
21
  self.decorators = {}
22
22
  end
@@ -26,7 +26,7 @@ module ProjectStore
26
26
  logger.debug "Found store file '#{file}'"
27
27
  begin
28
28
  store = YAML::Store.new(file)
29
- stores[store] ||= []
29
+ files[store] ||= []
30
30
  store.transaction(true) do
31
31
  store.roots.each do |entity_name|
32
32
  begin
@@ -34,12 +34,14 @@ module ProjectStore
34
34
  entity = store[entity_name]
35
35
  decorate_and_index_entity entity_name, entity, store, &block
36
36
  rescue => e
37
+ msg = "Invalid entity '#{entity_name}' in file '#{file}' (#{e.message})"
38
+ dbg_msg = "#{e.message}\nBacktrace:\n#{e.backtrace.join("\n\t")}"
37
39
  if continue_on_error
38
- logger.warn "Invalid entity '#{entity_name}' in file '#{file}'"
39
- logger.debug "#{e.message}\nBacktrace:\n#{e.backtrace.join("\n\t")}"
40
+ logger.warn msg
41
+ logger.debug dbg_msg
40
42
  else
41
- logger.debug "#{e.message}\nBacktrace:\n#{e.backtrace.join("\n\t")}"
42
- raise PSE, "Invalid entity '#{entity_name}' in file '#{file}' (#{e.message})"
43
+ logger.debug dbg_msg
44
+ raise PSE, msg
43
45
  end
44
46
  end
45
47
  end
@@ -55,6 +57,10 @@ module ProjectStore
55
57
 
56
58
  private
57
59
 
60
+ def reset
61
+ [project_entities, files, entity_types].each { |list| list.clear}
62
+ end
63
+
58
64
  def valid_path?(path)
59
65
  Dir.exist? path and File.readable? path and File.writable? path
60
66
  end
@@ -70,7 +76,7 @@ module ProjectStore
70
76
  entity.backing_store = store
71
77
  raise PSE, "Entity '#{entity.name}' already defined in file '#{project_entities[entity.name].backing_store.path}'" if project_entities[entity.name]
72
78
  # Add to the store index store -> entity list
73
- stores[store] << entity
79
+ files[store] << entity
74
80
  # Add to main hash entity name -> entity
75
81
  project_entities[entity.name] = entity
76
82
  # Add to type hash entity type -> entity list
@@ -79,6 +85,7 @@ module ProjectStore
79
85
  end
80
86
 
81
87
 
88
+
82
89
  end
83
90
 
84
91
 
@@ -1,3 +1,3 @@
1
1
  module ProjectStore
2
- VERSION = '0.6.8'
2
+ VERSION = '0.6.9'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: project_store
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.8
4
+ version: 0.6.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Laurent B.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-07-29 00:00:00.000000000 Z
11
+ date: 2016-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler