UNPKG

2.66 kBJavaScriptView Raw
1"use strict";
2/**
3 * -------------------------------------------------------------------------------------------
4 * Copyright (c) Microsoft Corporation. All Rights Reserved. Licensed under the MIT License.
5 * See License in the project root for license information.
6 * -------------------------------------------------------------------------------------------
7 */
8Object.defineProperty(exports, "__esModule", { value: true });
9exports.MiddlewareFactory = void 0;
10var AuthenticationHandler_1 = require("./AuthenticationHandler");
11var HTTPMessageHandler_1 = require("./HTTPMessageHandler");
12var RedirectHandlerOptions_1 = require("./options/RedirectHandlerOptions");
13var RetryHandlerOptions_1 = require("./options/RetryHandlerOptions");
14var RedirectHandler_1 = require("./RedirectHandler");
15var RetryHandler_1 = require("./RetryHandler");
16var TelemetryHandler_1 = require("./TelemetryHandler");
17/**
18 * @private
19 * To check whether the environment is node or not
20 * @returns A boolean representing the environment is node or not
21 */
22var isNodeEnvironment = function () {
23 return typeof process === "object" && typeof require === "function";
24};
25/**
26 * @class
27 * Class containing function(s) related to the middleware pipelines.
28 */
29var MiddlewareFactory = /** @class */ (function () {
30 function MiddlewareFactory() {
31 }
32 /**
33 * @public
34 * @static
35 * Returns the default middleware chain an array with the middleware handlers
36 * @param {AuthenticationProvider} authProvider - The authentication provider instance
37 * @returns an array of the middleware handlers of the default middleware chain
38 */
39 MiddlewareFactory.getDefaultMiddlewareChain = function (authProvider) {
40 var middleware = [];
41 var authenticationHandler = new AuthenticationHandler_1.AuthenticationHandler(authProvider);
42 var retryHandler = new RetryHandler_1.RetryHandler(new RetryHandlerOptions_1.RetryHandlerOptions());
43 var telemetryHandler = new TelemetryHandler_1.TelemetryHandler();
44 var httpMessageHandler = new HTTPMessageHandler_1.HTTPMessageHandler();
45 middleware.push(authenticationHandler);
46 middleware.push(retryHandler);
47 if (isNodeEnvironment()) {
48 var redirectHandler = new RedirectHandler_1.RedirectHandler(new RedirectHandlerOptions_1.RedirectHandlerOptions());
49 middleware.push(redirectHandler);
50 }
51 middleware.push(telemetryHandler);
52 middleware.push(httpMessageHandler);
53 return middleware;
54 };
55 return MiddlewareFactory;
56}());
57exports.MiddlewareFactory = MiddlewareFactory;
58//# sourceMappingURL=MiddlewareFactory.js.map
\No newline at end of file