123456789101112131415161718192021222324252627282930313233 |
- import { Subscriber } from '../Subscriber';
- import { Subscription } from '../Subscription';
- /**
- * Returns an Observable that mirrors the source Observable, but will call a specified function when
- * the source terminates on complete or error.
- * @param {function} callback Function to be called when source terminates.
- * @return {Observable} An Observable that mirrors the source, but will call the specified function on termination.
- * @method finally
- * @owner Observable
- */
- export function finalize(callback) {
- return (source) => source.lift(new FinallyOperator(callback));
- }
- class FinallyOperator {
- constructor(callback) {
- this.callback = callback;
- }
- call(subscriber, source) {
- return source.subscribe(new FinallySubscriber(subscriber, this.callback));
- }
- }
- /**
- * We need this JSDoc comment for affecting ESDoc.
- * @ignore
- * @extends {Ignored}
- */
- class FinallySubscriber extends Subscriber {
- constructor(destination, callback) {
- super(destination);
- this.add(new Subscription(callback));
- }
- }
- //# sourceMappingURL=finalize.js.map
|