Package ch.inftec.ju.db.DbRowUtils

Examples of ch.inftec.ju.db.DbRowUtils.DbRowBuilder


import ch.inftec.ju.db.DbRowUtils.DbRowBuilder;

public class DbRowUtilsTest {
  @Test
  public void testEqualsAndHashCode() {
    DbRowBuilder r1Builder = DbRowUtils.newDbRow();
    DbRowBuilder r2Builder = DbRowUtils.newDbRow();
   
    r1Builder.addValue("col1", 1, 1);   
    Assert.assertFalse(r1Builder.getRow().equals(r2Builder.getRow()));
    Assert.assertFalse(r1Builder.getRow().hashCode() == r2Builder.getRow().hashCode());
   
    r2Builder.addValue("col2", 2, 2);   
    Assert.assertFalse(r1Builder.getRow().equals(r2Builder.getRow()));
    Assert.assertFalse(r1Builder.getRow().hashCode() == r2Builder.getRow().hashCode());
   
    r1Builder.addValue("col2", 2, 2);
    r2Builder.addValue("col1", 1, 1);
   
    // Still false, because order doesn't match
    Assert.assertFalse(r1Builder.getRow().equals(r2Builder.getRow()));
    Assert.assertFalse(r1Builder.getRow().hashCode() == r2Builder.getRow().hashCode());
   
    DbRowBuilder r3Builder = DbRowUtils.newDbRow();
    r3Builder.addValue("col1", 1, 1);
    r3Builder.addValue("col2", 2, 2);
   
    Assert.assertTrue(r1Builder.getRow().hashCode() == r3Builder.getRow().hashCode());
    Assert.assertTrue(r1Builder.getRow().equals(r3Builder.getRow()));
    Assert.assertTrue(r3Builder.getRow().equals(r1Builder.getRow()));
    Assert.assertTrue(r1Builder.getRow().equals(r1Builder.getRow()));
   
    Assert.assertFalse(r1Builder.getRow().equals(null));
    Assert.assertFalse(r1Builder.getRow().equals(this));
  }
View Full Code Here


    }
  }

  @Override
  public DbAction createUndoAction() {
    DbRowBuilder targetRowBuilder = DbRowUtils.newDbRow();
    for (int i = 0; i < this.getRow().getColumnCount(); i++) {
      String columnName = this.getRow().getColumnName(i);
      targetRowBuilder.addValue(columnName, this.getRow().getColumnType(i), this.getVal(columnName).getValue());
    }
   
    DbAction undoAction = new UpdateDbRowDbAction(this.getDbConnection(), targetRowBuilder.getRow(), this.getTableName());
   
    for (Val val : this.getChangedColumns()) {
      undoAction.setValue(val.getColumnName(), val.getOriginalValue());
    }
   
View Full Code Here

    }
  }

  @Override
  public DbAction createUndoAction() {
    DbRowBuilder targetRowBuilder = DbRowUtils.newDbRow();
    for (int i = 0; i < this.getRow().getColumnCount(); i++) {
      String columnName = this.getRow().getColumnName(i);
      targetRowBuilder.addValue(columnName, this.getRow().getColumnType(i), this.getVal(columnName).getValue());
    }
   
    DbAction undoAction = new DeleteDbRowDbAction(this.getDbConnection(), targetRowBuilder.getRow(), this.getTableName());
   
    return undoAction;
  }
View Full Code Here

   
    ResultSetMetaData rsmd = rs.getMetaData();
    while (rs.next()) {
      if (rsmd == null) rsmd = rs.getMetaData();
     
      DbRowBuilder rowBuilder = DbRowUtils.newDbRow();
      for (int i = 1; i <= rsmd.getColumnCount(); i++) {
        rowBuilder.addValue(rsmd.getColumnName(i), rsmd.getColumnType(i), this.processValue(rs.getObject(i)));
      }
      dbRows.addRow(rowBuilder.getRow());
    }
   
    // Set base row if query yielded no rows
    if (dbRows.getRowCount() == 0) {
      DbRowBuilder rowBuilder = DbRowUtils.newDbRow();
      for (int i = 1; i <= rsmd.getColumnCount(); i++) {
        rowBuilder.addValue(rsmd.getColumnName(i), rsmd.getColumnType(i), null);
      }
      dbRows.setBaseRow(rowBuilder.getRow());
    }
   
    return dbRows;
  }
View Full Code Here

TOP

Related Classes of ch.inftec.ju.db.DbRowUtils.DbRowBuilder

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.