Skip to content

Commit 66baa11

Browse files
author
Arvid Andersson
committed
Using autoload to require the different session stores
1 parent f052e0c commit 66baa11

File tree

3 files changed

+40
-48
lines changed

3 files changed

+40
-48
lines changed

lib/mongo_session_store-rails3.rb

+3-3
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,6 @@ def self.collection_name
2727
self.collection_name = "sessions"
2828
end
2929

30-
require 'mongo_session_store/mongo_mapper_store'
31-
require 'mongo_session_store/mongoid_store'
32-
require 'mongo_session_store/mongo_store'
30+
autoload :MongoMapperStore,'mongo_session_store/mongo_mapper_store'
31+
autoload :MongoidStore, 'mongo_session_store/mongoid_store'
32+
autoload :MongoStore, 'mongo_session_store/mongo_store'
+17-21
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,22 @@
1-
begin
2-
require 'mongo_mapper'
3-
require 'mongo_session_store/mongo_store_base'
1+
require 'mongo_mapper'
2+
require 'mongo_session_store/mongo_store_base'
43

5-
module ActionDispatch
6-
module Session
7-
class MongoMapperStore < MongoStoreBase
8-
9-
class Session
10-
include MongoMapper::Document
11-
set_collection_name MongoSessionStore.collection_name
12-
13-
key :_id, String
14-
key :data, Binary, :default => Marshal.dump({})
15-
16-
timestamps!
17-
end
18-
4+
module ActionDispatch
5+
module Session
6+
class MongoMapperStore < MongoStoreBase
7+
8+
class Session
9+
include MongoMapper::Document
10+
set_collection_name MongoSessionStore.collection_name
11+
12+
key :_id, String
13+
key :data, Binary, :default => Marshal.dump({})
14+
15+
timestamps!
1916
end
17+
2018
end
2119
end
20+
end
2221

23-
MongoMapperStore = ActionDispatch::Session::MongoMapperStore
24-
25-
rescue LoadError
26-
end
22+
MongoMapperStore = ActionDispatch::Session::MongoMapperStore
+20-24
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,27 @@
1-
begin
2-
require 'mongoid'
3-
require 'mongo_session_store/mongo_store_base'
1+
require 'mongoid'
2+
require 'mongo_session_store/mongo_store_base'
43

5-
module ActionDispatch
6-
module Session
7-
class MongoidStore < MongoStoreBase
8-
9-
class Session
10-
include Mongoid::Document
11-
include Mongoid::Timestamps
12-
self.collection_name = MongoSessionStore.collection_name
13-
14-
identity :type => String
4+
module ActionDispatch
5+
module Session
6+
class MongoidStore < MongoStoreBase
157

16-
field :data, :type => BSON::Binary, :default => BSON::Binary.new(Marshal.dump({}))
17-
end
8+
class Session
9+
include Mongoid::Document
10+
include Mongoid::Timestamps
11+
self.collection_name = MongoSessionStore.collection_name
1812

19-
private
20-
def pack(data)
21-
BSON::Binary.new(Marshal.dump(data))
22-
end
23-
13+
identity :type => String
14+
15+
field :data, :type => BSON::Binary, :default => BSON::Binary.new(Marshal.dump({}))
16+
end
17+
18+
private
19+
def pack(data)
20+
BSON::Binary.new(Marshal.dump(data))
2421
end
22+
2523
end
2624
end
27-
28-
MongoidStore = ActionDispatch::Session::MongoidStore
25+
end
2926

30-
rescue LoadError
31-
end
27+
MongoidStore = ActionDispatch::Session::MongoidStore

0 commit comments

Comments
 (0)