Exemple #1
0
  /**
   * Constructs the entity from an SQL ResultSet.
   *
   * <p>This Constructor is not publicly available as it should be used by {@link RelationManager}
   * only.
   *
   * @param result The SQL ResultSet
   */
  CourseElement(RelationManager manager, java.sql.ResultSet result)
      throws de.fu.weave.orm.DatabaseException {
    this.manager = manager;
    timekey(true);
    try {
      _id = result.getInt("id");
      fetched_id = true;
      _timekey = result.getTimestamp("timekey");
      fetched_timekey = true;
      _name = result.getString("name");
      if (result.wasNull()) {
        _name = null;
      }
      fetched_name = true;
      ref_partOf = result.getInt("part_of");
      _duration = result.getInt("duration");
      fetched_duration = true;
      ref_type = result.getInt("type");
      if (result.wasNull()) {
        ref_type = null;
      }
      _required = result.getBoolean("required");
      fetched_required = true;

    } catch (java.sql.SQLException e) {
      throw new de.fu.weave.orm.DatabaseException(e);
    }
    exists = true;
  }
  /** Populates a DTO with data from a ResultSet */
  protected void populateDto(Projects dto, ResultSet rs) throws SQLException {
    dto.setIdprojects(rs.getInt(COLUMN_IDPROJECTS));
    dto.setName(rs.getString(COLUMN_NAME));
    dto.setDescription(rs.getString(COLUMN_DESCRIPTION));
    dto.setStartDate(rs.getDate(COLUMN_START_DATE));
    dto.setEndDate(rs.getDate(COLUMN_END_DATE));
    dto.setStatus(rs.getInt(COLUMN_STATUS));
    if (rs.wasNull()) {
      dto.setStatusNull(true);
    }

    dto.setType(rs.getInt(COLUMN_TYPE));
    if (rs.wasNull()) {
      dto.setTypeNull(true);
    }

    dto.setCompanyId(rs.getInt(COLUMN_COMPANY_ID));
    if (rs.wasNull()) {
      dto.setCompanyIdNull(true);
    }

    dto.setBranchId(rs.getInt(COLUMN_BRANCH_ID));
    if (rs.wasNull()) {
      dto.setBranchIdNull(true);
    }
  }
  /** @throws Exception If failed. */
  public void testObject() throws Exception {
    ResultSet rs = stmt.executeQuery(SQL);

    TestObjectField f1 = new TestObjectField(100, "AAAA");
    TestObjectField f2 = new TestObjectField(500, "BBBB");

    TestObject o = createObjectWithData(1);

    assertTrue(rs.next());

    assertEquals(f1.toString(), rs.getObject("f1"));
    assertEquals(f1.toString(), rs.getObject(16));

    assertEquals(f2.toString(), rs.getObject("f2"));
    assertEquals(f2.toString(), rs.getObject(17));

    assertNull(rs.getObject("f3"));
    assertTrue(rs.wasNull());
    assertNull(rs.getObject(18));
    assertTrue(rs.wasNull());

    assertEquals(o.toString(), rs.getObject("_val"));
    assertEquals(o.toString(), rs.getObject(19));

    assertFalse(rs.next());
  }
  @Override
  public NotificationGroup processSingleResultAllColumns(ResultSet resultSet) {

    try {
      if ((resultSet == null) || resultSet.isClosed()) {
        return null;
      }

      Integer id = resultSet.getInt("ID");
      if (resultSet.wasNull()) id = null;

      String name = resultSet.getString("NAME");
      if (resultSet.wasNull()) name = null;

      String uppercaseName = resultSet.getString("UPPERCASE_NAME");
      if (resultSet.wasNull()) uppercaseName = null;

      String emailAddresses = resultSet.getString("EMAIL_ADDRESSES");
      if (resultSet.wasNull()) emailAddresses = null;

      NotificationGroup notificationGroup =
          new NotificationGroup(id, name, uppercaseName, emailAddresses);

      return notificationGroup;
    } catch (Exception e) {
      logger.error(e.toString() + System.lineSeparator() + StackTrace.getStringFromStackTrace(e));
      return null;
    }
  }
  protected CFSecurityTSecGroupBuff unpackTSecGroupResultSetToBuff(ResultSet resultSet)
      throws SQLException {
    final String S_ProcName = "unpackTSecGroupResultSetToBuff";
    int idxcol = 1;
    CFSecurityTSecGroupBuff buff = schema.getFactoryTSecGroup().newBuff();
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedAt(null);
      } else {
        buff.setCreatedAt(CFSecurityMySqlSchema.convertTimestampString(colString));
      }
    }
    idxcol++;
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedByUserId(null);
      } else {
        buff.setCreatedByUserId(UUID.fromString(colString));
      }
    }
    idxcol++;
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedAt(null);
      } else {
        buff.setUpdatedAt(CFSecurityMySqlSchema.convertTimestampString(colString));
      }
    }
    idxcol++;
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedByUserId(null);
      } else {
        buff.setUpdatedByUserId(UUID.fromString(colString));
      }
    }
    idxcol++;
    buff.setRequiredTenantId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredTSecGroupId(resultSet.getInt(idxcol));
    idxcol++;
    buff.setRequiredName(resultSet.getString(idxcol));
    idxcol++;

    buff.setRequiredRevision(resultSet.getInt(idxcol));
    return (buff);
  }
  protected CFAccFeeDetailBuff unpackFeeDetailResultSetToBuff(ResultSet resultSet)
      throws SQLException {
    final String S_ProcName = "unpackFeeDetailResultSetToBuff";
    int idxcol = 1;
    CFAccFeeDetailBuff buff = schema.getFactoryFeeDetail().newBuff();
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedByUserId(null);
      } else {
        buff.setCreatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedAt(null);
      } else {
        buff.setCreatedAt(CFAccSybaseSchema.convertTimestampString(colString));
      }
      idxcol++;
      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedByUserId(null);
      } else {
        buff.setUpdatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedAt(null);
      } else {
        buff.setUpdatedAt(CFAccSybaseSchema.convertTimestampString(colString));
      }
      idxcol++;
    }
    buff.setRequiredTenantId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredFeeId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredFeeDetailId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredDescription(resultSet.getString(idxcol));
    idxcol++;
    buff.setRequiredAmountCharged(resultSet.getBigDecimal(idxcol));
    idxcol++;
    buff.setRequiredRevision(resultSet.getInt(idxcol));
    return (buff);
  }
  protected CFSecuritySecFormBuff unpackSecFormResultSetToBuff(ResultSet resultSet)
      throws SQLException {
    final String S_ProcName = "unpackSecFormResultSetToBuff";
    int idxcol = 1;
    CFSecuritySecFormBuff buff = schema.getFactorySecForm().newBuff();
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedByUserId(null);
      } else {
        buff.setCreatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedAt(null);
      } else {
        buff.setCreatedAt(CFCrmDb2LUWSchema.convertTimestampString(colString));
      }
      idxcol++;
      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedByUserId(null);
      } else {
        buff.setUpdatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedAt(null);
      } else {
        buff.setUpdatedAt(CFCrmDb2LUWSchema.convertTimestampString(colString));
      }
      idxcol++;
    }
    buff.setRequiredClusterId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredSecFormId(resultSet.getInt(idxcol));
    idxcol++;
    buff.setRequiredSecAppId(resultSet.getInt(idxcol));
    idxcol++;
    buff.setRequiredJEEServletMapName(resultSet.getString(idxcol));
    idxcol++;

    buff.setRequiredRevision(resultSet.getInt(idxcol));
    return (buff);
  }
  protected CFInternetURLProtocolBuff unpackURLProtocolResultSetToBuff(ResultSet resultSet)
      throws SQLException {
    final String S_ProcName = "unpackURLProtocolResultSetToBuff";
    int idxcol = 1;
    CFInternetURLProtocolBuff buff = schema.getFactoryURLProtocol().newBuff();
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedByUserId(null);
      } else {
        buff.setCreatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedAt(null);
      } else {
        buff.setCreatedAt(CFDbTestPgSqlSchema.convertTimestampString(colString));
      }
      idxcol++;
      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedByUserId(null);
      } else {
        buff.setUpdatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedAt(null);
      } else {
        buff.setUpdatedAt(CFDbTestPgSqlSchema.convertTimestampString(colString));
      }
      idxcol++;
    }
    buff.setRequiredURLProtocolId(resultSet.getInt(idxcol));
    idxcol++;
    buff.setRequiredName(resultSet.getString(idxcol));
    idxcol++;
    buff.setRequiredDescription(resultSet.getString(idxcol));
    idxcol++;
    buff.setRequiredIsSecure(resultSet.getBoolean(idxcol));
    idxcol++;

    buff.setRequiredRevision(resultSet.getInt(idxcol));
    return (buff);
  }
  protected CFSecurityHostNodeBuff unpackHostNodeResultSetToBuff(ResultSet resultSet)
      throws SQLException {
    final String S_ProcName = "unpackHostNodeResultSetToBuff";
    int idxcol = 1;
    CFSecurityHostNodeBuff buff = schema.getFactoryHostNode().newBuff();
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedByUserId(null);
      } else {
        buff.setCreatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedAt(null);
      } else {
        buff.setCreatedAt(CFSecurityPgSqlSchema.convertTimestampString(colString));
      }
      idxcol++;
      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedByUserId(null);
      } else {
        buff.setUpdatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedAt(null);
      } else {
        buff.setUpdatedAt(CFSecurityPgSqlSchema.convertTimestampString(colString));
      }
      idxcol++;
    }
    buff.setRequiredClusterId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredHostNodeId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredDescription(resultSet.getString(idxcol));
    idxcol++;
    buff.setRequiredHostName(resultSet.getString(idxcol));
    idxcol++;

    buff.setRequiredRevision(resultSet.getInt(idxcol));
    return (buff);
  }
  protected CFSecurityISOCountryLanguageBuff unpackISOCountryLanguageResultSetToBuff(
      ResultSet resultSet) throws SQLException {
    final String S_ProcName = "unpackISOCountryLanguageResultSetToBuff";
    int idxcol = 1;
    CFSecurityISOCountryLanguageBuff buff = schema.getFactoryISOCountryLanguage().newBuff();
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedAt(null);
      } else {
        buff.setCreatedAt(CFCrmMySqlSchema.convertTimestampString(colString));
      }
    }
    idxcol++;
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedByUserId(null);
      } else {
        buff.setCreatedByUserId(UUID.fromString(colString));
      }
    }
    idxcol++;
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedAt(null);
      } else {
        buff.setUpdatedAt(CFCrmMySqlSchema.convertTimestampString(colString));
      }
    }
    idxcol++;
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedByUserId(null);
      } else {
        buff.setUpdatedByUserId(UUID.fromString(colString));
      }
    }
    idxcol++;
    buff.setRequiredISOCountryId(resultSet.getShort(idxcol));
    idxcol++;
    buff.setRequiredISOLanguageId(resultSet.getShort(idxcol));
    idxcol++;

    buff.setRequiredRevision(resultSet.getInt(idxcol));
    return (buff);
  }
  protected CFCrmMemoDataBuff unpackMemoDataResultSetToBuff(ResultSet resultSet)
      throws SQLException {
    final String S_ProcName = "unpackMemoDataResultSetToBuff";
    int idxcol = 1;
    CFCrmMemoDataBuff buff = schema.getFactoryMemoData().newBuff();
    {
      String colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedByUserId(null);
      } else {
        buff.setCreatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setCreatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setCreatedAt(null);
      } else {
        buff.setCreatedAt(CFCrmMSSqlSchema.convertTimestampString(colString));
      }
      idxcol++;
      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedByUserId(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedByUserId(null);
      } else {
        buff.setUpdatedByUserId(UUID.fromString(colString));
      }
      idxcol++;

      colString = resultSet.getString(idxcol);
      if (resultSet.wasNull()) {
        buff.setUpdatedAt(null);
      } else if ((colString == null) || (colString.length() <= 0)) {
        buff.setUpdatedAt(null);
      } else {
        buff.setUpdatedAt(CFCrmMSSqlSchema.convertTimestampString(colString));
      }
      idxcol++;
    }
    buff.setRequiredTenantId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredMemoId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredContactId(resultSet.getLong(idxcol));
    idxcol++;
    buff.setRequiredMemo(resultSet.getString(idxcol));
    idxcol++;
    buff.setRequiredRevision(resultSet.getInt(idxcol));
    return (buff);
  }
Exemple #12
0
  @SuppressWarnings({"rawtypes", "unchecked"})
  private static List handlerResult(ResultSet rs, Class clazz)
      throws IllegalArgumentException, SQLException, InstantiationException, IllegalAccessException,
          InvocationTargetException {
    List list = new ArrayList();
    Object obj = null;
    Map map = handlerClass(clazz);
    Field[] fields = clazz.getDeclaredFields();

    while (rs.next()) {
      obj = clazz.newInstance();
      for (Field f : fields) {

        String name = f.getName();

        Method setMe = (Method) map.get(name + "_setMethod");

        String returnType = (String) map.get(name + "_returnType");

        logger.info(name + ":" + rs.getString(name));

        if (setMe == null || returnType == null) continue;

        Object ret = null;

        try {
          if (returnType.equals("java.lang.String")) {
            ret = rs.getString(name);
          } else if (returnType.equals("java.lang.Long")) {
            ret = rs.getLong(name);
            if (rs.wasNull()) {
              ret = null;
            }
          } else if (returnType.equals("java.lang.Integer")) {
            ret = rs.getInt(name);
            if (rs.wasNull()) {
              ret = null;
            }
          } else if (returnType.equals("java.util.Date")) {
            ret = rs.getDate(name);
          } else if (returnType.equals("java.lang.Short")) {
            ret = rs.getShort(name);
          } else {
            throw new IllegalAccessException(returnType); // TODO
          }
        } catch (SQLException e) {
          logger.error(e.getMessage(), e);
        }

        setMe.invoke(obj, ret);
      }
      list.add(obj);
    }
    return list;
  }
  private Operator fromResultSet(ResultSet rs) throws SQLException {
    long id = rs.getLong(1);
    if (rs.wasNull()) id = -1;

    String name = rs.getString(2);
    if (rs.wasNull()) name = "";

    int binding = rs.getInt(3);
    if (rs.wasNull()) binding = -1;

    String notation = rs.getString(4);
    if (rs.wasNull()) notation = "";

    String symbol = rs.getString(5);
    if (rs.wasNull()) symbol = "";

    String symbol_intern = rs.getString(6);
    if (rs.wasNull()) symbol_intern = "";

    int arity = rs.getInt(7);
    if (rs.wasNull()) arity = -1;

    String description = rs.getString(8);
    if (rs.wasNull()) description = "";

    String comment = rs.getString(9);
    if (rs.wasNull()) comment = "";
    Operator operator =
        new Operator(
            id, name, binding, notation, symbol, symbol_intern, arity, description, comment);
    return operator;
  }
Exemple #14
0
  @Override
  public DbPathEntry rsToPathEntry(ResultSet rs, String prefix)
      throws SQLException, InterruptedException {
    if (rs == null) {
      return null;
    }
    try {
      if (rs.rowDeleted()) {
        return null;
      }
    } catch (SQLFeatureNotSupportedException e) {
    }

    long newpathid = rs.getLong(prefix + "pathid");
    long newparentid = rs.getLong(prefix + "parentid");
    long newrootid = rs.getLong(prefix + "rootid");
    if (rs.wasNull()) {
      newrootid = newpathid;
    }

    String newpath = rs.getString(prefix + "path");
    if (rs.wasNull()) {
      return null;
    }

    int newtype = rs.getInt(prefix + "type");

    DbPathEntry result = new DbPathEntry(newpath, newtype, newpathid, newparentid, newrootid);

    String t = rs.getString(prefix + "datelastmodified");
    if (t == null) {
      result.setDateLastModified(0);
    } else {
      Date d;
      try {
        d = sdf.parse(t);
        result.setDateLastModified(d.getTime());
      } catch (ParseException e) {
        result.setDateLastModified(0);
      }
    }

    result.setSize(rs.getLong(prefix + "size"));
    result.setCompressedSize(rs.getLong(prefix + "compressedsize"));

    int newcsum = rs.getInt(prefix + "csum");
    if (!rs.wasNull()) {
      result.setCsum(newcsum);
    }

    result.setStatus(rs.getInt(prefix + "status"));

    return result;
  }
  private List<AccountGroupAgreement> getAccountGroupAgreements(
      ReviewDb db, Map<Integer, ContributorAgreement> agreements) throws SQLException {

    Statement stmt = ((JdbcSchema) db).getConnection().createStatement();
    try {
      ResultSet rs =
          stmt.executeQuery(
              "SELECT group_id, cla_id, accepted_on, reviewed_by, reviewed_on, "
                  + "       review_comments "
                  + "FROM account_group_agreements");
      try {
        List<AccountGroupAgreement> groupAgreements = Lists.newArrayList();
        while (rs.next()) {
          AccountGroupAgreement a = new AccountGroupAgreement();
          a.groupId = new AccountGroup.Id(rs.getInt(1));
          a.claId = rs.getInt(2);
          if (!agreements.containsKey(a.claId)) {
            continue; // Agreement is invalid
          }
          a.acceptedOn = rs.getTimestamp(3);
          a.reviewedBy = new Account.Id(rs.getInt(4));
          if (rs.wasNull()) {
            a.reviewedBy = null;
          }

          a.reviewedOn = rs.getTimestamp(5);
          if (rs.wasNull()) {
            a.reviewedOn = null;
          }

          a.reviewComments = rs.getString(6);
          if (rs.wasNull()) {
            a.reviewComments = null;
          }
          groupAgreements.add(a);
        }
        Collections.sort(
            groupAgreements,
            new Comparator<AccountGroupAgreement>() {
              @Override
              public int compare(AccountGroupAgreement a1, AccountGroupAgreement a2) {
                return Long.compare(a1.getTime(), a2.getTime());
              }
            });
        return groupAgreements;
      } finally {
        rs.close();
      }
    } finally {
      stmt.close();
    }
  }
 private void checkColumnBigDecimal(ResultSet rs, int column, int i, String bd)
     throws SQLException {
   BigDecimal bd1 = rs.getBigDecimal(column);
   int i1 = rs.getInt(column);
   if (bd == null) {
     trace("should be: null");
     assertTrue(rs.wasNull());
   } else {
     trace("BigDecimal i=" + i + " bd=" + bd + " ; i1=" + i1 + " bd1=" + bd1);
     assertTrue(!rs.wasNull());
     assertTrue(i1 == i);
     assertTrue(bd1.compareTo(new BigDecimal(bd)) == 0);
   }
 }
Exemple #17
0
  /** {@inheritDoc} */
  protected Object extractColumnValue(
      ResultSet resultSet, String columnName, int columnIdx, int jdbcType) throws SQLException {
    boolean useIdx = (columnName == null);

    switch (jdbcType) {
      case Types.BINARY:
      case Types.VARBINARY:
      case Types.BLOB:
        BufferedInputStream input = null;

        try {
          input =
              new BufferedInputStream(
                  useIdx
                      ? resultSet.getBinaryStream(columnIdx)
                      : resultSet.getBinaryStream(columnName));

          if (resultSet.wasNull()) {
            return null;
          }

          ByteArrayOutputStream buffer = new ByteArrayOutputStream(1024);
          byte[] data = new byte[1024];
          int numRead;

          while ((numRead = input.read(data, 0, data.length)) != -1) {
            buffer.write(data, 0, numRead);
          }
          input.close();
          return buffer.toByteArray();
        } catch (IOException ex) {
          throw new DdlUtilsException(ex);
        } finally {
          if (input != null) {
            try {
              input.close();
            } catch (IOException ex) {
              getLog().error("Could not close binary stream read from result set", ex);
            }
          }
        }
      case Types.LONGVARCHAR:
      case Types.CLOB:
        String value = useIdx ? resultSet.getString(columnIdx) : resultSet.getString(columnName);

        return resultSet.wasNull() ? null : value;
      default:
        return super.extractColumnValue(resultSet, columnName, columnIdx, jdbcType);
    }
  }
  /**
   * See if there are array elements.
   *
   * @param dbl0 Value of the first (maybe only) array element
   * @param result ResultSet for the sample table with blob
   * @return Array with given element and maybe more.
   * @throws Exception on error, including 'cancel'
   */
  private double[] readBlobArrayElements(final double dbl0, final ResultSet result)
      throws Exception {
    final String datatype;
    if (reader.isOracle()) datatype = result.getString(7);
    else datatype = result.getString(8);

    // ' ' or NULL indicate: Scalar, not an array
    if (datatype == null || " ".equals(datatype) || result.wasNull()) return new double[] {dbl0};

    // Decode BLOB
    final byte[] bytes = result.getBytes(reader.isOracle() ? 8 : 9);
    final ByteArrayInputStream stream = new ByteArrayInputStream(bytes);
    final DataInputStream data = new DataInputStream(stream);
    if ("d".equals(datatype)) { // Read Double typed array elements
      final int nelm = data.readInt();
      final double[] array = new double[nelm];
      for (int i = 0; i < nelm; i++) array[i] = data.readDouble();
      data.close();
      return array;
    }
    // TODO Decode 'l' Long and 'i' Integer?
    else {
      throw new Exception("Sample BLOBs of type '" + datatype + "' are not decoded");
    }
  }
Exemple #19
0
  /**
   * On input from the DB, read the data from the ResultSet into the appropriate type of object to
   * be stored in the table cell.
   */
  public Object readResultSet(ResultSet rs, int index, boolean limitDataRead)
      throws java.sql.SQLException {

    Time data = rs.getTime(index);
    if (rs.wasNull()) return null;
    else return data;
  }
 private static double getDoubleOrNanFromResultSet(ResultSet rs, int index) throws SQLException {
   double value = rs.getDouble(index);
   if (rs.wasNull()) {
     value = Double.NaN;
   }
   return value;
 }
  private ProductLine getProductLineFromDBWithChild(Connection con, int id) throws SQLException {

    ModuleDAO moduleDao = new ModuleDAO();

    ProductLine productLine = null;
    try (PreparedStatement prepStatement = con.prepareStatement(selectProductLine)) {
      prepStatement.setInt(1, id);
      try (ResultSet result = prepStatement.executeQuery()) {

        while (result.next()) {
          productLine = new ProductLine();
          productLine.setId(result.getInt("productline_id"));
          productLine.setName(result.getString("name"));
          productLine.setDescription(result.getString("description"));
          Integer parent = result.getInt("parent_productline");
          if (result.wasNull()) {
            productLine.setParent(null);
          } else {
            productLine.setParent(getProductLine(parent, con));
          }
        }
        if (productLine != null) {
          productLine.setModules(moduleDao.getModulesWhithChildsByProductLine(productLine, con));
        }
      }
    }
    return productLine;
  }
  /*
   * (non-Javadoc)
   * @see
   * org.datanucleus.store.rdbms.mapping.datastore.AbstractDatastoreMapping#getObject(java.sql.ResultSet, int)
   */
  @Override
  public Object getObject(ResultSet resultSet, int param) {
    Object so = null;

    try {
      InputStream is = resultSet.getBinaryStream(param);
      if (!resultSet.wasNull()) {
        if (getJavaTypeMapping() instanceof FileMapping) {
          so = StreamableSpooler.instance().spoolStream(is);
        } else {
          // TODO Support other types
          throw new NucleusDataStoreException(
              "getObject unsupported for java type mapping of type " + getJavaTypeMapping());
        }
      }
    } catch (IOException e) {
      throw new NucleusDataStoreException(
          Localiser.msg("055002", "Object", "" + param, column, e.getMessage()), e);
    } catch (SQLException e) {
      throw new NucleusDataStoreException(
          Localiser.msg("055002", "Object", "" + param, column, e.getMessage()), e);
    }

    return so;
  }
  /** Parse a row event. */
  private void parseRowEvent(OneRowChange oneRowChange, boolean isKeySpec, int cols)
      throws SQLException {

    ArrayList<ColumnSpec> specs =
        (isKeySpec ? oneRowChange.getKeySpec() : oneRowChange.getColumnSpec());
    if (specs.isEmpty()) {
      if (logger.isDebugEnabled()) logger.debug("Adding column or key specs (not defined so far)");

      for (int i = 1; i <= cols; i++) {
        ColumnSpec colSpec = oneRowChange.new ColumnSpec();
        colSpec.setIndex(i);
        colSpec.setType(resultset.getMetaData().getColumnType(i));
        colSpec.setName(resultset.getMetaData().getColumnLabel(i));
        specs.add(colSpec);
      }
    }
    ArrayList<ArrayList<OneRowChange.ColumnVal>> rows =
        (isKeySpec ? oneRowChange.getKeyValues() : oneRowChange.getColumnValues());
    ArrayList<OneRowChange.ColumnVal> columns = new ArrayList<ColumnVal>();
    rows.add(columns);

    for (int i = 1; i <= cols; i++) {
      ColumnVal value = oneRowChange.new ColumnVal();
      value.setValue((Serializable) resultset.getObject(i));
      if (resultset.wasNull()) value.setValueNull();
      columns.add(value);
    }
  }
 @Override
 public StoredWorkflowDefinitionWithProject map(int index, ResultSet r, StatementContext ctx)
     throws SQLException {
   String projName = r.getString("proj_name");
   Optional<Instant> projDeletedAt = Optional.absent();
   if (r.wasNull()) {
     projName = r.getString("proj_deleted_name");
     projDeletedAt = Optional.of(getTimestampInstant(r, "proj_deleted_at"));
   }
   return ImmutableStoredWorkflowDefinitionWithProject.builder()
       .id(r.getLong("id"))
       .revisionId(r.getInt("revision_id"))
       .timeZone(ZoneId.of(r.getString("timezone")))
       .name(r.getString("name"))
       .config(cfm.fromResultSetOrEmpty(r, "config"))
       .project(
           ImmutableStoredProject.builder()
               .id(r.getInt("proj_id"))
               .name(projName)
               .siteId(r.getInt("site_id"))
               .createdAt(getTimestampInstant(r, "proj_created_at"))
               .deletedAt(projDeletedAt)
               .build())
       .revisionName(r.getString("rev_name"))
       .revisionDefaultParams(cfm.fromResultSetOrEmpty(r, "rev_default_params"))
       .build();
 }
  /* (non-Javadoc)
   * @see org.hibernate.UserType#nullSafeGet(java.sql.ResultSet, java.lang.String[], java.lang.Object)
   */
  public Object nullSafeGet(ResultSet rs, String[] names, Object owner)
      throws HibernateException, SQLException {
    byte[] bytes = rs.getBytes(names[0]);
    if (rs.wasNull()) {
      return null;
    }

    // TODO figure out how to inject this
    HomeFactory homeFactory = (HomeFactory) ComponentManager.getInstance().get("xmlHomeFactory");
    WritableObjectHome home = (WritableObjectHome) homeFactory.getHome("agent");

    StructuredArtifact artifact = (StructuredArtifact) home.createInstance();
    ByteArrayInputStream in = new ByteArrayInputStream(bytes);
    SAXBuilder saxBuilder = new SAXBuilder();
    saxBuilder.setFeature(
        "http://apache.org/xml/features/disallow-doctype-decl", true); // SAK-23245
    try {
      Document doc = saxBuilder.build(in);
      artifact.setBaseElement(doc.getRootElement());
    } catch (JDOMException e) {
      throw new HibernateException(e);
    } catch (IOException e) {
      throw new HibernateException(e);
    }
    return artifact;
  }
  protected LumberLog fromResultSet(ResultSet rs) throws SQLException {
    LumberLog lumberLog = new LumberLog();
    lumberLog.setId(rs.getLong("id"));
    lumberLog.setLength(rs.getDouble("length"));
    lumberLog.setRealLength(rs.getLong("reallength"));
    lumberLog.setVolume(rs.getDouble("volume"));
    lumberLog.setRealVolume(rs.getDouble("realvolume"));
    lumberLog.setSmallRadius(rs.getDouble("small_diameter"));
    lumberLog.setBigRadius(rs.getDouble("big_diameter"));
    lumberLog.setLumberType(rs.getLong("lumbertype"));
    lumberLog.setLumberClass(rs.getLong("lumberclass"));
    lumberLog.setCutPlanId(rs.getLong("planId"));
    LumberStack stack = new LumberStack();
    stack.setName(rs.getString("stackName"));
    stack.setId(rs.getLong("stack"));
    lumberLog.setStack(stack);
    IDPlate plate = new IDPlate();
    plate.setId(rs.getLong("idplate"));
    plate.setLabel(rs.getString("plateName"));
    lumberLog.setPlate(plate);
    lumberLog.setSupplierId(rs.getLong("SupplierId"));
    lumberLog.setTransportCertifiateId(rs.getLong("TransportCertificateId"));
    if (rs.wasNull()) {
      lumberLog.setTransportCertifiateId(null);
    }
    lumberLog.setMarginPercent(rs.getInt("Margin"));
    lumberLog.setMarginVolume(rs.getDouble("MarginVolume"));
    lumberLog.setMarginRealVolume(rs.getDouble("RealMarginVolume"));

    return lumberLog;
  }
Exemple #27
0
  private void outputResult(ResultSet ergeb, Date start, Statement st) throws Exception {
    Date ende;
    if (ergeb == null) {
      ende = new Date();
      long diff = ende.getTime() - start.getTime();

      int numOfUpdates = st.getUpdateCount();
      System.out.println();
      System.out.println("Number of affected Rows: " + numOfUpdates);
      System.out.println("Duration: " + diff + " msec");
      return;
    } else {

      int counter = 0;
      boolean ret = true;
      StringBuffer sb1 = new StringBuffer();

      for (int i = 1; i <= ergeb.getMetaData().getColumnCount(); i++) {
        String ColName = ergeb.getMetaData().getColumnName(i);
        int width = ergeb.getMetaData().getColumnDisplaySize(i);
        sb1.append(ColName);
        for (int x = 0; x < (width - ColName.length()); x++) sb1.append(" ");
        sb1.append(" | ");
      }
      System.out.println(sb1);
      StringBuffer sb2 = new StringBuffer();
      for (int i = 0; i < sb1.length() - 1; i++) {
        sb2.append("-");
      }
      System.out.println(sb2);

      while (ret == true) {
        if (ergeb.next()) {

          counter++;
          StringBuffer sb = new StringBuffer();

          for (int i = 1; i <= ergeb.getMetaData().getColumnCount(); i++) {
            int width = ergeb.getMetaData().getColumnDisplaySize(i);

            String temp = ergeb.getString(i);
            if (ergeb.wasNull()) {
              // Null values are displayes as -NULL-
              temp = new String("-NULL-");
            }
            sb.append(temp);

            for (int x = 0; x < (width - temp.length()); x++) sb.append(" ");
            sb.append(" | ");
          }
          System.out.println(sb.toString());
        } else {
          ende = new Date();
          long diff = ende.getTime() - start.getTime();
          System.out.println("\nReturning: " + counter + " Row(s) in " + diff + " msec");
          ret = false;
        }
      }
    }
  }
  public void testQueryForObjectWithIntegerAndNull() throws Exception {
    String sql = "SELECT AGE FROM CUSTMR WHERE ID = 3";

    mockResultSetMetaData.getColumnCount();
    ctrlResultSetMetaData.setReturnValue(1);

    mockResultSet.getMetaData();
    ctrlResultSet.setReturnValue(mockResultSetMetaData);
    mockResultSet.next();
    ctrlResultSet.setReturnValue(true);
    mockResultSet.getInt(1);
    ctrlResultSet.setReturnValue(0);
    mockResultSet.wasNull();
    ctrlResultSet.setReturnValue(true);
    mockResultSet.next();
    ctrlResultSet.setReturnValue(false);
    mockResultSet.close();
    ctrlResultSet.setVoidCallable();

    mockStatement.executeQuery(sql);
    ctrlStatement.setReturnValue(mockResultSet);
    mockStatement.getWarnings();
    ctrlStatement.setReturnValue(null);
    mockStatement.close();
    ctrlStatement.setVoidCallable();

    mockConnection.createStatement();
    ctrlConnection.setReturnValue(mockStatement);

    replay();

    JdbcTemplate template = new JdbcTemplate(mockDataSource);
    assertNull(template.queryForObject(sql, Integer.class));
  }
  public void testQueryForLong() throws Exception {
    String sql = "SELECT AGE FROM CUSTMR WHERE ID = 3";

    mockResultSetMetaData.getColumnCount();
    ctrlResultSetMetaData.setReturnValue(1);

    mockResultSet.getMetaData();
    ctrlResultSet.setReturnValue(mockResultSetMetaData);
    mockResultSet.next();
    ctrlResultSet.setReturnValue(true);
    mockResultSet.getLong(1);
    ctrlResultSet.setReturnValue(87);
    mockResultSet.wasNull();
    ctrlResultSet.setReturnValue(false);
    mockResultSet.next();
    ctrlResultSet.setReturnValue(false);
    mockResultSet.close();
    ctrlResultSet.setVoidCallable();

    mockStatement.executeQuery(sql);
    ctrlStatement.setReturnValue(mockResultSet);
    mockStatement.getWarnings();
    ctrlStatement.setReturnValue(null);
    mockStatement.close();
    ctrlStatement.setVoidCallable();

    mockConnection.createStatement();
    ctrlConnection.setReturnValue(mockStatement);

    replay();

    JdbcTemplate template = new JdbcTemplate(mockDataSource);
    long l = template.queryForLong(sql);
    assertEquals("Return of a long", 87, l);
  }
  private ProductLine[] getProductLinesByParentFromDB(Connection con, int parent_id)
      throws ClassNotFoundException, SQLException {

    ModuleDAO moduleDao = new ModuleDAO();

    ProductLine productLine = null;
    try (PreparedStatement prepStatement = con.prepareStatement(selectProductLinesByParent)) {
      prepStatement.setInt(1, parent_id);
      Set<ProductLine> resultSet = new HashSet<>();
      try (ResultSet result = prepStatement.executeQuery()) {

        while (result.next()) {
          productLine = new ProductLine();
          productLine.setId(result.getInt("productline_id"));
          productLine.setName(result.getString("name"));
          productLine.setDescription(result.getString("description"));
          Integer parent = result.getInt("parent_productline");
          if (result.wasNull()) {
            productLine.setParent(null);
          } else {
            productLine.setParent(getProductLine(parent, con));
          }
          productLine.setModules(moduleDao.getModulesWhithChildsByProductLine(productLine, con));
          resultSet.add(productLine);
        }
      }
      return resultSet.toArray(new ProductLine[resultSet.size()]);
    }
  }