List of usage examples for org.apache.commons.beanutils DynaBean get
public Object get(String name);
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()); }