@@ -231,12 +231,11 @@ public PortStatus acquirePort(int portIndex, Boolean force) {
231231 payload .put ("force" , force );
232232 payload .put ("port_id" , portIndex );
233233 String json = callMethod ("acquire" , payload );
234- JsonElement response = new JsonParser ().parse (json );
235234 Set <Entry <String , JsonElement >> entrySet ;
236235 try {
237- this .masterHandler = response . getAsJsonArray (). get ( 0 ). getAsJsonObject (). get ( "result" ).getAsJsonObject ()
236+ this .masterHandler = getResultFromResponse ( json ).getAsJsonObject ()
238237 .get ("handler" ).getAsString ();
239- entrySet = response . getAsJsonArray (). get ( 0 ). getAsJsonObject (). get ( "result" )
238+ entrySet = getResultFromResponse ( json )
240239 .getAsJsonObject ()
241240 .get ("ports" ).getAsJsonObject ().entrySet ();
242241 } catch (NullPointerException e ) {
@@ -316,8 +315,7 @@ public void clearProfile(String profileId) {
316315 public List <String > getProfileIds () {
317316 Map <String , Object > payload = createPayload ();
318317 String json = callMethod ("get_profile_list" , payload );
319- JsonElement response = new JsonParser ().parse (json );
320- JsonArray ids = response .getAsJsonArray ().get (0 ).getAsJsonObject ().get ("result" ).getAsJsonArray ();
318+ JsonArray ids = getResultFromResponse (json ).getAsJsonArray ();
321319 return StreamSupport .stream (ids .spliterator (), false )
322320 .map (JsonElement ::getAsString )
323321 .collect (Collectors .toList ());
@@ -359,8 +357,7 @@ private MetaData getAstfStatsMetaData() {
359357 public LatencyStats getLatencyStats () {
360358 Map <String , Object > payload = this .createPayload ();
361359 String json = this .callMethod ("get_latency_stats" , payload );
362- JsonElement response = new JsonParser ().parse (json );
363- JsonElement latencyStatsJsonElement = response .getAsJsonArray ().get (0 ).getAsJsonObject ().get ("result" );
360+ JsonElement latencyStatsJsonElement = getResultFromResponse (json );
364361 //only can parse a part of data, LatencyPortData need to be parsed manually.
365362 LatencyStats latencyStats = GSON .fromJson (latencyStatsJsonElement , LatencyStats .class );
366363 JsonElement latencyDataJsonElement = latencyStatsJsonElement .getAsJsonObject ().get ("data" );
@@ -387,9 +384,8 @@ public LatencyStats getLatencyStats() {
387384 public String getVersion () {
388385 Map <String , Object > payload = this .createPayload ();
389386 String json = callMethod ("get_version" , payload );
390- JsonElement response = new JsonParser ().parse (json );
391387 try {
392- return response . getAsJsonArray (). get ( 0 ). getAsJsonObject (). get ( "result" ).getAsJsonObject ()
388+ return getResultFromResponse ( json ).getAsJsonObject ()
393389 .get ("version" ).getAsString ();
394390 } catch (NullPointerException e ) {
395391 throw new IllegalStateException ("could not parse version" , e );
@@ -415,8 +411,7 @@ public List<String> getTemplateGroupNames(String profileId) {
415411 Map <String , Object > payload = createPayload (profileId );
416412 payload .put ("initialized" , false );
417413 String json = callMethod ("get_tg_names" , payload );
418- JsonElement response = new JsonParser ().parse (json );
419- JsonArray names = response .getAsJsonArray ().get (0 ).getAsJsonObject ().get ("result" ).getAsJsonObject ()
414+ JsonArray names = getResultFromResponse (json ).getAsJsonObject ()
420415 .get ("tg_names" ).getAsJsonArray ();
421416 return StreamSupport .stream (names .spliterator (), false )
422417 .map (JsonElement ::getAsString )
@@ -452,8 +447,7 @@ public Map<String, AstfStatistics> getTemplateGroupStatistics(String profileId,
452447 payload .put ("tg_ids" , new ArrayList <>(name2Id .values ()));
453448
454449 String json = callMethod ("get_tg_id_stats" , payload );
455- JsonElement response = new JsonParser ().parse (json );
456- JsonObject result = response .getAsJsonArray ().get (0 ).getAsJsonObject ().get ("result" ).getAsJsonObject ();
450+ JsonObject result = getResultFromResponse (json ).getAsJsonObject ();
457451 MetaData metaData = getAstfStatsMetaData ();
458452 name2Id .forEach ((tgName , tgId ) ->{
459453 try {
0 commit comments