You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					44 lines
				
				1.4 KiB
			
		
		
			
		
	
	
					44 lines
				
				1.4 KiB
			| 
											3 years ago
										 | 'use strict' | ||
|  | 
 | ||
|  | const { kFourOhFourContext, kReplySerializerDefault } = require('./symbols.js') | ||
|  | 
 | ||
|  | // Objects that holds the context of every request
 | ||
|  | // Every route holds an instance of this object.
 | ||
|  | function Context (schema, handler, Reply, Request, contentTypeParser, config, errorHandler, bodyLimit, logLevel, logSerializers, attachValidation, replySerializer, schemaErrorFormatter) { | ||
|  |   this.schema = schema | ||
|  |   this.handler = handler | ||
|  |   this.Reply = Reply | ||
|  |   this.Request = Request | ||
|  |   this.contentTypeParser = contentTypeParser | ||
|  |   this.onRequest = null | ||
|  |   this.onSend = null | ||
|  |   this.onError = null | ||
|  |   this.onTimeout = null | ||
|  |   this.preHandler = null | ||
|  |   this.onResponse = null | ||
|  |   this.config = config | ||
|  |   this.errorHandler = errorHandler | ||
|  |   this._middie = null | ||
|  |   this._parserOptions = { limit: bodyLimit || null } | ||
|  |   this.logLevel = logLevel | ||
|  |   this.logSerializers = logSerializers | ||
|  |   this[kFourOhFourContext] = null | ||
|  |   this.attachValidation = attachValidation | ||
|  |   this[kReplySerializerDefault] = replySerializer | ||
|  |   this.schemaErrorFormatter = schemaErrorFormatter || defaultSchemaErrorFormatter | ||
|  | } | ||
|  | 
 | ||
|  | function defaultSchemaErrorFormatter (errors, dataVar) { | ||
|  |   let text = '' | ||
|  |   const separator = ', ' | ||
|  | 
 | ||
|  |   // eslint-disable-next-line no-var
 | ||
|  |   for (var i = 0; i !== errors.length; ++i) { | ||
|  |     const e = errors[i] | ||
|  |     text += dataVar + (e.dataPath || '') + ' ' + e.message + separator | ||
|  |   } | ||
|  |   return new Error(text.slice(0, -separator.length)) | ||
|  | } | ||
|  | 
 | ||
|  | module.exports = Context |