1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.AuthProvider = exports.AuthContext = void 0;
- const error_1 = require("../../error");
- /**
- * Context used during authentication
- * @internal
- */
- class AuthContext {
- constructor(connection, credentials, options) {
- /** If the context is for reauthentication. */
- this.reauthenticating = false;
- this.connection = connection;
- this.credentials = credentials;
- this.options = options;
- }
- }
- exports.AuthContext = AuthContext;
- class AuthProvider {
- /**
- * Prepare the handshake document before the initial handshake.
- *
- * @param handshakeDoc - The document used for the initial handshake on a connection
- * @param authContext - Context for authentication flow
- */
- async prepare(handshakeDoc, _authContext) {
- return handshakeDoc;
- }
- /**
- * Reauthenticate.
- * @param context - The shared auth context.
- */
- async reauth(context) {
- if (context.reauthenticating) {
- throw new error_1.MongoRuntimeError('Reauthentication already in progress.');
- }
- try {
- context.reauthenticating = true;
- await this.auth(context);
- }
- finally {
- context.reauthenticating = false;
- }
- }
- }
- exports.AuthProvider = AuthProvider;
- //# sourceMappingURL=auth_provider.js.map
|