@@ -115,14 +115,14 @@ private void manageAnalysis(String jsonString, List<Analysis> cancelAnalysis, Li
115115 try {
116116 JSONObject obj = (JSONObject ) parser .parse (jsonString );
117117 List <Test > newTests = getNewTestsFromJson (obj , parser );
118- List <Analysis > changedNotStarted = getAnalysisFromJson (( String ) obj .get ("changeNotStarted" ), parser );
119- List <Analysis > noChangedNotStarted = getAnalysisFromJson (( String ) obj .get ("noChangeNotStarted" ), parser );
120- List <Analysis > changeTechReject = getAnalysisFromJson (( String ) obj .get ("changeTechReject" ), parser );
121- List <Analysis > noChangeTechReject = getAnalysisFromJson (( String ) obj .get ("noChangeTechReject" ), parser );
122- List <Analysis > changeBioReject = getAnalysisFromJson (( String ) obj .get ("changeBioReject" ), parser );
123- List <Analysis > noChangeBioReject = getAnalysisFromJson (( String ) obj .get ("noChangeBioReject" ), parser );
124- List <Analysis > changeNotValidated = getAnalysisFromJson (( String ) obj .get ("changeNotValidated" ), parser );
125- List <Analysis > noChangeNotValidated = getAnalysisFromJson (( String ) obj .get ("noChangeNotValidated" ), parser );
118+ List <Analysis > changedNotStarted = getAnalysisFromJson (obj .get ("changeNotStarted" ), parser );
119+ List <Analysis > noChangedNotStarted = getAnalysisFromJson (obj .get ("noChangeNotStarted" ), parser );
120+ List <Analysis > changeTechReject = getAnalysisFromJson (obj .get ("changeTechReject" ), parser );
121+ List <Analysis > noChangeTechReject = getAnalysisFromJson (obj .get ("noChangeTechReject" ), parser );
122+ List <Analysis > changeBioReject = getAnalysisFromJson (obj .get ("changeBioReject" ), parser );
123+ List <Analysis > noChangeBioReject = getAnalysisFromJson (obj .get ("noChangeBioReject" ), parser );
124+ List <Analysis > changeNotValidated = getAnalysisFromJson (obj .get ("changeNotValidated" ), parser );
125+ List <Analysis > noChangeNotValidated = getAnalysisFromJson (obj .get ("noChangeNotValidated" ), parser );
126126
127127 verifyStatusNotChanged (changedNotStarted , noChangedNotStarted , StatusService .AnalysisStatus .NotStarted ,
128128 changeBeans );
@@ -236,38 +236,37 @@ private String getStatusName(StatusService.AnalysisStatus status) {
236236 private List <Test > getNewTestsFromJson (JSONObject obj , JSONParser parser ) {
237237 List <Test > replacementTestList = new ArrayList <>();
238238
239- String replacementTests = (String ) obj .get ("replace" );
240- if (replacementTests == null ) {
241- return replacementTestList ;
242- }
243-
244- JSONArray replacementTestArray ;
245- try {
246- replacementTestArray = (JSONArray ) parser .parse (replacementTests );
247- } catch (ParseException e ) {
248- LogEvent .logDebug (e );
239+ JSONArray replacementTestArray = (JSONArray ) obj .get ("replace" );
240+ if (replacementTestArray == null ) {
249241 return replacementTestList ;
250242 }
251243
252244 for (Object testIdObject : replacementTestArray ) {
253- replacementTestList .add (SpringContext .getBean (TestService .class ).get ((String ) testIdObject ));
245+ String testId = (String ) testIdObject ;
246+ replacementTestList .add (SpringContext .getBean (TestService .class ).get ((String ) testId ));
254247 }
255248
256249 return replacementTestList ;
257250 }
258251
259- private List <Analysis > getAnalysisFromJson (String sampleIdList , JSONParser parser ) {
252+ private List <Analysis > getAnalysisFromJson (Object sampleIdList , JSONParser parser ) {
260253 List <Analysis > analysisList = new ArrayList <>();
261254
262255 if (sampleIdList == null ) {
263256 return analysisList ;
264257 }
265258
266259 JSONArray modifyAnalysisArray ;
267- try {
268- modifyAnalysisArray = (JSONArray ) parser .parse (sampleIdList );
269- } catch (ParseException e ) {
270- LogEvent .logDebug (e );
260+ if (sampleIdList instanceof String ) {
261+ try {
262+ modifyAnalysisArray = (JSONArray ) parser .parse ((String ) sampleIdList );
263+ } catch (ParseException e ) {
264+ LogEvent .logDebug (e );
265+ return analysisList ;
266+ }
267+ } else if (sampleIdList instanceof JSONArray ) {
268+ modifyAnalysisArray = (JSONArray ) sampleIdList ;
269+ } else {
271270 return analysisList ;
272271 }
273272
0 commit comments