euston-projections 1.0.8 → 1.0.9

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.
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'euston-projections'
3
- s.version = '1.0.8'
3
+ s.version = '1.0.9'
4
4
  s.platform = RUBY_PLATFORM.to_s == 'java' ? 'java' : Gem::Platform::RUBY
5
5
  s.authors = ['Lee Henson', 'Guy Boertje']
6
6
  s.email = ['lee.m.henson@gmail.com', 'guyboertje@gmail.com']
@@ -16,20 +16,15 @@ module Euston
16
16
  end
17
17
  end
18
18
 
19
- def if_unhandled_or_new document_type, id, headers
19
+ def if_unhandled_or_new document_type, id, headers, new_document_attributes = {}
20
20
  if id.respond_to? :call
21
21
  query = id
22
- attributes = if document_type.fields['_id'].class.to_s =~ /String/
23
- { _id: Uuid.generate }
24
- else
25
- {}
26
- end
27
22
  else
28
23
  query = ->() { document_type.find(id) }
29
- attributes = { _id: id }
24
+ new_document_attributes = { _id: id }
30
25
  end
31
26
 
32
- document = query.call || document_type.new(attributes)
27
+ document = query.call || document_type.new(new_document_attributes)
33
28
 
34
29
  if_unhandled document, headers do
35
30
  yield document
@@ -1,5 +1,5 @@
1
1
  module Euston
2
2
  module Projections
3
- VERSION = "1.0.8"
3
+ VERSION = "1.0.9"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: euston-projections
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.8
4
+ version: 1.0.9
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-03-03 00:00:00.000000000 Z
13
+ date: 2012-03-05 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
17
- requirement: &4245040 !ruby/object:Gem::Requirement
17
+ requirement: &70106839431060 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 3.0.10
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *4245040
25
+ version_requirements: *70106839431060
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: euston-eventstore
28
- requirement: &3831940 !ruby/object:Gem::Requirement
28
+ requirement: &70106839430160 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ~>
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: 1.2.3
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *3831940
36
+ version_requirements: *70106839430160
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: mongoid
39
- requirement: &3830400 !ruby/object:Gem::Requirement
39
+ requirement: &70106839429380 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: 2.1.0
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *3830400
47
+ version_requirements: *70106839429380
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: awesome_print
50
- requirement: &3828160 !ruby/object:Gem::Requirement
50
+ requirement: &70106839428620 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ~>
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: 0.4.0
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *3828160
58
+ version_requirements: *70106839428620
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: fuubar
61
- requirement: &3826380 !ruby/object:Gem::Requirement
61
+ requirement: &70106839427940 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ~>
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: 0.0.0
67
67
  type: :development
68
68
  prerelease: false
69
- version_requirements: *3826380
69
+ version_requirements: *70106839427940
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: rspec
72
- requirement: &3949360 !ruby/object:Gem::Requirement
72
+ requirement: &70106839426140 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ~>
@@ -77,7 +77,7 @@ dependencies:
77
77
  version: 2.6.0
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *3949360
80
+ version_requirements: *70106839426140
81
81
  description: ''
82
82
  email:
83
83
  - lee.m.henson@gmail.com
@@ -116,7 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
116
116
  version: '0'
117
117
  requirements: []
118
118
  rubyforge_project:
119
- rubygems_version: 1.8.10
119
+ rubygems_version: 1.8.17
120
120
  signing_key:
121
121
  specification_version: 3
122
122
  summary: Default projection classes for Euston.