troles 0.6.0 → 0.6.1

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.6.0
1
+ 0.6.1
@@ -2,5 +2,7 @@
2
2
  require 'troles/common'
3
3
 
4
4
  module Trole
5
- autoload_modules :Config, :Api, :Operations, :Strategy, :Storage
5
+ autoload_modules :Config, :Api, :Operations, :Strategy, :Storage, :Macros
6
6
  end
7
+
8
+ Module.send :include, Trole::Macros
@@ -0,0 +1,5 @@
1
+ module Troles
2
+ module Adapters
3
+ autoload_modules :ActiveRecord, :Mongoid
4
+ end
5
+ end
@@ -1,8 +1,5 @@
1
- module Trole
1
+ module Trole::Adapters
2
2
  module ActiveRecord
3
- autoload :Config, 'trole/adapters/active_record/config'
4
- # autoload :Api, 'troles/adapters/active_record/api'
5
- # autoload :Storage, 'trole/adapters/active_record/storage'
6
- # autoload :Strategy, 'trole/adapters/active_record/strategy'
3
+ autoload_modules :Config
7
4
  end
8
5
  end
@@ -1,22 +1,36 @@
1
- module Trole::ActiveRecord
1
+ module Trole::Adapters::ActiveRecord
2
2
  class Config < Troles::Common::Config
3
3
 
4
4
  def initialize subject_class, options = {}
5
5
  super
6
+ puts "models classes: #{subject_class}, #{object_model}"
7
+ @models = ::Schemaker::Models.new(subject_class, object_model, nil)
6
8
  end
7
9
 
8
10
  def configure_relation
9
11
  case strategy
10
- when :ref_one
11
- belongs_to_for subject_class, object_model, :key => main_field
12
- has_many_for object_model, subject_class
12
+ when :ref_one
13
+ obj_model.create_belongs_to subject_class, :key => main_field
14
+ subj_model.create_has_one object_model
13
15
  when :embed_one
14
16
  raise "EmbedOne is currently not supported by the Active Record adapter. It will be soon..."
15
- #clazz.send(:embeds_many, role_model_key, :class_name => role_model_class_name)
17
+ #clazz.send(:embeds_one, role_model_key, :class_name => role_model_class_name)
16
18
  end
17
19
  end
18
20
 
19
- # AR sets this up ont its own using DB Table info
21
+ def obj_model
22
+ models.object_model
23
+ end
24
+
25
+ def subj_model
26
+ models.subject_model
27
+ end
28
+
29
+ def main_field
30
+ role_field
31
+ end
32
+
33
+ # AR sets this up on its own using DB Table info
20
34
  def configure_field
21
35
  end
22
36
  end
@@ -5,37 +5,7 @@
5
5
  #
6
6
  module Trole
7
7
  module Api
8
- autoload :Core, 'trole/api/core'
9
- autoload :Config, 'trole/api/config'
10
- autoload :Cache, 'trole/api/cache'
11
-
12
- autoload :Event, 'trole/api/event'
13
- autoload :Read, 'trole/api/read'
14
- autoload :Write, 'trole/api/write'
15
- autoload :Validation, 'trole/api/validation'
16
-
17
- #
18
- # When the Trole::Api is included by the Role Subject class (fx a User Account)
19
- # first include methods from Troles Common API
20
- # then include Trole API on top
21
- #
22
- # @param [Class] the role subject class (fx User or UserAccount)
23
- #
24
- module ClassMethods
25
- def included(base)
26
- base.send :include, Troles::Common::Api
27
- self.extend Troles::Common::Api::ClassMethods # draws in the #apis method from Common Api
28
-
29
- apis.each do |api|
30
- begin
31
- base.send :include, "Trole::Api::#{api.to_s.camelize}".constantize
32
- base.extend "Trole::Api::#{api.to_s.camelize}::ClassMethods".constantize
33
- # base.include_and_extend :"#{api.to_s.camelize}"
34
- rescue
35
- end
36
- end
37
- end
38
- end
8
+ autoload_modules :Core, :Config, :Cache, :Event, :Read, :Write, :Validation, :ClassMethods
39
9
  extend ClassMethods
40
10
  end
41
11
  end
@@ -0,0 +1,26 @@
1
+ module Trole
2
+ module Api
3
+ #
4
+ # When the Trole::Api is included by the Role Subject class (fx a User Account)
5
+ # first include methods from Troles Common API
6
+ # then include Trole API on top
7
+ #
8
+ # @param [Class] the role subject class (fx User or UserAccount)
9
+ #
10
+ module ClassMethods
11
+ def included(base)
12
+ base.send :include, Troles::Common::Api
13
+ self.extend Troles::Common::Api::ClassMethods # draws in the #apis method from Common Api
14
+
15
+ apis.each do |api|
16
+ begin
17
+ base.send :include, "Trole::Api::#{api.to_s.camelize}".constantize
18
+ base.extend "Trole::Api::#{api.to_s.camelize}::ClassMethods".constantize
19
+ # base.include_and_extend :"#{api.to_s.camelize}"
20
+ rescue
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -3,13 +3,5 @@ module Trole
3
3
  def initialize subject_class, options = {}
4
4
  super
5
5
  end
6
-
7
- def configure_models
8
- super
9
- end
10
-
11
- def generic?
12
- super
13
- end
14
6
  end
15
7
  end
@@ -9,8 +9,7 @@
9
9
  #
10
10
  module Trole
11
11
  class Operations
12
- autoload :Read, 'trole/operations/read'
13
- autoload :Write, 'trole/operations/write'
12
+ autoload_modules :Read, :Write
14
13
 
15
14
  include Read
16
15
  include Write
@@ -5,10 +5,6 @@
5
5
  #
6
6
  module Trole
7
7
  module Storage
8
- autoload :BaseOne, 'trole/storage/base_one'
9
- autoload :BitOne, 'trole/storage/bit_one'
10
- autoload :EmbedOne, 'trole/storage/embed_one'
11
- autoload :RefOne, 'trole/storage/ref_one'
12
- autoload :StringOne, 'trole/storage/string_one'
8
+ autoload_modules :BaseOne, :BitOne, :EmbedOne, :RefOne, :StringOne
13
9
  end
14
10
  end
@@ -1,7 +1,7 @@
1
1
  require 'troles/common'
2
2
 
3
3
  module Troles
4
- autoload_modules :Config, :Common, :Api, :Operations, :Strategy, :Storage, :Macros
4
+ autoload_modules :Config, :Common, :Api, :Operations, :Strategy, :Storage, :Macros, :Adapters
5
5
  end
6
6
 
7
7
  Module.send :include, Troles::Common::Macros
@@ -0,0 +1,5 @@
1
+ module Troles
2
+ module Adapters
3
+ autoload_modules :ActiveRecord, :Mongoid
4
+ end
5
+ end
@@ -1,8 +1,5 @@
1
- module Troles
1
+ module Troles::Adapters
2
2
  module ActiveRecord
3
- autoload :Config, 'troles/adapters/active_record/config'
4
- # autoload :Api, 'troles/adapters/active_record/api'
5
- autoload :Storage, 'troles/adapters/active_record/storage'
6
- autoload :Strategy, 'troles/adapters/active_record/strategy'
3
+ autoload_modules :Config, :Storage, :Strategy
7
4
  end
8
5
  end
@@ -1,4 +1,4 @@
1
- module Troles::ActiveRecord
1
+ module Troles::Adapters::ActiveRecord
2
2
  class Config < Troles::Common::Config
3
3
 
4
4
  attr_reader :models
@@ -1,5 +1,5 @@
1
- module Troles::ActiveRecord
1
+ module Troles::Adapters::ActiveRecord
2
2
  module Storage
3
- autoload :EmbedMany, 'troles/adapters/active_record/strategy/embed_many'
3
+ autoload_modules :EmbedMany
4
4
  end
5
5
  end
@@ -1,5 +1,5 @@
1
1
  # Could use the AR serializer feature, to save the embedded roles as YAML
2
- module Troles::ActiveRecord::Storage
2
+ module Troles::Adapters::ActiveRecord::Storage
3
3
  class StringMany < Troles::Storage::StringMany
4
4
  def initialize role_subject
5
5
  super
@@ -1,4 +1,4 @@
1
- module Troles::ActiveRecord
1
+ module Troles::Adapters::ActiveRecord
2
2
  module Strategy
3
3
  module BaseMany
4
4
  # @param [Class] the role subject class for which to include the Role strategy (fx User Account)
@@ -1,8 +1,5 @@
1
- module Troles
1
+ module Troles::Adapters
2
2
  module Mongoid
3
- autoload :Config, 'troles/adapters/mongoid/config'
4
- # autoload :Api, 'troles/adapters/mongoid/api'
5
- # autoload :Storage, 'troles/adapters/mongoid/storage'
6
- # autoload :Strategy, 'troles/adapters/mongoid/strategy'
3
+ autoload_modules :Config
7
4
  end
8
5
  end
@@ -5,36 +5,7 @@
5
5
  #
6
6
  module Troles
7
7
  module Api
8
- autoload :Core, 'troles/api/core'
9
- autoload :Config, 'troles/api/config'
10
- autoload :Cache, 'troles/api/cache'
11
-
12
- autoload :Event, 'troles/api/event'
13
- autoload :Read, 'troles/api/read'
14
- autoload :Store, 'troles/api/store'
15
- autoload :Validation, 'troles/api/validation'
16
- autoload :Write, 'troles/api/write'
17
-
18
- module ClassMethods
19
- #
20
- # When the Troles::Api is included by the Role Subject class (fx a User Account)
21
- # first include methods from Troles Common API
22
- # then include Troles API on top
23
- #
24
- # @param [Class] the role subject class (fx User or UserAccount)
25
- #
26
- def included(base)
27
- base.send :include, Troles::Common::Api
28
- self.extend Troles::Common::Api::ClassMethods # draws in the #apis method from Common Api
29
- apis.each do |api|
30
- begin
31
- base.send :include, "Troles::Api::#{api.to_s.camelize}".constantize
32
- base.extend "Troles::Api::#{api.to_s.camelize}::ClassMethods".constantize
33
- rescue
34
- end
35
- end
36
- end
37
- end
8
+ autoload_modules :Core, :Config, :Cache, :Event, :Read, :Store, :Validation, :Write, :ClassMethods
38
9
  extend ClassMethods
39
10
  end
40
11
  end
@@ -0,0 +1,24 @@
1
+ module Troles
2
+ module Api
3
+ module ClassMethods
4
+ #
5
+ # When the Troles::Api is included by the Role Subject class (fx a User Account)
6
+ # first include methods from Troles Common API
7
+ # then include Troles API on top
8
+ #
9
+ # @param [Class] the role subject class (fx User or UserAccount)
10
+ #
11
+ def included(base)
12
+ base.send :include, Troles::Common::Api
13
+ self.extend Troles::Common::Api::ClassMethods # draws in the #apis method from Common Api
14
+ apis.each do |api|
15
+ begin
16
+ base.send :include, "Troles::Api::#{api.to_s.camelize}".constantize
17
+ base.extend "Troles::Api::#{api.to_s.camelize}::ClassMethods".constantize
18
+ rescue
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -1,29 +1,6 @@
1
1
  module Troles::Common
2
2
  module Api
3
- autoload :Core, 'troles/common/api/core'
4
- autoload :Cache, 'troles/common/api/cache'
5
- autoload :Config, 'troles/common/api/config'
6
- autoload :Event, 'troles/common/api/event'
7
- autoload :Read, 'troles/common/api/read'
8
- autoload :Write, 'troles/common/api/write'
9
- autoload :Validation, 'troles/common/api/validation'
10
-
11
-
12
- module ClassMethods
13
- def apis
14
- [:core, :cache, :config, :event, :read, :validation, :write]
15
- end
16
-
17
- def included(base)
18
- puts "Included #{base}"
19
- apis.each do |api|
20
- begin
21
- base.include_and_extend :"#{api.to_s.camelize}"
22
- rescue
23
- end
24
- end
25
- end
26
- end
3
+ autoload_modules :Core, :Cache, :Config, :Event, :Read, :Write, :Validation, :ClassMethods
27
4
  extend ClassMethods
28
5
  end
29
6
  end
@@ -0,0 +1,16 @@
1
+ module Troles::Common::Api
2
+ module ClassMethods
3
+ def apis
4
+ [:core, :cache, :config, :event, :read, :validation, :write]
5
+ end
6
+
7
+ def included(base)
8
+ apis.each do |api|
9
+ begin
10
+ base.include_and_extend :"#{api.to_s.camelize}"
11
+ rescue
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -13,7 +13,7 @@ module Troles::Storage
13
13
  end
14
14
 
15
15
  # display the roles as a list of symbols
16
- # see Troles::Marshaller::Bitmask
16
+ # see Troles::Marshaller::Bitmask
17
17
  # @return [Array<Symbol>] roles list
18
18
  def display_roles
19
19
  return [] if !ds_field_value?
@@ -21,36 +21,36 @@ module Troles::Storage
21
21
  end
22
22
 
23
23
  def ds_field_value?
24
- ds_field_value == 0
24
+ ds_field_value > 0
25
25
  end
26
-
26
+
27
27
  # saves the roles for the role subject in the data store
28
28
  # see Troles::Marshaller::Bitmask
29
- # @param [Array<Symbol>] roles list
29
+ # @param [Array<Symbol>] roles list
30
30
  def set_roles *roles
31
31
  roles = roles.to_symbols_uniq
32
- return clear! if roles.empty?
32
+ return clear! if roles.empty?
33
33
  set_ds_field bitmask.write(roles.to_symbols)
34
- end
34
+ end
35
35
 
36
36
  # Clears the role state of the role subject
37
37
  def clear!
38
38
  set_ds_field 0
39
39
  end
40
-
41
- # Sets role to default state
40
+
41
+ # Sets role to default state
42
42
  def set_default_role!
43
43
  clear!
44
- end
44
+ end
45
45
 
46
46
  protected
47
47
 
48
48
  def bitmask
49
49
  @bitmask ||= bitmask_class.new role_subject
50
50
  end
51
-
51
+
52
52
  def bitmask_class
53
53
  Troles::Common::Marshaller::Bitmask
54
54
  end
55
55
  end
56
- end
56
+ end
@@ -1,11 +1,11 @@
1
1
  require "active_record/migrations/many/ref_many"
2
2
 
3
- class User < ActiveRecord::Base
3
+ class User < ActiveRecord::Base
4
4
  # has_and_belongs_to_many :troles, :class_name => 'Role'
5
5
  end
6
6
 
7
- class Role < ActiveRecord::Base
7
+ class Role < ActiveRecord::Base
8
8
  # has_and_belongs_to_many :accounts, :class_name => 'User'
9
- end
9
+ end
10
10
 
11
11
 
@@ -1,10 +1,10 @@
1
1
  require "active_record/migrations/one/ref_one"
2
2
 
3
- class User < ActiveRecord::Base
3
+ class User < ActiveRecord::Base
4
4
  # belongs_to :trole, :class_name => 'Role'
5
5
  end
6
6
 
7
- class Role < ActiveRecord::Base
7
+ class Role < ActiveRecord::Base
8
8
  # has_many :users, :class_name => 'User'
9
9
  end
10
10
 
@@ -1,2 +1,4 @@
1
- class Role < ActiveRecord::Base
1
+ puts "Role model"
2
+
3
+ class Role < ActiveRecord::Base
2
4
  end
@@ -1,4 +1,5 @@
1
- class User < ActiveRecord::Base
1
+ puts "User model"
2
+ class User < ActiveRecord::Base
2
3
  def role_list_value
3
4
  instance_variable_get "@role_list"
4
5
  end
@@ -13,7 +13,7 @@ Troles::Config.log_on = true
13
13
 
14
14
  dbconfig_path = File.dirname(__FILE__) + '/db/database.yml'
15
15
  dbfile = File.open(dbconfig_path)
16
- dbconfig = YAML::load(dbfile)
16
+ dbconfig = YAML::load(dbfile)
17
17
 
18
18
  ActiveRecord::Base.establish_connection(dbconfig)
19
19
  ActiveRecord::Base.logger = Logger.new(STDERR)
@@ -25,7 +25,7 @@ def migration_folder(name)
25
25
  end
26
26
 
27
27
  def migrate name = :ref_many
28
- singularity = (name.to_s =~ /_many/) ? :many : :one
28
+ singularity = (name.to_s =~ /_many/) ? :many : :one
29
29
  migration_file = migration_folder(File.join [singularity, name].map(&:to_s))
30
30
  puts "mig file: #{migration_file}"
31
31
  require migration_file
@@ -36,19 +36,19 @@ end
36
36
  RSpec.configure do |config|
37
37
  config.before(:suite) do
38
38
  DatabaseCleaner.strategy = :transaction
39
- DatabaseCleaner.clean_with(:truncation)
39
+ DatabaseCleaner.clean_with(:truncation)
40
40
  end
41
41
 
42
- config.before(:each) do
42
+ config.before(:each) do
43
43
  DatabaseCleaner.start
44
44
  DatabaseCleaner.drop_tables :users, :roles, :users_roles
45
45
  migrate_up
46
- # api_migrate
46
+ # api_migrate
47
47
  end
48
48
 
49
49
  config.after(:each) do
50
50
  DatabaseCleaner.clean
51
- end
51
+ end
52
52
  end
53
53
 
54
54
 
@@ -6,15 +6,16 @@ require 'active_record_helper'
6
6
  require 'troles_spec'
7
7
 
8
8
  User.troles_strategy :bit_many do |c|
9
- c.valid_roles = [:user, :admin, :blogger]
9
+ c.valid_roles = [:user, :admin, :blogger]
10
10
  end.configure!
11
11
 
12
12
  describe Troles::Storage::BitMany do
13
- let(:kris) { Factory.create :user, :troles => 4}
14
- subject { Troles::Storage::BitMany.new kris }
13
+ let(:kris) { Factory.create :user, :troles => 2}
14
+ subject { Troles::Storage::BitMany.new kris }
15
15
 
16
- it 'should set roles' do
17
- subject.set_roles 'blogger'
18
- subject.display_roles.should == [:blogger]
16
+ it 'should set roles' do
17
+ subject.set_roles 'blogger'
18
+ subject.display_roles.should == [:blogger]
19
+ kris.troles.should == 4
19
20
  end
20
21
  end
@@ -6,15 +6,16 @@ require 'active_record_helper'
6
6
  require 'troles_spec'
7
7
 
8
8
  User.troles_strategy :ref_many do |c|
9
- c.valid_roles = [:user, :admin, :blogger]
9
+ c.valid_roles = [:user, :admin, :blogger]
10
10
  end.configure!
11
11
 
12
12
  describe Troles::Storage::RefMany do
13
13
  let(:kris) { Factory.create :user }
14
- subject { Troles::Storage::RefMany.new kris }
14
+ subject { Troles::Storage::RefMany.new kris }
15
15
 
16
- it 'should set roles' do
17
- subject.set_roles 'blogger', 'admin'
18
- subject.display_roles.should == [:blogger, :admin]
16
+ it 'should set roles' do
17
+ subject.set_roles 'blogger', 'admin'
18
+ subject.display_roles.should == [:blogger, :admin]
19
+ kris.troles.first.should == Role.first
19
20
  end
20
21
  end
@@ -10,10 +10,12 @@ User.valid_roles = [:user, :admin, :blogger]
10
10
 
11
11
  describe Troles::Storage::StringMany do
12
12
  let(:kris) { Factory.create :user, :troles => 'user' }
13
- subject { Troles::Storage::StringMany.new kris }
13
+ subject { Troles::Storage::StringMany.new kris }
14
14
 
15
- it 'should set roles' do
16
- subject.set_roles 'blogger', 'admin'
17
- subject.display_roles.should == [:blogger, :admin]
15
+ it 'should set roles' do
16
+ subject.set_roles 'blogger', 'admin'
17
+ subject.display_roles.should == [:blogger, :admin]
18
+ puts kris.troles.inspect
19
+ kris.troles.split(',').should include('blogger', 'admin')
18
20
  end
19
21
  end
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "troles"
8
- s.version = "0.6.0"
8
+ s.version = "0.6.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Kristian Mandrup"]
@@ -26,6 +26,7 @@ Gem::Specification.new do |s|
26
26
  "VERSION",
27
27
  "config/database.yml",
28
28
  "lib/trole.rb",
29
+ "lib/trole/adapters.rb",
29
30
  "lib/trole/adapters/active_record.rb",
30
31
  "lib/trole/adapters/active_record/config.rb",
31
32
  "lib/trole/adapters/active_record/storage.rb",
@@ -36,6 +37,7 @@ Gem::Specification.new do |s|
36
37
  "lib/trole/adapters/mongoid/strategy.rb",
37
38
  "lib/trole/api.rb",
38
39
  "lib/trole/api/cache.rb",
40
+ "lib/trole/api/class_methods.rb",
39
41
  "lib/trole/api/config.rb",
40
42
  "lib/trole/api/core.rb",
41
43
  "lib/trole/api/event.rb",
@@ -93,6 +95,7 @@ Gem::Specification.new do |s|
93
95
  "lib/trole_groups/storage/ref_many.rb",
94
96
  "lib/trole_groups/strategy.rb",
95
97
  "lib/troles.rb",
98
+ "lib/troles/adapters.rb",
96
99
  "lib/troles/adapters/active_record.rb",
97
100
  "lib/troles/adapters/active_record/Design Notes.textile",
98
101
  "lib/troles/adapters/active_record/config.rb",
@@ -104,6 +107,7 @@ Gem::Specification.new do |s|
104
107
  "lib/troles/adapters/mongoid/config.rb",
105
108
  "lib/troles/api.rb",
106
109
  "lib/troles/api/cache.rb",
110
+ "lib/troles/api/class_methods.rb",
107
111
  "lib/troles/api/config.rb",
108
112
  "lib/troles/api/core.rb",
109
113
  "lib/troles/api/event.rb",
@@ -113,6 +117,7 @@ Gem::Specification.new do |s|
113
117
  "lib/troles/common.rb",
114
118
  "lib/troles/common/api.rb",
115
119
  "lib/troles/common/api/cache.rb",
120
+ "lib/troles/common/api/class_methods.rb",
116
121
  "lib/troles/common/api/config.rb",
117
122
  "lib/troles/common/api/core.rb",
118
123
  "lib/troles/common/api/event.rb",
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: troles
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.6.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-10-12 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: sugar-high
16
- requirement: &2159201640 !ruby/object:Gem::Requirement
16
+ requirement: &2164804900 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 0.6.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2159201640
24
+ version_requirements: *2164804900
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: sweetloader
27
- requirement: &2159200900 !ruby/object:Gem::Requirement
27
+ requirement: &2164804360 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.1.1
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *2159200900
35
+ version_requirements: *2164804360
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: schemaker
38
- requirement: &2159200220 !ruby/object:Gem::Requirement
38
+ requirement: &2164803840 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 0.1.4
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *2159200220
46
+ version_requirements: *2164803840
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rake
49
- requirement: &2159199540 !ruby/object:Gem::Requirement
49
+ requirement: &2164803240 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 0.9.0
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *2159199540
57
+ version_requirements: *2164803240
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rspec
60
- requirement: &2159198800 !ruby/object:Gem::Requirement
60
+ requirement: &2164802640 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '2.4'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *2159198800
68
+ version_requirements: *2164802640
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: bundler
71
- requirement: &2159198100 !ruby/object:Gem::Requirement
71
+ requirement: &2164802040 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '1'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *2159198100
79
+ version_requirements: *2164802040
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: jeweler
82
- requirement: &2159197500 !ruby/object:Gem::Requirement
82
+ requirement: &2164801400 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '1.6'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *2159197500
90
+ version_requirements: *2164801400
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: rdoc
93
- requirement: &2159196660 !ruby/object:Gem::Requirement
93
+ requirement: &2164800740 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: '3.6'
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *2159196660
101
+ version_requirements: *2164800740
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: rcov
104
- requirement: &2159195820 !ruby/object:Gem::Requirement
104
+ requirement: &2164800120 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ! '>='
@@ -109,10 +109,10 @@ dependencies:
109
109
  version: '0'
110
110
  type: :development
111
111
  prerelease: false
112
- version_requirements: *2159195820
112
+ version_requirements: *2164800120
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: yard
115
- requirement: &2159195120 !ruby/object:Gem::Requirement
115
+ requirement: &2164799380 !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
118
118
  - - ! '>'
@@ -120,7 +120,7 @@ dependencies:
120
120
  version: 0.6.1
121
121
  type: :development
122
122
  prerelease: false
123
- version_requirements: *2159195120
123
+ version_requirements: *2164799380
124
124
  description: Ruby roles solution that has an easy to extend API, configuration and
125
125
  nice Adapter interface to ORMs and data stores
126
126
  email: kmandrup@gmail.com
@@ -139,6 +139,7 @@ files:
139
139
  - VERSION
140
140
  - config/database.yml
141
141
  - lib/trole.rb
142
+ - lib/trole/adapters.rb
142
143
  - lib/trole/adapters/active_record.rb
143
144
  - lib/trole/adapters/active_record/config.rb
144
145
  - lib/trole/adapters/active_record/storage.rb
@@ -149,6 +150,7 @@ files:
149
150
  - lib/trole/adapters/mongoid/strategy.rb
150
151
  - lib/trole/api.rb
151
152
  - lib/trole/api/cache.rb
153
+ - lib/trole/api/class_methods.rb
152
154
  - lib/trole/api/config.rb
153
155
  - lib/trole/api/core.rb
154
156
  - lib/trole/api/event.rb
@@ -206,6 +208,7 @@ files:
206
208
  - lib/trole_groups/storage/ref_many.rb
207
209
  - lib/trole_groups/strategy.rb
208
210
  - lib/troles.rb
211
+ - lib/troles/adapters.rb
209
212
  - lib/troles/adapters/active_record.rb
210
213
  - lib/troles/adapters/active_record/Design Notes.textile
211
214
  - lib/troles/adapters/active_record/config.rb
@@ -217,6 +220,7 @@ files:
217
220
  - lib/troles/adapters/mongoid/config.rb
218
221
  - lib/troles/api.rb
219
222
  - lib/troles/api/cache.rb
223
+ - lib/troles/api/class_methods.rb
220
224
  - lib/troles/api/config.rb
221
225
  - lib/troles/api/core.rb
222
226
  - lib/troles/api/event.rb
@@ -226,6 +230,7 @@ files:
226
230
  - lib/troles/common.rb
227
231
  - lib/troles/common/api.rb
228
232
  - lib/troles/common/api/cache.rb
233
+ - lib/troles/common/api/class_methods.rb
229
234
  - lib/troles/common/api/config.rb
230
235
  - lib/troles/common/api/core.rb
231
236
  - lib/troles/common/api/event.rb
@@ -447,7 +452,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
447
452
  version: '0'
448
453
  segments:
449
454
  - 0
450
- hash: -769748593526627633
455
+ hash: -653530705225609537
451
456
  required_rubygems_version: !ruby/object:Gem::Requirement
452
457
  none: false
453
458
  requirements: