@@ -19,8 +19,8 @@ function jsonscriptProxy(options, js) {
1919 }
2020
2121 js = js || new JSONScript ( options . jsonscript || { strict : true } ) ;
22- for ( var key in options . services )
23- js . addExecutor ( key , getExecutor ( options . services [ key ] ) ) ;
22+ for ( var name in options . services )
23+ js . addExecutor ( name , getExecutor ( name , options . services [ name ] ) ) ;
2424 evaluator . js = js ;
2525
2626 return evaluator ;
@@ -51,9 +51,13 @@ function jsonscriptProxy(options, js) {
5151 }
5252
5353
54- function getExecutor ( service ) {
54+ function getExecutor ( serviceName , service ) {
5555 var processResponse = processResponseFunc ( service . processResponse || options . processResponse ) ;
5656 addExecutorMethods ( ) ;
57+ var serviceInfo = {
58+ name : serviceName ,
59+ basePath : service . basePath
60+ } ;
5761 return execRouter ;
5862
5963 function execRouter ( args ) {
@@ -66,7 +70,7 @@ function jsonscriptProxy(options, js) {
6670 return new ( options . Promise || Promise ) ( function ( resolve , reject ) {
6771 request [ args . method ] ( opts , function ( err , resp ) {
6872 if ( err ) return reject ( err ) ;
69- try { resolve ( processResponse ( resp , args ) ) ; }
73+ try { resolve ( processResponse ( resp , args , serviceInfo ) ) ; }
7074 catch ( e ) { reject ( e ) ; }
7175 } ) ;
7276 } ) ;
@@ -110,8 +114,9 @@ function bodyProcessResponse(resp) {
110114}
111115
112116
113- function defaultProcessResponse ( resp , args ) {
117+ function defaultProcessResponse ( resp , args , service ) {
114118 resp = _ . pick ( resp , 'statusCode' , 'headers' , 'body' ) ;
119+ resp . service = service ;
115120 resp . request = args ;
116121 return resp ;
117122}
0 commit comments