@@ -2,6 +2,7 @@ const { HEADER_CONTENT_TYPE, MIME_JSON, DEFAULT_SPEC_VERSION_HEADER } =
22 require ( "./constants.js" ) ;
33const Commons = require ( "./commons.js" ) ;
44const CloudEvent = require ( "../../cloudevent.js" ) ;
5+ const ValidationError = require ( "../../validation_error.js" ) ;
56
67const {
78 isDefinedOrThrow,
@@ -10,15 +11,12 @@ const {
1011
1112function validateArgs ( payload , attributes ) {
1213 Array . of ( payload )
13- . filter ( ( p ) => isDefinedOrThrow ( p ,
14- { message : "payload is null or undefined" } ) )
15- . filter ( ( p ) => isStringOrObjectOrThrow ( p ,
16- { message : "payload must be an object or a string" } ) )
14+ . filter ( ( p ) => isDefinedOrThrow ( p , new ValidationError ( "payload is null or undefined" ) ) )
15+ . filter ( ( p ) => isStringOrObjectOrThrow ( p , new ValidationError ( "payload must be an object or a string" ) ) )
1716 . shift ( ) ;
1817
1918 Array . of ( attributes )
20- . filter ( ( a ) => isDefinedOrThrow ( a ,
21- { message : "attributes is null or undefined" } ) )
19+ . filter ( ( a ) => isDefinedOrThrow ( a , new ValidationError ( "attributes is null or undefined" ) ) )
2220 . shift ( ) ;
2321}
2422
@@ -58,22 +56,18 @@ BinaryHTTPReceiver.prototype.check = function(payload, headers) {
5856 const contentTypeHeader = sanityHeaders [ HEADER_CONTENT_TYPE ] ;
5957 const noContentType = ! this . allowedContentTypes . includes ( contentTypeHeader ) ;
6058 if ( contentTypeHeader && noContentType ) {
61- const err = new TypeError ( "invalid content type" ) ;
62- err . errors = [ sanityHeaders [ HEADER_CONTENT_TYPE ] ] ;
63- throw err ;
59+ throw new ValidationError ( "invalid content type" , [ sanityHeaders [ HEADER_CONTENT_TYPE ] ] ) ;
6460 }
6561
6662 this . requiredHeaders
6763 . filter ( ( required ) => ! sanityHeaders [ required ] )
6864 . forEach ( ( required ) => {
69- throw new TypeError ( `header '${ required } ' not found` ) ;
65+ throw new ValidationError ( `header '${ required } ' not found` ) ;
7066 } ) ;
7167
7268 if ( sanityHeaders [ DEFAULT_SPEC_VERSION_HEADER ] !==
7369 this . specversion ) {
74- const err = new TypeError ( "invalid spec version" ) ;
75- err . errors = [ sanityHeaders [ DEFAULT_SPEC_VERSION_HEADER ] ] ;
76- throw err ;
70+ throw new ValidationError ( "invalid spec version" , [ sanityHeaders [ DEFAULT_SPEC_VERSION_HEADER ] ] ) ;
7771 }
7872
7973 // No erros! Its contains the minimum required attributes
0 commit comments