culpa 1.2.1 → 1.2.2

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.
Files changed (4) hide show
  1. checksums.yaml +8 -8
  2. data/lib/culpa/envelope.rb +12 -7
  3. data/lib/culpa.rb +1 -1
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NWM3ZWY0OWVhZjE4MDIxZGQ2ZTdkMDg0YmRiNTE4NWQ3OTVhNWJiNw==
4
+ MjFmMTY1NWFhMzZlNWUwYTkyY2RiMTlkNzlhYzQ5ZjE4ZmE1Y2VlMw==
5
5
  data.tar.gz: !binary |-
6
- YjljZTExNGEyZWFmZTc2YjQ1NDBkMWEwZDM4MWNjNzE1OTEyYjAzYg==
6
+ ZTljODA2YWVlMTM5ZDc5YTY0NDM0NTQyNTYzMjFkNzc4MDQ2MTg3NA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- ODQxOTBhY2FmOGFiNDgzM2U1NzA5ODJlMDg1ZjQwZWNiZDkzMGQ0ZmE1NDIy
10
- Nzk2NmEzMzcwMTA0OGE2NDgzNWZiNzU2NzZlYzU2YTBlYzA5ZGExNzcyMzhl
11
- YjY1NDllMzRkZmRmNWIwYjdjOGU5ZGRkOGM3ZjI4ZDAzMDJkZDA=
9
+ N2EzMmMwYWI2M2E0NTFhNTcyOTFiMjRkZjllYzY5OTg0ZjJiMzRjNDdjZmE0
10
+ YjQ5MjViOGZmY2RhNGJhNjhiNzhmNWViNDRmODNiM2JhZDE3ZTYzM2JiZmE0
11
+ MjgwNmJkMWJiZGRhMWZiMTE5M2I1MmViY2JmMjVkZWQ0MTE3MzI=
12
12
  data.tar.gz: !binary |-
13
- ODA0NGRlYTY0NWQ4ODAyZjAxOTgxY2JkYjE1YjY4ZDZiODNmNWM5OGI4NGE1
14
- ZWQ0NTQ2NWIxY2I0NDhhMzYzZGUyMWRhYTY1ZjcyNDA5MTZhMmNjZGIxMDg0
15
- Yzg0MmI0Mjc0NGNjYzk5NDI5ZjhhYzIxZGI3OTYxMmQ5ODM2NGY=
13
+ YjJiOTE3ZWU4M2JjNDYzZDdhZDZjYjM4ZDZkNjM0YTQ0Y2VlY2Q1MTgzYmE4
14
+ MjdjZjI1ZWEzYmUzMjI4ZGQ2OTNkNzVjZmE4M2I1ZTQwOThmNzQzNDJjZGVm
15
+ ZTE0ZDY0MGE0NTMyNmEwYWE1N2VkNGVmZWExYWMwODA1MWEwNTc=
@@ -11,6 +11,7 @@ module Culpa
11
11
  end
12
12
 
13
13
  def initialize(attributes = {})
14
+ @semaphore = Mutex.new
14
15
  attributes.each do |name, value|
15
16
  instance_variable_set "@#{name}", value
16
17
  end
@@ -18,19 +19,23 @@ module Culpa
18
19
 
19
20
  def method_missing(sym, *args)
20
21
  sym = sym.to_s
21
- if sym.end_with? '='
22
- instance_variable_set "@#{sym.gsub('=','')}", args[0]
23
- else
24
- instance_variable_get "@#{sym.gsub('=','')}"
25
- end
22
+ @semaphore.synchronize {
23
+ if sym.end_with? '='
24
+ instance_variable_set "@#{sym.gsub('=','')}", args[0]
25
+ else
26
+ return instance_variable_get "@#{sym.gsub('=','')}"
27
+ end
28
+ }
26
29
  end
27
30
 
28
31
  def ==(other_envelope)
29
32
  return false unless other_envelope.is_a? Envelope
30
33
  return false unless other_envelope.instance_variables.count == instance_variables.count
31
- instance_variables.each do |iv|
34
+ instance_variables.select{ |iv|
35
+ iv != :@semaphore
36
+ }.each { |iv|
32
37
  return false unless instance_variable_get(iv) == other_envelope.instance_variable_get(iv)
33
- end
38
+ }
34
39
  return true
35
40
  end
36
41
 
data/lib/culpa.rb CHANGED
@@ -8,7 +8,7 @@ require_relative 'culpa/path_parser'
8
8
  require_relative 'culpa/routes_builder'
9
9
  require_relative 'culpa/brickchain_helpers'
10
10
 
11
- CULPA_VERSION='1.2.1'
11
+ CULPA_VERSION='1.2.2'
12
12
 
13
13
  ACTIONS_PATH ||= './actions/*.rb'
14
14
  MODELS_PATH ||= './models/*.rb'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: culpa
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jérémy SEBAN