@@ -14,23 +14,23 @@ import (
14
14
"gitea.com/go-chi/session"
15
15
)
16
16
17
- // XormStore represents a xorm session store implementation.
18
- type XormStore struct {
17
+ // DBStore represents a session store implementation based on the DB .
18
+ type DBStore struct {
19
19
sid string
20
20
lock sync.RWMutex
21
21
data map [interface {}]interface {}
22
22
}
23
23
24
- // NewXormStore creates and returns a Xorm session store.
25
- func NewXormStore (sid string , kv map [interface {}]interface {}) * XormStore {
26
- return & XormStore {
24
+ // NewDBStore creates and returns a DB session store.
25
+ func NewDBStore (sid string , kv map [interface {}]interface {}) * DBStore {
26
+ return & DBStore {
27
27
sid : sid ,
28
28
data : kv ,
29
29
}
30
30
}
31
31
32
32
// Set sets value to given key in session.
33
- func (s * XormStore ) Set (key , val interface {}) error {
33
+ func (s * DBStore ) Set (key , val interface {}) error {
34
34
s .lock .Lock ()
35
35
defer s .lock .Unlock ()
36
36
@@ -39,15 +39,15 @@ func (s *XormStore) Set(key, val interface{}) error {
39
39
}
40
40
41
41
// Get gets value by given key in session.
42
- func (s * XormStore ) Get (key interface {}) interface {} {
42
+ func (s * DBStore ) Get (key interface {}) interface {} {
43
43
s .lock .RLock ()
44
44
defer s .lock .RUnlock ()
45
45
46
46
return s .data [key ]
47
47
}
48
48
49
49
// Delete delete a key from session.
50
- func (s * XormStore ) Delete (key interface {}) error {
50
+ func (s * DBStore ) Delete (key interface {}) error {
51
51
s .lock .Lock ()
52
52
defer s .lock .Unlock ()
53
53
@@ -56,12 +56,12 @@ func (s *XormStore) Delete(key interface{}) error {
56
56
}
57
57
58
58
// ID returns current session ID.
59
- func (s * XormStore ) ID () string {
59
+ func (s * DBStore ) ID () string {
60
60
return s .sid
61
61
}
62
62
63
63
// Release releases resource and save data to provider.
64
- func (s * XormStore ) Release () error {
64
+ func (s * DBStore ) Release () error {
65
65
// Skip encoding if the data is empty
66
66
if len (s .data ) == 0 {
67
67
return nil
@@ -76,28 +76,28 @@ func (s *XormStore) Release() error {
76
76
}
77
77
78
78
// Flush deletes all session data.
79
- func (s * XormStore ) Flush () error {
79
+ func (s * DBStore ) Flush () error {
80
80
s .lock .Lock ()
81
81
defer s .lock .Unlock ()
82
82
83
83
s .data = make (map [interface {}]interface {})
84
84
return nil
85
85
}
86
86
87
- // XormProvider represents a Xorm session provider implementation.
88
- type XormProvider struct {
87
+ // DBProvider represents a DB session provider implementation.
88
+ type DBProvider struct {
89
89
maxLifetime int64
90
90
}
91
91
92
- // Init initializes Xorm session provider.
92
+ // Init initializes DB session provider.
93
93
// connStr: username:password@protocol(address)/dbname?param=value
94
- func (p * XormProvider ) Init (maxLifetime int64 , connStr string ) error {
94
+ func (p * DBProvider ) Init (maxLifetime int64 , connStr string ) error {
95
95
p .maxLifetime = maxLifetime
96
96
return nil
97
97
}
98
98
99
99
// Read returns raw session store by session ID.
100
- func (p * XormProvider ) Read (sid string ) (session.RawStore , error ) {
100
+ func (p * DBProvider ) Read (sid string ) (session.RawStore , error ) {
101
101
s , err := models .ReadSession (sid )
102
102
if err != nil {
103
103
return nil , err
@@ -113,25 +113,25 @@ func (p *XormProvider) Read(sid string) (session.RawStore, error) {
113
113
}
114
114
}
115
115
116
- return NewXormStore (sid , kv ), nil
116
+ return NewDBStore (sid , kv ), nil
117
117
}
118
118
119
119
// Exist returns true if session with given ID exists.
120
- func (p * XormProvider ) Exist (sid string ) bool {
120
+ func (p * DBProvider ) Exist (sid string ) bool {
121
121
has , err := models .ExistSession (sid )
122
122
if err != nil {
123
- panic ("session/Xorm : error checking existence: " + err .Error ())
123
+ panic ("session/DB : error checking existence: " + err .Error ())
124
124
}
125
125
return has
126
126
}
127
127
128
128
// Destroy deletes a session by session ID.
129
- func (p * XormProvider ) Destroy (sid string ) error {
129
+ func (p * DBProvider ) Destroy (sid string ) error {
130
130
return models .DestroySession (sid )
131
131
}
132
132
133
133
// Regenerate regenerates a session store from old session ID to new one.
134
- func (p * XormProvider ) Regenerate (oldsid , sid string ) (_ session.RawStore , err error ) {
134
+ func (p * DBProvider ) Regenerate (oldsid , sid string ) (_ session.RawStore , err error ) {
135
135
s , err := models .RegenerateSession (oldsid , sid )
136
136
if err != nil {
137
137
return nil , err
@@ -148,25 +148,25 @@ func (p *XormProvider) Regenerate(oldsid, sid string) (_ session.RawStore, err e
148
148
}
149
149
}
150
150
151
- return NewXormStore (sid , kv ), nil
151
+ return NewDBStore (sid , kv ), nil
152
152
}
153
153
154
154
// Count counts and returns number of sessions.
155
- func (p * XormProvider ) Count () int {
155
+ func (p * DBProvider ) Count () int {
156
156
total , err := models .CountSessions ()
157
157
if err != nil {
158
- panic ("session/Xorm : error counting records: " + err .Error ())
158
+ panic ("session/DB : error counting records: " + err .Error ())
159
159
}
160
160
return int (total )
161
161
}
162
162
163
163
// GC calls GC to clean expired sessions.
164
- func (p * XormProvider ) GC () {
164
+ func (p * DBProvider ) GC () {
165
165
if err := models .CleanupSessions (p .maxLifetime ); err != nil {
166
- log .Printf ("session/Xorm : error garbage collecting: %v" , err )
166
+ log .Printf ("session/DB : error garbage collecting: %v" , err )
167
167
}
168
168
}
169
169
170
170
func init () {
171
- session .Register ("Xorm " , & XormProvider {})
171
+ session .Register ("db " , & DBProvider {})
172
172
}
0 commit comments