hanami-mongoid 0.1.0 → 0.1.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
  SHA256:
3
- metadata.gz: 7162e16b03ff0cd75aeeefabbd277145233ce4490cf69b906aec430ee8752154
4
- data.tar.gz: 4f6ec29482d86fcf070476e727a0ebada89708f082cdd5a5a20e4a6bbb9a736c
3
+ metadata.gz: 81e003546b0e52d207b08cae9b6749ff859776d956dc118b10c155b55e7823d0
4
+ data.tar.gz: d7d9faed4412d7e58f0374ec774e06e2e8e571f8cd741af00a55f11f1185507b
5
5
  SHA512:
6
- metadata.gz: 4dc1b5d3274d3a25f44838f865d1636df5a590f9e7cdaefc1f845d6dbc5c4c3db7e71075618ea1710ac442b5b1e120558e7cb02b52440c8ccae6b6115e2f64d2
7
- data.tar.gz: 4ce0c86c9760f7589a16ff9fe5d4ab5b12fa0dae5bdff77ec5b214715e781ae5337eebb8e55924fa5c35c6fb363d2dc4251109b50e01067d565ae7138a5e4208
6
+ metadata.gz: 0d97d5ea32dd3edb4904bec66793a1799e27737677ded65a2eedd9ee973e55c78d74f7ea130b5333dc0c0d98cb60deab575da1a8e23b17293cb53ec7a5c5fe9b
7
+ data.tar.gz: c4c9044c9e9a563918c5fc18f804d4254203087dc77d3c8334332c9193d310dda36a32a368084226216b9f5cb6115b8a20232d21096283f23f486e9ba2d5acb6
data/Gemfile.lock ADDED
@@ -0,0 +1,54 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ hanami-mongoid (0.1.0)
5
+ mongoid
6
+
7
+ GEM
8
+ remote: https://rubygems.org/
9
+ specs:
10
+ activemodel (5.2.2.1)
11
+ activesupport (= 5.2.2.1)
12
+ activesupport (5.2.2.1)
13
+ concurrent-ruby (~> 1.0, >= 1.0.2)
14
+ i18n (>= 0.7, < 2)
15
+ minitest (~> 5.1)
16
+ tzinfo (~> 1.1)
17
+ bson (4.4.2)
18
+ concurrent-ruby (1.1.5)
19
+ diff-lcs (1.3)
20
+ i18n (1.6.0)
21
+ concurrent-ruby (~> 1.0)
22
+ minitest (5.11.3)
23
+ mongo (2.7.1)
24
+ bson (>= 4.4.2, < 5.0.0)
25
+ mongoid (7.0.2)
26
+ activemodel (>= 5.1, < 6.0.0)
27
+ mongo (>= 2.5.1, < 3.0.0)
28
+ rspec (3.8.0)
29
+ rspec-core (~> 3.8.0)
30
+ rspec-expectations (~> 3.8.0)
31
+ rspec-mocks (~> 3.8.0)
32
+ rspec-core (3.8.0)
33
+ rspec-support (~> 3.8.0)
34
+ rspec-expectations (3.8.2)
35
+ diff-lcs (>= 1.2.0, < 2.0)
36
+ rspec-support (~> 3.8.0)
37
+ rspec-mocks (3.8.0)
38
+ diff-lcs (>= 1.2.0, < 2.0)
39
+ rspec-support (~> 3.8.0)
40
+ rspec-support (3.8.0)
41
+ thread_safe (0.3.6)
42
+ tzinfo (1.2.5)
43
+ thread_safe (~> 0.1)
44
+
45
+ PLATFORMS
46
+ ruby
47
+
48
+ DEPENDENCIES
49
+ bundler
50
+ hanami-mongoid!
51
+ rspec
52
+
53
+ BUNDLED WITH
54
+ 2.0.1
data/README.md CHANGED
@@ -51,8 +51,8 @@ end
51
51
  This way you can keep separated the repository and entity logic as Hanami suggests.
52
52
  You can call the usual database related methods using the repository:
53
53
  ```ruby
54
- BookRepository.first # #<Book:0x00007fd8b6bea578>
55
- BookRepository.find('5af4c697699bbdaad') # #<Book id: 5af4c697699bbdaad>
54
+ BookRepository.new.first # #<Book:0x00007fd8b6bea578>
55
+ BookRepository.new.find('5af4c697699bbdaad') # #<Book id: 5af4c697699bbdaad>
56
56
  ```
57
57
  Or even collection specific methods, for example `insert_many` or `aggregate`.
58
58
 
@@ -24,7 +24,6 @@ Gem::Specification.new do |spec|
24
24
 
25
25
  spec.add_dependency "mongoid"
26
26
 
27
- spec.add_development_dependency "bundler", "~> 2.0"
28
- spec.add_development_dependency "rake", "~> 10.0"
29
- spec.add_development_dependency "rspec", "~> 3.0"
27
+ spec.add_development_dependency "bundler"
28
+ spec.add_development_dependency "rspec"
30
29
  end
@@ -6,32 +6,31 @@ module Hanami
6
6
  # Model class
7
7
  #
8
8
  # @return [Class] the model class
9
- def self.model_klass
10
- Object.const_get self.name.gsub('Repository', '')
9
+ def model_klass
10
+ Object.const_get self.class.name.gsub('Repository', '')
11
11
  end
12
12
 
13
13
  ##
14
- # Forwards common repository methods to the model's class
15
- %i( find where any_of all first last
16
- new create update_all destroy_all delete_all ).each do |method|
17
- define_singleton_method method do |*args|
18
- puts self.inspect
14
+ # Forwards common repository methods to the model
15
+ %i( find where any_of all first last new create
16
+ destroy_all delete_all update_all ).each do |method|
17
+ define_method method do |*args|
19
18
  self.model_klass.send method, *args
20
19
  end
21
20
  end
22
21
 
23
22
  ##
24
- # Forwards common repository methods to the model's instance
25
- %i( update_attributes update destroy delete ).each do |method|
26
- define_method method do |*args|
27
- self.send method, *args
23
+ # Forwards common repository methods to the model instance
24
+ %i( destroy delete update_attributes update ).each do |method|
25
+ define_method method do |entity_id, *args|
26
+ self.model_klass.find(entity_id).send method, *args
28
27
  end
29
28
  end
30
29
 
31
30
  ##
32
31
  # Forwards common repository methods to the model's collection
33
32
  %i( insert_many aggregate ).each do |method|
34
- define_singleton_method method do |*args|
33
+ define_method method do |*args|
35
34
  self.model_klass.collection.send method, *args
36
35
  end
37
36
  end
@@ -1,5 +1,5 @@
1
1
  module Hanami
2
2
  module Mongoid
3
- VERSION = "0.1.0"
3
+ VERSION = "0.1.1"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hanami-mongoid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Francesco Ballardin
@@ -28,44 +28,30 @@ dependencies:
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '2.0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '2.0'
41
- - !ruby/object:Gem::Dependency
42
- name: rake
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
31
+ - - ">="
46
32
  - !ruby/object:Gem::Version
47
- version: '10.0'
33
+ version: '0'
48
34
  type: :development
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
- - - "~>"
38
+ - - ">="
53
39
  - !ruby/object:Gem::Version
54
- version: '10.0'
40
+ version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: rspec
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
- - - "~>"
45
+ - - ">="
60
46
  - !ruby/object:Gem::Version
61
- version: '3.0'
47
+ version: '0'
62
48
  type: :development
63
49
  prerelease: false
64
50
  version_requirements: !ruby/object:Gem::Requirement
65
51
  requirements:
66
- - - "~>"
52
+ - - ">="
67
53
  - !ruby/object:Gem::Version
68
- version: '3.0'
54
+ version: '0'
69
55
  description: Adds repositories and wraps Mongoid methods for Hanami.
70
56
  email:
71
57
  - francesco.ballardin@develonproject.com
@@ -77,6 +63,7 @@ files:
77
63
  - ".rspec"
78
64
  - ".travis.yml"
79
65
  - Gemfile
66
+ - Gemfile.lock
80
67
  - README.md
81
68
  - Rakefile
82
69
  - bin/console