Ejemplo n.º 1
0
  private void updateConstructionDB(ArrayList<ArrayList<String>> list)
      throws java.sql.SQLException, ClassNotSupportedException, java.lang.Exception {
    if (DetIDGenerator.updateCB) {
      c.disconnect();

      configureExportDatabaseConnection();
      c.connect();

      c.beginTransaction();
      c.executeQuery("delete tec_detid");
      c.executeQuery("delete tob_detid");

      for (ArrayList<String> record : list) {
        int dcuID = Integer.parseInt(record.get(0));
        int detID = Integer.parseInt(record.get(1));
        DetIdConverter det = new DetIdConverter(detID);
        if (det.getSubDetector() == 6) { // TEC
          TECDetIdConverter d = new TECDetIdConverter(detID);
          d.compact();
          String query =
              "insert into tec_detid (DETECTOR,DISK,SECTOR,FRONT_BACK,RING,POSITION,STEREO,DCUID,DETID) values (\'TEC"
                  + (d.getTEC() == 1 ? "-" : "+")
                  + "\',"
                  + d.getWheel()
                  + ","
                  + d.getPetal()
                  + ",'"
                  + (d.getFrontBack() == 1 ? "F" : "B")
                  + "',"
                  + d.getRing()
                  + ","
                  + d.getModNumber()
                  + ",'"
                  + ((d.getStereo() == 1) ? "S" : (d.getStereo() == 0 ? "G" : "M"))
                  + "',"
                  + dcuID
                  + ","
                  + detID
                  + ")";
          System.out.println(query);
          c.executeQuery(query);
        }
        if (det.getSubDetector() == 5) { // TOB
          TOBDetIdConverter d = new TOBDetIdConverter(detID);
          d.compact();
          String query =
              "insert into tob_detid (LAYER,ROD,FRONT_BACK,POSITION,STEREO,DCUID,DETID) values ("
                  + d.getLayer()
                  + ","
                  + d.getRod()
                  + ",'"
                  + (d.getFrontBack() == 1 ? "F" : "B")
                  + "',"
                  + d.getModNumber()
                  + ",'"
                  + ((d.getStereo() == 1) ? "S" : (d.getStereo() == 0 ? "U" : "R"))
                  + "',"
                  + dcuID
                  + ","
                  + detID
                  + ")";
          System.out.println(query);
          c.executeQuery(query);
          // System.out.println(dcuID+","+detID+",TOB,"+d.getLayer()+","+d.getRod()+","+d.getFrontBack()+","+d.getModNumber()+","+d.getStereo());
        }
      }
      c.commit();
    }
  }