Skip to content

Commit f1e82b5

Browse files
Merge pull request #463 from leonardochaia/features/clear-timers-on-destroy
Cleanup timers when OAuthService is destroyed
2 parents 008ec21 + 323cdbe commit f1e82b5

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

projects/lib/src/oauth-service.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Injectable, NgZone, Optional } from '@angular/core';
1+
import { Injectable, NgZone, Optional, OnDestroy } from '@angular/core';
22
import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';
33
import { Observable, Subject, Subscription, of, race } from 'rxjs';
44
import { filter, take, delay, first, tap, map } from 'rxjs/operators';
@@ -33,7 +33,7 @@ import { WebHttpUrlEncodingCodec } from './encoder';
3333
* password flow.
3434
*/
3535
@Injectable()
36-
export class OAuthService extends AuthConfig {
36+
export class OAuthService extends AuthConfig implements OnDestroy {
3737
// Extending AuthConfig ist just for LEGACY reasons
3838
// to not break existing code.
3939

@@ -1852,6 +1852,14 @@ export class OAuthService extends AuthConfig {
18521852
});
18531853
}
18541854

1855+
/**
1856+
* @ignore
1857+
*/
1858+
public ngOnDestroy() {
1859+
this.clearAccessTokenTimer();
1860+
this.clearIdTokenTimer();
1861+
}
1862+
18551863
protected createNonce(): Promise<string> {
18561864
return new Promise((resolve) => {
18571865
if (this.rngUrl) {

0 commit comments

Comments
 (0)