From 96aac0cfa290ba27e79d3983989c5ea69654116d Mon Sep 17 00:00:00 2001 From: Mihajlo Date: Wed, 24 Nov 2021 20:26:02 +0100 Subject: [PATCH] fix: Sas9JobExecutor appendRequest --- src/SASjs.ts | 1 + src/job-execution/Sas9JobExecutor.ts | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/src/SASjs.ts b/src/SASjs.ts index 5c78bee..e77d22f 100644 --- a/src/SASjs.ts +++ b/src/SASjs.ts @@ -1044,6 +1044,7 @@ export default class SASjs { this.sasjsConfig.serverUrl, this.sasjsConfig.serverType!, this.jobsPath, + this.requestClient, this.sasjsConfig.httpsAgentOptions ) diff --git a/src/job-execution/Sas9JobExecutor.ts b/src/job-execution/Sas9JobExecutor.ts index 7325bdf..6a572c1 100644 --- a/src/job-execution/Sas9JobExecutor.ts +++ b/src/job-execution/Sas9JobExecutor.ts @@ -5,6 +5,7 @@ import { ErrorResponse } from '../types/errors' import { convertToCSV, isRelativePath } from '../utils' import { BaseJobExecutor } from './JobExecutor' import { Sas9RequestClient } from '../request/Sas9RequestClient' +import { RequestClient } from '../request/RequestClient' /** * Job executor for SAS9 servers for use in Node.js environments. @@ -18,6 +19,7 @@ export class Sas9JobExecutor extends BaseJobExecutor { serverUrl: string, serverType: ServerType, private jobsPath: string, + private requestClientSingle: RequestClient, httpsAgentOptions?: https.AgentOptions ) { super(serverUrl, serverType) @@ -37,6 +39,8 @@ export class Sas9JobExecutor extends BaseJobExecutor { : '' }` + apiUrl = `${apiUrl}${config.debug ? '&_debug=131' : ''}` + let requestParams = { ...this.getRequestParams(config) } @@ -66,6 +70,7 @@ export class Sas9JobExecutor extends BaseJobExecutor { data && Object.keys(data).length ? 'multipart/form-data; boundary=' + (formData as any)._boundary : 'text/plain' + return await this.requestClient!.post( apiUrl, formData, @@ -76,6 +81,24 @@ export class Sas9JobExecutor extends BaseJobExecutor { Connection: 'Keep-Alive' } ) + .then((res: any) => { + let resString = res + + if (typeof res === 'object') { + resString = JSON.stringify(res) + } + + this.requestClientSingle!.appendRequest(resString, sasJob, config.debug) + }) + .catch((err: any) => { + let errString = err + + if (typeof err === 'object') { + errString = JSON.stringify(errString) + } + + this.requestClientSingle!.appendRequest(errString, sasJob, config.debug) + }) } private getRequestParams(config: any): any {