예제 #1
0
 private void parse() {
   if (isDone()) {
     MIOutput out = getMIOutput();
     MIResultRecord rr = out.getMIResultRecord();
     if (rr != null) {
       MIResult[] results = rr.getMIResults();
       for (int i = 0; i < results.length; i++) {
         String var = results[i].getVariable();
         if (var.equals("groups")) { // $NON-NLS-1$
           MIValue val = results[i].getMIValue();
           if (val instanceof MIList) {
             parseGroups((MIList) val);
           }
         } else if (var.equals("threads")) { // $NON-NLS-1$
           // Re-use the MIThreadInfoInfo parsing
           fThreadInfo = new MIThreadInfoInfo(out);
         }
       }
     }
   }
   if (fGroupList == null) {
     fGroupList = new IThreadGroupInfo[0];
   }
   if (fThreadInfo == null) {
     fThreadInfo = new MIThreadInfoInfo(null);
   }
 }
예제 #2
0
 void parse() {
   if (isDone()) {
     MIOutput out = getMIOutput();
     MIOOBRecord[] oobs = out.getMIOOBRecords();
     for (int i = 0; i < oobs.length; i++) {
       if (oobs[i] instanceof MIConsoleStreamOutput) {
         MIStreamRecord cons = (MIStreamRecord) oobs[i];
         String str = cons.getString();
         // We are interested in the signal info
         parseLine(str);
       }
     }
   }
 }
예제 #3
0
 /** sample output: Catchpoint 3 (catch) */
 protected void parse() {
   List aList = new ArrayList();
   try {
     if (isDone()) {
       MIOutput out = getMIOutput();
       MIOOBRecord[] oobs = out.getMIOOBRecords();
       for (int i = 0; i < oobs.length; i++) {
         if (oobs[i] instanceof MIConsoleStreamOutput) {
           MIStreamRecord cons = (MIStreamRecord) oobs[i];
           String str = cons.getString();
           // We are interested in the signal info
           if (parseCatchpoint(str.trim(), aList)) break;
         }
       }
     }
   } finally {
     breakpoints = (MIBreakpoint[]) aList.toArray(new MIBreakpoint[aList.size()]);
   }
 }