mongoid-auto_increment 1.0.0 → 1.0.1

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
  SHA1:
3
- metadata.gz: 636e36799b1aba6cca4dde72075867e7fa154b9a
4
- data.tar.gz: 7ba001729ddc015754cb1fea683ecf774e0cc5f9
3
+ metadata.gz: c0b7e383c8705061b3c8aafc71db3db19f401816
4
+ data.tar.gz: 5b04765f996da64537b609f85bcf2eba0b73427e
5
5
  SHA512:
6
- metadata.gz: 4f5fff67deb5e4a6a22d29dfadafd75ef49e9d05bf49b7cb88cd73b5c3616965a342734b1b11839bc6b9ecea0a6e9a2108e36f1f867724d39462555f0eb4961e
7
- data.tar.gz: 6f9ef4e1bb16eaf273c1886f6a955c4b71522b3d5594f7b79d439116554b8da35f35983771dec9b0fec9d55de6d2a24a5a72be29d642ace037483ab899d37e81
6
+ metadata.gz: 3025b1593067b36e42dd013230c3e697b044085c4cdb2e1365c6d3e1f2f7ab4a2fcfc3b8a3e6078e5730054bb241c4e54e73b778abe7bda662d828954a322d38
7
+ data.tar.gz: c8b5ca8e302e715f2ad80765e5bd49bba4276d73a1404c7a1c773414b3e1662e62557dfc78f157af9d6cc200aff6a442cba4d9c0a3a48a3a5611e2f1d55dcc49
@@ -5,12 +5,14 @@ module Mongoid
5
5
  extend ActiveSupport::Concern
6
6
 
7
7
  included do
8
+ class_attribute :auto_increment_value_field
8
9
  class_attribute :auto_increment_class
9
10
  class_attribute :auto_incremented_fields
10
11
  class_attribute :auto_increment_classes
11
12
  class_attribute :auto_increment_collection
12
13
  class_attribute :auto_increment_class_prefix
13
14
 
15
+ self.auto_increment_value_field = 'value'
14
16
  self.auto_increment_class = self
15
17
  self.auto_incremented_fields = []
16
18
  self.auto_increment_classes = []
@@ -27,7 +29,7 @@ module Mongoid
27
29
  end
28
30
 
29
31
  module ClassMethods
30
- def auto_incremented(name)
32
+ def auto_incremented(name, opts = {})
31
33
  if self.auto_increment_class != self
32
34
  self.auto_increment_classes = self.auto_increment_classes + [self]
33
35
  self.auto_incremented_fields = self.auto_incremented_fields.dup
@@ -37,7 +39,7 @@ module Mongoid
37
39
  self.auto_increment_class = self
38
40
  end
39
41
  self.auto_incremented_fields << name
40
- field name, type: Integer
42
+ field name, opts.merge({type: Integer})
41
43
  end
42
44
  end
43
45
 
@@ -49,11 +51,11 @@ module Mongoid
49
51
  result = session.command({
50
52
  findAndModify: self.class.auto_increment_collection,
51
53
  query: {_id: "#{klass.auto_increment_class_prefix}_#{name}"},
52
- update: { '$inc' => { value: 1} },
54
+ update: { '$inc' => { klass.auto_increment_value_field => 1 } },
53
55
  upsert: true,
54
56
  new: true,
55
57
  })
56
- self[name] = result['value']['value']
58
+ self[name] = result['value'][klass.auto_increment_value_field]
57
59
  end
58
60
  end
59
61
  end
@@ -1,6 +1,6 @@
1
1
  module Mongoid
2
2
  module AutoIncrement
3
- VERSION = '1.0.0'
3
+ VERSION = '1.0.1'
4
4
  end
5
5
  end
6
6
 
@@ -2,6 +2,8 @@ class SecondAutoIncrementedModel
2
2
  include Mongoid::Document
3
3
  include Mongoid::AutoIncrement
4
4
 
5
+ self.auto_increment_value_field = 'seq'
6
+
5
7
  auto_incremented :identifier
6
8
  end
7
9
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongoid-auto_increment
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Geoffroy Planquart
@@ -66,8 +66,8 @@ files:
66
66
  - MIT-LICENSE
67
67
  - Rakefile
68
68
  - test/models/first_auto_incremented_model.rb
69
- - test/models/second_auto_incremented_model.rb
70
69
  - test/models/subclass_model.rb
70
+ - test/models/second_auto_incremented_model.rb
71
71
  - test/mongoid.yml
72
72
  - test/uniqueness_test.rb
73
73
  - test/consistency_test.rb
@@ -99,8 +99,8 @@ specification_version: 4
99
99
  summary: Auto-incremented field for Mongoid
100
100
  test_files:
101
101
  - test/models/first_auto_incremented_model.rb
102
- - test/models/second_auto_incremented_model.rb
103
102
  - test/models/subclass_model.rb
103
+ - test/models/second_auto_incremented_model.rb
104
104
  - test/mongoid.yml
105
105
  - test/uniqueness_test.rb
106
106
  - test/consistency_test.rb