couchrest_session_store 0.0.2 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/couchrest_session_store.rb +15 -0
  2. metadata +18 -2
@@ -1,5 +1,6 @@
1
1
  require 'couchrest'
2
2
  require 'couchrest_model'
3
+ require 'action_dispatch'
3
4
 
4
5
  # CouchDB session storage for Rails.
5
6
  #
@@ -52,6 +53,9 @@ class CouchRestSessionStore < ActionDispatch::Session::AbstractStore
52
53
  database.save_doc(doc)
53
54
  end
54
55
  return [sid, session]
56
+ rescue RestClient::ResourceNotFound
57
+ # session does not exist anymore - create a new one
58
+ get_session(env, nil)
55
59
  end
56
60
 
57
61
  def set_session(env, sid, session, options)
@@ -60,5 +64,16 @@ class CouchRestSessionStore < ActionDispatch::Session::AbstractStore
60
64
  database.save_doc(doc)
61
65
  return sid
62
66
  end
67
+
68
+ def destroy_session(env, sid, options)
69
+ doc = database.get(sid)
70
+ database.delete_doc(doc)
71
+ return nil
72
+ rescue RestClient::ResourceNotFound
73
+ # already destroyed - we're done.
74
+ end
75
+
76
+
77
+
63
78
  end
64
79
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: couchrest_session_store
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-31 00:00:00.000000000 Z
12
+ date: 2013-02-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: couchrest
@@ -43,6 +43,22 @@ dependencies:
43
43
  - - ! '>='
44
44
  - !ruby/object:Gem::Version
45
45
  version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: actionpack
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
46
62
  description: A Rails Session Store based on CouchRest Model
47
63
  email:
48
64
  - azul@leap.se