func (s *FositeRehinkDBStore) GetOpenIDConnectSession(_ context.Context, authorizeCode string, requester fosite.Requester) (fosite.Requester, error) { cl, ok := s.IDSessions[authorizeCode] if !ok { return nil, fosite.ErrNotFound } return requestFromRDB(cl, requester.GetSession()) }
func (s *FositeRehinkDBStore) publishInsert(table r.Term, id string, requester fosite.Requester) error { sess, err := json.Marshal(requester.GetSession()) if err != nil { pkg.LogError(errors.New(err)) return errors.New(err) } if _, err := table.Insert(&RdbSchema{ ID: id, RequestedAt: requester.GetRequestedAt(), Client: requester.GetClient().(*fosite.DefaultClient), Scopes: requester.GetScopes(), GrantedScopes: requester.GetGrantedScopes(), Form: requester.GetRequestForm(), Session: sess, }).RunWrite(s.Session); err != nil { return errors.New(err) } return nil }
func getExpiresIn(r fosite.Requester, key fosite.TokenType, defaultLifespan time.Duration, now time.Time) time.Duration { if r.GetSession().GetExpiresAt(key).IsZero() { return defaultLifespan } return time.Duration(r.GetSession().GetExpiresAt(key).UnixNano() - now.UnixNano()) }