Skip to content

Commit d51ca03

Browse files
Updated interactions to support Redis storage and expiry
1 parent 428a9cc commit d51ca03

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

internal/session/interact.go

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,12 @@ func (m *Manager) CreateSession(username, ipAddress, userAgent string) error {
4848
element := m.sessionOrder.PushBack(session)
4949
session.listElem = element
5050

51+
/* store session into the manager */
5152
m.sessionsMap[username] = session
5253

54+
/* store session to Redis */
55+
m.saveSessionRedis(username)
56+
5357
return nil
5458
}
5559

@@ -73,7 +77,10 @@ func (m *Manager) ExpireSession(username string) {
7377
m.sessionOrder.Remove(session.listElem)
7478
}
7579

76-
/* TODO: Add expired session to REDIS for persistent logging */
80+
/* set session status of Redis to Expired */
81+
m.updateSessionStatusRedis(username, StatusExpired)
82+
83+
/* store session to archive pending */
7784

7885
/* remove session from sessionsMap */
7986
delete(m.sessionsMap, username)
@@ -98,6 +105,8 @@ func (m *Manager) AddTransaction(username string, txn interface{}) error {
98105
/* push transaction into the queue from back */
99106
session.TransactionQueue.PushBack(txn)
100107

108+
/* log adding of the transaction */
109+
101110
return nil
102111
}
103112

@@ -131,6 +140,8 @@ func (m *Manager) refreshTimer(username string) error {
131140
func() { m.ExpireSession(username) },
132141
)
133142

143+
/* update Redis for session */
144+
134145
return nil
135146
}
136147

0 commit comments

Comments
 (0)