Improve docs remove env variables

This commit is contained in:
igoroctaviano 2021-05-13 09:30:52 -03:00
parent 2ea227ca06
commit 05444f48d4
2 changed files with 17 additions and 18 deletions

View File

@ -85,12 +85,6 @@ module.exports = (env, argv, { SRC_DIR, DIST_DIR }) => {
'process.env.USE_LOCIZE': JSON.stringify(process.env.USE_LOCIZE || ''), 'process.env.USE_LOCIZE': JSON.stringify(process.env.USE_LOCIZE || ''),
'process.env.LOCIZE_PROJECTID': JSON.stringify(process.env.LOCIZE_PROJECTID || ''), 'process.env.LOCIZE_PROJECTID': JSON.stringify(process.env.LOCIZE_PROJECTID || ''),
'process.env.LOCIZE_API_KEY': JSON.stringify(process.env.LOCIZE_API_KEY || ''), 'process.env.LOCIZE_API_KEY': JSON.stringify(process.env.LOCIZE_API_KEY || ''),
/** DICOMWebClient Retry options */
'process.env.DICOMWEB_CLIENT_RETRY_RETRIES': JSON.stringify(process.env.DICOMWEB_CLIENT_RETRY_RETRIES || 5),
'process.env.DICOMWEB_CLIENT_RETRY_FACTOR': JSON.stringify(process.env.DICOMWEB_CLIENT_RETRY_FACTOR || 3),
'process.env.DICOMWEB_CLIENT_RETRY_MIN_TIMEOUT': JSON.stringify(process.env.DICOMWEB_CLIENT_RETRY_MIN_TIMEOUT || 1 * 1000),
'process.env.DICOMWEB_CLIENT_RETRY_MAX_TIMEOUT': JSON.stringify(process.env.DICOMWEB_CLIENT_RETRY_MAX_TIMEOUT || 60 * 1000),
'process.env.DICOMWEB_CLIENT_RETRY_RANDOMIZE': JSON.stringify(process.env.DICOMWEB_CLIENT_RETRY_RANDOMIZE || true),
}), }),
], ],
// Fix: https://github.com/webpack-contrib/css-loader/issues/447#issuecomment-285598881 // Fix: https://github.com/webpack-contrib/css-loader/issues/447#issuecomment-285598881

View File

@ -1,11 +1,12 @@
import retry from 'retry'; import retry from 'retry';
const defaultRetryOptions = { const defaultRetryOptions = {
retries: process.env.DICOMWEB_CLIENT_RETRY_RETRIES || 5, retries: 5,
factor: process.env.DICOMWEB_CLIENT_RETRY_FACTOR || 3, factor: 3,
minTimeout: process.env.DICOMWEB_CLIENT_RETRY_MIN_TIMEOUT || 1 * 1000, minTimeout: 1 * 1000,
maxTimeout: process.env.DICOMWEB_CLIENT_RETRY_MAX_TIMEOUT || 60 * 1000, maxTimeout: 60 * 1000,
randomize: process.env.DICOMWEB_CLIENT_RETRY_RANDOMIZE || true, randomize: true,
retryableStatusCodes: [429, 500],
}; };
let retryOptions = { ...defaultRetryOptions }; let retryOptions = { ...defaultRetryOptions };
@ -28,9 +29,11 @@ const xhrRetryRequestHook = (request, metadata) => {
operation.attempt(function operationAttempt(currentAttempt) { operation.attempt(function operationAttempt(currentAttempt) {
const originalOnReadyStateChange = request.onreadystatechange; const originalOnReadyStateChange = request.onreadystatechange;
/** Overriding/extending XHR function */
request.onreadystatechange = function onReadyStateChange() { request.onreadystatechange = function onReadyStateChange() {
originalOnReadyStateChange.call(request); originalOnReadyStateChange.call(request);
if (request.status === 429 || request.status >= 500) {
if (retryOptions.retryableStatusCodes.includes(request.status)) {
const errorMessage = `Attempt to request ${url} failed.`; const errorMessage = `Attempt to request ${url} failed.`;
const attemptFailedError = new Error(errorMessage); const attemptFailedError = new Error(errorMessage);
operation.retry(attemptFailedError); operation.retry(attemptFailedError);
@ -43,6 +46,7 @@ const xhrRetryRequestHook = (request, metadata) => {
}); });
} }
/** Overriding/extending XHR function */
const originalRequestSend = request.send; const originalRequestSend = request.send;
request.send = faultTolerantRequestSend; request.send = faultTolerantRequestSend;
@ -60,12 +64,13 @@ const xhrRetryRequestHook = (request, metadata) => {
* maxTimeout: 60 * 1000 * maxTimeout: 60 * 1000
* randomize: true * randomize: true
* *
* @param {*} options * @param {object} options
* @param {*} options.retires number of retries * @param {number} options.retires number of retries
* @param {*} options.factor factor * @param {number} options.factor factor
* @param {*} options.minTimeout the min timeout * @param {number} options.minTimeout the min timeout
* @param {*} options.maxTimeout the max timeout * @param {number} options.maxTimeout the max timeout
* @param {*} options.randomize randomize * @param {boolean} options.randomize randomize
* @param {array} options.retryableStatusCodes status codes that can trigger retry
* @returns {function} the configured retry request function * @returns {function} the configured retry request function
*/ */
export const getXHRRetryRequestHook = (options = {}) => { export const getXHRRetryRequestHook = (options = {}) => {