@@ -23,7 +23,6 @@ import (
2323 "io/ioutil"
2424 "net/http"
2525 "os"
26- "reflect"
2726 "strconv"
2827 "strings"
2928 "sync"
@@ -403,6 +402,7 @@ func (c *ApiClient) apiCall(command string, payload map[string]interface{}, sid
403402
404403 req .Header .Set ("Content-Type" , "application/json" )
405404 req .Header .Set ("User-Agent" , c .userAgent )
405+ req .Header .Set ("Accept" , "*/*" )
406406
407407 if command != "login" {
408408 req .Header .Set ("X-chkp-sid" , sid )
@@ -444,60 +444,7 @@ func (c *ApiClient) apiCall(command string, payload map[string]interface{}, sid
444444 }
445445
446446 if ! res .Success {
447- resCode := ""
448- resMsg := ""
449- if code := res .GetData ()["code" ]; code != nil {
450- resCode = code .(string )
451- }
452- if msg := res .GetData ()["message" ]; msg != nil {
453- resMsg = msg .(string )
454- }
455-
456- fullErrorMsg := "failed to execute API call" +
457- "\n Status: " + res .StatusCode +
458- "\n Code: " + resCode +
459- "\n Message: " + resMsg
460-
461- if errorMsg := res .data ["errors" ]; errorMsg != nil {
462- fullErrorMsg += "\n Errors: "
463- errorMsgType := reflect .TypeOf (errorMsg ).Kind ()
464- if errorMsgType == reflect .String {
465- fullErrorMsg += errorMsg .(string ) + "\n "
466- } else {
467- errorsList := res .data ["errors" ].([]interface {})
468- for i := range errorsList {
469- fullErrorMsg += "\n " + strconv .Itoa (i + 1 ) + ". " + errorsList [i ].(map [string ]interface {})["message" ].(string )
470- }
471- }
472- }
473-
474- if warningMsg := res .data ["warnings" ]; warningMsg != nil {
475- fullErrorMsg += "\n Warnings: "
476- warningMsgType := reflect .TypeOf (warningMsg ).Kind ()
477- if warningMsgType == reflect .String {
478- fullErrorMsg += warningMsg .(string ) + "\n "
479- } else {
480- warningsList := res .data ["warnings" ].([]interface {})
481- for i := range warningsList {
482- fullErrorMsg += "\n " + strconv .Itoa (i + 1 ) + ". " + warningsList [i ].(map [string ]interface {})["message" ].(string )
483- }
484- }
485- }
486-
487- if blockingError := res .data ["blocking-errors" ]; blockingError != nil {
488- fullErrorMsg += "\n Blocking errors: "
489- warningMsgType := reflect .TypeOf (blockingError ).Kind ()
490- if warningMsgType == reflect .String {
491- fullErrorMsg += blockingError .(string ) + "\n "
492- } else {
493- blockingErrorsList := res .data ["blocking-errors" ].([]interface {})
494- for i := range blockingErrorsList {
495- fullErrorMsg += "\n " + strconv .Itoa (i + 1 ) + ". " + blockingErrorsList [i ].(map [string ]interface {})["message" ].(string )
496- }
497- }
498- }
499-
500- res .ErrorMsg = fullErrorMsg
447+ res .ErrorMsg = res .buildGenericErrMsg ()
501448 }
502449
503450 if waitForTask == true && res .Success && command != "show-task" {
@@ -814,22 +761,7 @@ func (c *ApiClient) waitForTasks(taskObjects []interface{}) APIResponse {
814761 fmt .Println ("Problem showing tasks, try again" )
815762
816763 }
817-
818- if taskRes .Success {
819- if v , ok := taskRes .GetData ()["tasks" ]; ok {
820- tasks := v .([]interface {})
821- if len (tasks ) > 0 {
822- for _ , task := range tasks {
823- status := task .(map [string ]interface {})["status" ].(string )
824- if status == "failed" || status == "partially succeeded" {
825- taskRes .Success = false
826- break
827- }
828- }
829- }
830- }
831- }
832-
764+ checkTasksStatus (& taskRes )
833765 return taskRes
834766
835767}
@@ -842,14 +774,16 @@ task_result: api_response returned from "show-task" command
842774return:
843775*/
844776func checkTasksStatus (taskResult * APIResponse ) {
845-
846- for _ , task := range taskResult .data ["tasks" ].([]interface {}) {
847- if task .(map [string ]interface {})["status" ] == "failed" || task .(map [string ]interface {})["status" ] == "partially succeeded" {
848- taskResult .setSuccessStatus (false )
849- break
777+ if v := taskResult .data ["tasks" ]; v != nil {
778+ for _ , task := range taskResult .data ["tasks" ].([]interface {}) {
779+ if task .(map [string ]interface {})["status" ] == "failed" || task .(map [string ]interface {})["status" ] == "partially succeeded" {
780+ taskResult .setSuccessStatus (false )
781+ taskResult .StatusCode = ""
782+ taskResult .setErrMsg (taskResult .buildGenericErrMsg ())
783+ break
784+ }
850785 }
851786 }
852-
853787}
854788
855789/*
0 commit comments