openid_mongodb_store 0.1.2 → 0.2.0

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.
data/Rakefile CHANGED
@@ -11,6 +11,7 @@ begin
11
11
  gem.homepage = "http://github.com/samsm/openid_mongodb_store"
12
12
  gem.authors = ["Sam Schenkman-Moore"]
13
13
  gem.add_development_dependency "yard", ">= 0"
14
+ gem.add_development_dependency "mongo", ">= 1.0.3"
14
15
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
15
16
  end
16
17
  Jeweler::GemcutterTasks.new
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.2
1
+ 0.2.0
@@ -3,23 +3,23 @@ require 'openid/store/interface'
3
3
 
4
4
  class OpenidMongodbStore::Store < OpenID::Store::Interface
5
5
  include OpenidMongodbStore
6
-
6
+
7
7
  def initialize(db = nil)
8
8
  OpenidMongodbStore.database = db
9
9
  end
10
-
10
+
11
11
  def associations
12
12
  @@associations ||= OpenidMongodbStore.database.collection('openid_mongo_store_associations')
13
13
  end
14
-
14
+
15
15
  def nonces
16
16
  @@nonces ||= OpenidMongodbStore.database.collection('openid_mongo_store_nonces')
17
17
  end
18
-
18
+
19
19
  def store_association(server_url, association)
20
20
  remove_association(server_url, association.handle)
21
-
22
- secret = Mongo::Binary.new(association.secret)
21
+
22
+ secret = BSON::Binary.new(association.secret)
23
23
  associations.insert('server_url' => server_url,
24
24
  'handle' => association.handle,
25
25
  'secret' => secret,
@@ -34,7 +34,7 @@ class OpenidMongodbStore::Store < OpenID::Store::Interface
34
34
  else
35
35
  associations.find({'server_url' => server_url, 'handle' => handle})
36
36
  end
37
-
37
+
38
38
  assoc_records = assocs.collect {|a| a }
39
39
 
40
40
  # TODO: Removed .reverse here, make sure that was reasonable.
@@ -50,15 +50,15 @@ class OpenidMongodbStore::Store < OpenID::Store::Interface
50
50
  return openid_association
51
51
  end
52
52
  end if assoc_records.any? # <- may not be needed
53
-
53
+
54
54
  # Fail if there isn't an acceptable association
55
55
  return nil
56
56
  end
57
-
57
+
58
58
  def remove_association(server_url, handle)
59
59
  associations.remove({'server_url'=> server_url, 'handle' => handle})
60
60
  end
61
-
61
+
62
62
  def use_nonce(server_url, timestamp, salt)
63
63
  return false if nonces.find_one({'server_url'=> server_url,
64
64
  'timestamp' => timestamp,
@@ -67,7 +67,7 @@ class OpenidMongodbStore::Store < OpenID::Store::Interface
67
67
  nonces.insert({'server_url' => server_url, 'timestamp' => timestamp, 'salt' => salt})
68
68
  return true
69
69
  end
70
-
70
+
71
71
  def cleanup_nonces
72
72
  now = Time.now.to_i
73
73
  nonces.remove({'timestamp' => {'$gt'=> (now + OpenID::Nonce.skew),
@@ -79,5 +79,5 @@ class OpenidMongodbStore::Store < OpenID::Store::Interface
79
79
  # Association.delete_all(:expire_at => {'$gt' => now})
80
80
  associations.remove('expire_at' => {'$gt' => now})
81
81
  end
82
-
82
+
83
83
  end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{openid_mongodb_store}
8
- s.version = "0.1.2"
8
+ s.version = "0.2.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Sam Schenkman-Moore"]
12
- s.date = %q{2009-12-10}
12
+ s.date = %q{2010-07-04}
13
13
  s.description = %q{Like the ActiveRecord Store, but for Mongo.}
14
14
  s.email = %q{samsm@samsm.com}
15
15
  s.extra_rdoc_files = [
@@ -33,7 +33,7 @@ Gem::Specification.new do |s|
33
33
  s.homepage = %q{http://github.com/samsm/openid_mongodb_store}
34
34
  s.rdoc_options = ["--charset=UTF-8"]
35
35
  s.require_paths = ["lib"]
36
- s.rubygems_version = %q{1.3.5}
36
+ s.rubygems_version = %q{1.3.7}
37
37
  s.summary = %q{An adaptor for storing OpenID nonces and associations with Mongo. Uses 10gen's Mongo Ruby library so should work with MongoMapper, Mongoid, and others.}
38
38
  s.test_files = [
39
39
  "test/helper.rb",
@@ -44,13 +44,16 @@ Gem::Specification.new do |s|
44
44
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
45
45
  s.specification_version = 3
46
46
 
47
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
47
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
48
48
  s.add_development_dependency(%q<yard>, [">= 0"])
49
+ s.add_development_dependency(%q<mongo>, [">= 1.0.3"])
49
50
  else
50
51
  s.add_dependency(%q<yard>, [">= 0"])
52
+ s.add_dependency(%q<mongo>, [">= 1.0.3"])
51
53
  end
52
54
  else
53
55
  s.add_dependency(%q<yard>, [">= 0"])
56
+ s.add_dependency(%q<mongo>, [">= 1.0.3"])
54
57
  end
55
58
  end
56
59
 
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openid_mongodb_store
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ hash: 23
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 2
9
+ - 0
10
+ version: 0.2.0
5
11
  platform: ruby
6
12
  authors:
7
13
  - Sam Schenkman-Moore
@@ -9,19 +15,39 @@ autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
17
 
12
- date: 2009-12-10 00:00:00 -05:00
18
+ date: 2010-07-04 00:00:00 -04:00
13
19
  default_executable:
14
20
  dependencies:
15
21
  - !ruby/object:Gem::Dependency
16
22
  name: yard
17
- type: :development
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
20
26
  requirements:
21
27
  - - ">="
22
28
  - !ruby/object:Gem::Version
29
+ hash: 3
30
+ segments:
31
+ - 0
23
32
  version: "0"
24
- version:
33
+ type: :development
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: mongo
37
+ prerelease: false
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ hash: 17
44
+ segments:
45
+ - 1
46
+ - 0
47
+ - 3
48
+ version: 1.0.3
49
+ type: :development
50
+ version_requirements: *id002
25
51
  description: Like the ActiveRecord Store, but for Mongo.
26
52
  email: samsm@samsm.com
27
53
  executables: []
@@ -54,21 +80,27 @@ rdoc_options:
54
80
  require_paths:
55
81
  - lib
56
82
  required_ruby_version: !ruby/object:Gem::Requirement
83
+ none: false
57
84
  requirements:
58
85
  - - ">="
59
86
  - !ruby/object:Gem::Version
87
+ hash: 3
88
+ segments:
89
+ - 0
60
90
  version: "0"
61
- version:
62
91
  required_rubygems_version: !ruby/object:Gem::Requirement
92
+ none: false
63
93
  requirements:
64
94
  - - ">="
65
95
  - !ruby/object:Gem::Version
96
+ hash: 3
97
+ segments:
98
+ - 0
66
99
  version: "0"
67
- version:
68
100
  requirements: []
69
101
 
70
102
  rubyforge_project:
71
- rubygems_version: 1.3.5
103
+ rubygems_version: 1.3.7
72
104
  signing_key:
73
105
  specification_version: 3
74
106
  summary: An adaptor for storing OpenID nonces and associations with Mongo. Uses 10gen's Mongo Ruby library so should work with MongoMapper, Mongoid, and others.