router-options.js 885 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import {Errorf} from '@e22m4u/js-format';
  2. import {DebuggableService} from './debuggable-service.js';
  3. /**
  4. * Router options.
  5. */
  6. export class RouterOptions extends DebuggableService {
  7. /**
  8. * Request body bytes limit.
  9. *
  10. * @type {number}
  11. * @private
  12. */
  13. _requestBodyBytesLimit = 512000; // 512kb
  14. /**
  15. * Getter of request body bytes limit.
  16. *
  17. * @returns {number}
  18. */
  19. get requestBodyBytesLimit() {
  20. return this._requestBodyBytesLimit;
  21. }
  22. /**
  23. * Set request body bytes limit.
  24. *
  25. * @param {number} input
  26. * @returns {RouterOptions}
  27. */
  28. setRequestBodyBytesLimit(input) {
  29. if (typeof input !== 'number' || input < 0)
  30. throw new Errorf(
  31. 'The option "requestBodyBytesLimit" must be ' +
  32. 'a positive Number or 0, but %v was given.',
  33. input,
  34. );
  35. this._requestBodyBytesLimit = input;
  36. return this;
  37. }
  38. }