Example usage for org.apache.commons.beanutils DynaBean get

List of usage examples for org.apache.commons.beanutils DynaBean get

Introduction

In this page you can find the example usage for org.apache.commons.beanutils DynaBean get.

Prototype

public Object get(String name);

Source Link

Document

Return the value of a simple property with the specified name.

Usage

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests the change of the datatypes of PK and FK columns from integer to varchar.
 *//*  ww  w  .j  a  v  a  2s. c  om*/
public void testPKAndFKColumnTypesIntegerToVarchar() {
    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip1'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n" + "  </table>\n"
            + "  <table name='roundtrip2'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='fk' type='INTEGER' required='false'/>\n"
            + "    <foreign-key foreignTable='roundtrip1'>\n" + "      <reference local='fk' foreign='pk'/>\n"
            + "    </foreign-key>\n" + "  </table>\n" + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip1'>\n"
            + "    <column name='pk' type='VARCHAR' size='128' primaryKey='true' required='true'/>\n"
            + "  </table>\n" + "  <table name='roundtrip2'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='fk' type='VARCHAR' size='128' required='false'/>\n"
            + "    <foreign-key foreignTable='roundtrip1'>\n" + "      <reference local='fk' foreign='pk'/>\n"
            + "    </foreign-key>\n" + "  </table>\n" + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip1", new Object[] { new Integer(1) });
    insertRow("roundtrip2", new Object[] { new Integer(1), new Integer(1) });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans1 = getRows("roundtrip1");
    List beans2 = getRows("roundtrip2");
    DynaBean bean1 = (DynaBean) beans1.get(0);
    DynaBean bean2 = (DynaBean) beans2.get(0);

    // Some databases (e.g. DB2) pad the string for some reason, so we manually trim it
    if (bean1.get("pk") instanceof String) {
        bean1.set("pk", ((String) bean1.get("pk")).trim());
    }
    if (bean2.get("fk") instanceof String) {
        bean2.set("fk", ((String) bean2.get("fk")).trim());
    }
    assertEquals((Object) "1", bean1, "pk");
    assertEquals(new Integer(1), bean2, "pk");
    assertEquals((Object) "1", bean2, "fk");
}

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests the alteration of the datatypes of columns of a PK and FK that
 * will be dropped.//from   ww w .  ja v a2 s.  c  o m
 */
public void testPKAndFKColumnTypesAndDropFK() {
    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip1'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n" + "  </table>\n"
            + "  <table name='roundtrip2'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='fk' type='INTEGER' required='false'/>\n"
            + "    <foreign-key foreignTable='roundtrip1'>\n" + "      <reference local='fk' foreign='pk'/>\n"
            + "    </foreign-key>\n" + "  </table>\n" + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip1'>\n"
            + "    <column name='pk' type='VARCHAR' primaryKey='false' required='true'/>\n" + "  </table>\n"
            + "  <table name='roundtrip2'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='fk' type='VARCHAR' required='false'/>\n" + "  </table>\n" + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip1", new Object[] { new Integer(1) });
    insertRow("roundtrip2", new Object[] { new Integer(1), new Integer(1) });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans1 = getRows("roundtrip1");
    List beans2 = getRows("roundtrip2");
    DynaBean bean1 = (DynaBean) beans1.get(0);
    DynaBean bean2 = (DynaBean) beans2.get(0);

    // Some databases (e.g. DB2) pad the string for some reason, so we manually trim it
    if (bean1.get("pk") instanceof String) {
        bean1.set("pk", ((String) bean1.get("pk")).trim());
    }
    if (bean2.get("fk") instanceof String) {
        bean2.set("fk", ((String) bean2.get("fk")).trim());
    }
    assertEquals((Object) "1", bean1, "pk");
    assertEquals(new Integer(1), bean2, "pk");
    assertEquals((Object) "1", bean2, "fk");
}

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests the alteration of an indexed column datatype change from smallint to varchar.
 *//*from www.j av  a 2 s .  co m*/
public void testIndexColumnTypeSmallintToVarchar() {
    if (!getPlatformInfo().isIndicesSupported()) {
        return;
    }

    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue1' type='SMALLINT'/>\n" + "    <column name='avalue2' type='DOUBLE'/>\n"
            + "    <index name='testindex'>\n" + "      <index-column name='avalue1'/>\n"
            + "      <index-column name='avalue2'/>\n" + "    </index>\n" + "  </table>\n" + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue1' type='VARCHAR' size='20'/>\n"
            + "    <column name='avalue2' type='DOUBLE'/>\n" + "    <index name='testindex'>\n"
            + "      <index-column name='avalue1'/>\n" + "      <index-column name='avalue2'/>\n"
            + "    </index>\n" + "  </table>\n" + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip", new Object[] { new Integer(1), new Short((short) 2), new Double(3.0) });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans = getRows("roundtrip");
    DynaBean bean = (DynaBean) beans.get(0);

    // Some databases (e.g. DB2) pad the string for some reason, so we manually trim it
    if (bean.get("avalue1") instanceof String) {
        bean.set("avalue1", ((String) bean.get("avalue1")).trim());
    }
    assertEquals(new Integer(1), beans.get(0), "pk");
    assertEquals((Object) "2", beans.get(0), "avalue1");
    assertEquals(new Double(3.0), beans.get(0), "avalue2");
}

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests the alteration of an indexed column datatype change from smallint to varchar.
 *///w w w  . j  av a2  s  . c  o m
public void testUniqueIndexColumnTypeSmallintToVarchar() {
    if (!getPlatformInfo().isIndicesSupported()) {
        return;
    }

    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue1' type='SMALLINT'/>\n" + "    <column name='avalue2' type='DOUBLE'/>\n"
            + "    <unique name='testindex'>\n" + "      <unique-column name='avalue1'/>\n"
            + "      <unique-column name='avalue2'/>\n" + "    </unique>\n" + "  </table>\n" + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue1' type='VARCHAR' size='20'/>\n"
            + "    <column name='avalue2' type='DOUBLE'/>\n" + "    <unique name='testindex'>\n"
            + "      <unique-column name='avalue1'/>\n" + "      <unique-column name='avalue2'/>\n"
            + "    </unique>\n" + "  </table>\n" + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip", new Object[] { new Integer(1), new Short((short) 2), new Double(3.0) });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans = getRows("roundtrip");
    DynaBean bean = (DynaBean) beans.get(0);

    // Some databases (e.g. DB2) pad the string for some reason, so we manually trim it
    if (bean.get("avalue1") instanceof String) {
        bean.set("avalue1", ((String) bean.get("avalue1")).trim());
    }
    assertEquals(new Integer(1), beans.get(0), "pk");
    assertEquals((Object) "2", beans.get(0), "avalue1");
    assertEquals(new Double(3.0), beans.get(0), "avalue2");
}

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests decreasing the size of a column.
 *//*from  w  w  w  . ja v a 2  s. co m*/
public void testColumnDecreaseSize() {
    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue' type='VARCHAR' size='32' required='true'/>\n" + "  </table>\n"
            + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue' type='VARCHAR' size='16' required='true'/>\n" + "  </table>\n"
            + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip", new Object[] { new Integer(1), "12345678901234567890123456789012" });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans = getRows("roundtrip");
    DynaBean bean = (DynaBean) beans.get(0);

    assertEquals(new Integer(1), bean, "pk");
    assertTrue("12345678901234567890123456789012".equals(bean.get("avalue"))
            || "1234567890123456".equals(bean.get("avalue")));
}

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests increasing the size of a primary key column.
 *///from  w  w  w .j a  v a 2s .  com
public void testPKColumnIncreaseSize() {
    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='CHAR' size='20' primaryKey='true' required='true'/>\n"
            + "  </table>\n" + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='CHAR' size='32' primaryKey='true' required='true'/>\n"
            + "  </table>\n" + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip", new Object[] { "test" });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans = getRows("roundtrip");
    DynaBean bean = (DynaBean) beans.get(0);

    assertEquals("test", ((String) bean.get("pk")).trim());
}

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests decreasing the size of a column.
 *///from www .ja  va  2 s .c  o m
public void testPKColumnDecreaseSize() {
    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='CHAR' size='32' primaryKey='true' required='true'/>\n"
            + "  </table>\n" + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='CHAR' size='16' primaryKey='true' required='true'/>\n"
            + "  </table>\n" + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip", new Object[] { "12345678901234567890123456789012" });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans = getRows("roundtrip");
    DynaBean bean = (DynaBean) beans.get(0);

    assertTrue("12345678901234567890123456789012".equals(bean.get("pk"))
            || "1234567890123456".equals(bean.get("pk")));
}

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests decreasing the sizes of PK and FK columns.
 *//*from w  ww.  j  ava  2s.  co  m*/
public void testPKAndFKColumnDecreaseSize() {
    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip1'>\n"
            + "    <column name='pk' type='CHAR' size='32' primaryKey='true' required='true'/>\n"
            + "  </table>\n" + "  <table name='roundtrip2'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='fk' type='CHAR' size='32' required='false'/>\n"
            + "    <foreign-key foreignTable='roundtrip1'>\n" + "      <reference local='fk' foreign='pk'/>\n"
            + "    </foreign-key>\n" + "  </table>\n" + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip1'>\n"
            + "    <column name='pk' type='CHAR' size='16' primaryKey='true' required='true'/>\n"
            + "  </table>\n" + "  <table name='roundtrip2'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='fk' type='CHAR' size='16' required='false'/>\n"
            + "    <foreign-key foreignTable='roundtrip1'>\n" + "      <reference local='fk' foreign='pk'/>\n"
            + "    </foreign-key>\n" + "  </table>\n" + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip1", new Object[] { "test" });
    insertRow("roundtrip2", new Object[] { new Integer(1), "test" });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans1 = getRows("roundtrip1");
    List beans2 = getRows("roundtrip2");
    DynaBean bean1 = (DynaBean) beans1.get(0);
    DynaBean bean2 = (DynaBean) beans2.get(0);

    assertEquals("test", ((String) bean1.get("pk")).trim());
    assertEquals(new Integer(1), bean2, "pk");
    assertEquals("test", ((String) bean2.get("fk")).trim());
}

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests decreasing the size of an indexed column.
 *///from  w  w  w .  java2  s .  co m
public void testIndexColumnDecreaseSize() {
    if (!getPlatformInfo().isIndicesSupported()) {
        return;
    }

    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue1' type='INTEGER'/>\n"
            + "    <column name='avalue2' type='CHAR' size='32'/>\n" + "    <index name='testindex'>\n"
            + "      <index-column name='avalue1'/>\n" + "      <index-column name='avalue2'/>\n"
            + "    </index>\n" + "  </table>\n" + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue1' type='INTEGER'/>\n"
            + "    <column name='avalue2' type='CHAR' size='20'/>\n" + "    <index name='testindex'>\n"
            + "      <index-column name='avalue1'/>\n" + "      <index-column name='avalue2'/>\n"
            + "    </index>\n" + "  </table>\n" + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip", new Object[] { new Integer(1), new Integer(2), "text" });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans = getRows("roundtrip");
    DynaBean bean = (DynaBean) beans.get(0);

    assertEquals(new Integer(1), bean, "pk");
    assertEquals(new Integer(2), bean, "avalue1");
    assertEquals((Object) "text", ((String) bean.get("avalue2")).trim());
}

From source file:org.apache.ddlutils.io.TestChangeColumn.java

/**
 * Tests increasing the size of an indexed column.
 *///from ww w  .  j a v a2s  .c  om
public void testUniqueIndexColumnIncreaseSize() {
    if (!getPlatformInfo().isIndicesSupported()) {
        return;
    }

    final String model1Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue1' type='INTEGER'/>\n"
            + "    <column name='avalue2' type='CHAR' size='16'/>\n" + "    <index name='testindex'>\n"
            + "      <index-column name='avalue1'/>\n" + "      <index-column name='avalue2'/>\n"
            + "    </index>\n" + "  </table>\n" + "</database>";
    final String model2Xml = "<?xml version='1.0' encoding='ISO-8859-1'?>\n" + "<database xmlns='"
            + DatabaseIO.DDLUTILS_NAMESPACE + "' name='roundtriptest'>\n" + "  <table name='roundtrip'>\n"
            + "    <column name='pk' type='INTEGER' primaryKey='true' required='true'/>\n"
            + "    <column name='avalue1' type='INTEGER'/>\n"
            + "    <column name='avalue2' type='CHAR' size='20'/>\n" + "    <index name='testindex'>\n"
            + "      <index-column name='avalue1'/>\n" + "      <index-column name='avalue2'/>\n"
            + "    </index>\n" + "  </table>\n" + "</database>";

    createDatabase(model1Xml);

    insertRow("roundtrip", new Object[] { new Integer(1), new Integer(2), "text" });

    alterDatabase(model2Xml);

    assertEquals(getAdjustedModel(), readModelFromDatabase("roundtriptest"));

    List beans = getRows("roundtrip");
    DynaBean bean = (DynaBean) beans.get(0);

    assertEquals(new Integer(1), bean, "pk");
    assertEquals(new Integer(2), bean, "avalue1");
    assertEquals((Object) "text", ((String) bean.get("avalue2")).trim());
}