Read() -> Load()
This commit is contained in:
parent
95984bb37c
commit
ffd730b057
3 changed files with 14 additions and 14 deletions
|
@ -44,7 +44,7 @@ type Provider interface {
|
|||
//create new session using sid value
|
||||
Init(sid string) (Session, error)
|
||||
//read and return existing session by id or if not exist create new session
|
||||
Read(sid string) (Session, error)
|
||||
Load(sid string) (Session, error)
|
||||
//destroy remove session with sid from storage if exist
|
||||
Destroy(sid string) error
|
||||
//regenerate id change old sid to newsid and preserve existing session data
|
||||
|
@ -142,7 +142,7 @@ func (manager *Manager) SessionStart(w http.ResponseWriter, r *http.Request) (se
|
|||
if sid, err = url.QueryUnescape(cookie.Value); err != nil {
|
||||
return nil, fmt.Errorf("Session cookie decode error: %v", err)
|
||||
}
|
||||
if session, err = manager.provider.Read(sid); err != nil {
|
||||
if session, err = manager.provider.Load(sid); err != nil {
|
||||
return nil, fmt.Errorf("Session provider read error: %w", err)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -74,8 +74,8 @@ func (pder *ProviderFiles) Init(sid string) (sess *SessionFile, err error) {
|
|||
return &SessionFile{sid}, nil
|
||||
}
|
||||
|
||||
// Read return existing session by sid or new session if not exists
|
||||
func (pder *ProviderFiles) Read(sid string) (sess *SessionFile, err error) {
|
||||
// Load return existing session by sid or new session if not exists
|
||||
func (pder *ProviderFiles) Load(sid string) (sess *SessionFile, err error) {
|
||||
pder.lock.Lock()
|
||||
defer pder.lock.Unlock()
|
||||
if pder.Exists(sid) {
|
||||
|
@ -98,8 +98,8 @@ type SessionFile struct {
|
|||
sid string
|
||||
}
|
||||
|
||||
// load data from session file
|
||||
func (sf *SessionFile) load() (data map[any]any, err error) {
|
||||
// loadFromFile data from session file
|
||||
func (sf *SessionFile) loadFromFile() (data map[any]any, err error) {
|
||||
var sb []byte
|
||||
sfp := ckdirpath(sf.sid)
|
||||
if sb, err = os.ReadFile(sfp); err != nil {
|
||||
|
@ -116,8 +116,8 @@ func (sf *SessionFile) load() (data map[any]any, err error) {
|
|||
return
|
||||
}
|
||||
|
||||
// save data into session file
|
||||
func (sf *SessionFile) save(data map[any]any) (err error) {
|
||||
// saveToFile data into session file
|
||||
func (sf *SessionFile) saveToFile(data map[any]any) (err error) {
|
||||
var gobdata bytes.Buffer
|
||||
enc := gob.NewEncoder(&gobdata)
|
||||
if err = enc.Encode(data); err != nil {
|
||||
|
@ -134,7 +134,7 @@ func (sf *SessionFile) save(data map[any]any) (err error) {
|
|||
func (sf *SessionFile) Get(k any) (v any, err error) {
|
||||
defer pder.updateAtime(sf.sid)
|
||||
var data map[any]any
|
||||
if data, err = sf.load(); err != nil {
|
||||
if data, err = sf.loadFromFile(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return data[k], nil
|
||||
|
@ -144,22 +144,22 @@ func (sf *SessionFile) Get(k any) (v any, err error) {
|
|||
func (sf *SessionFile) Set(k, v any) (err error) {
|
||||
defer pder.updateAtime(sf.sid)
|
||||
var data map[any]any
|
||||
if data, err = sf.load(); err != nil {
|
||||
if data, err = sf.loadFromFile(); err != nil {
|
||||
return err
|
||||
}
|
||||
data[k] = v
|
||||
return sf.save(data)
|
||||
return sf.saveToFile(data)
|
||||
}
|
||||
|
||||
// Delete remove value of key k from session
|
||||
func (sf *SessionFile) Delete(k any) (err error) {
|
||||
defer pder.updateAtime(sf.sid)
|
||||
var data map[any]any
|
||||
if data, err = sf.load(); err != nil {
|
||||
if data, err = sf.loadFromFile(); err != nil {
|
||||
return err
|
||||
}
|
||||
delete(data, k)
|
||||
return sf.save(data)
|
||||
return sf.saveToFile(data)
|
||||
}
|
||||
|
||||
// SessionID return sid
|
||||
|
|
|
@ -58,7 +58,7 @@ func (pder *ProviderMemory) Exists(sid string) (ex bool) {
|
|||
}
|
||||
|
||||
// read return existing unexpired session or create new
|
||||
func (pder *ProviderMemory) Read(sid string) (ses session.Session, err error) {
|
||||
func (pder *ProviderMemory) Load(sid string) (ses session.Session, err error) {
|
||||
pder.lock.Lock()
|
||||
defer pder.lock.Unlock()
|
||||
if ssel, ok := pder.sessions[sid]; ok {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue