예제 #1
0
 private static ListePset importPset(InputStreamReader in, boolean log) {
   DatenPset datenPset = null;
   ListePset liste = new ListePset();
   try {
     int event;
     XMLInputFactory inFactory = XMLInputFactory.newInstance();
     inFactory.setProperty(XMLInputFactory.IS_COALESCING, Boolean.FALSE);
     XMLStreamReader parser;
     parser = inFactory.createXMLStreamReader(in);
     while (parser.hasNext()) {
       event = parser.next();
       if (event == XMLStreamConstants.START_ELEMENT) {
         // String t = parser.getLocalName();
         switch (parser.getLocalName()) {
           case DatenPset.PROGRAMMSET:
             datenPset = new DatenPset();
             if (!get(parser, DatenPset.PROGRAMMSET, DatenPset.COLUMN_NAMES_, datenPset.arr)) {
               datenPset = null;
             } else {
               liste.add(datenPset);
             }
             break;
           case DatenProg.PROGRAMM:
             if (datenPset != null) {
               DatenProg datenProg = new DatenProg();
               if (get(parser, DatenProg.PROGRAMM, DatenProg.COLUMN_NAMES_, datenProg.arr)) {
                 datenPset.addProg(datenProg);
               }
             }
             break;
         }
       }
     }
     in.close();
   } catch (Exception ex) {
     if (log) {
       Log.fehlerMeldung(467810360, ex);
     }
     return null;
   }
   if (liste.isEmpty()) {
     return null;
   } else {
     return liste;
   }
 }