[prev in list] [next in list] [prev in thread] [next in thread]
List: turbine-torque-dev
Subject: svn commit: r1574691 - in /db/torque/torque4/trunk/torque-generator/src/test: java/org/apache/torque
From: tfischer () apache ! org
Date: 2014-03-05 22:15:11
Message-ID: 20140305221512.0F381238883D () eris ! apache ! org
[Download RAW message or body]
Author: tfischer
Date: Wed Mar 5 22:15:11 2014
New Revision: 1574691
URL: http://svn.apache.org/r1574691
Log:
TORQUE-310 add More realistic organize-imports-test
Added:
db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/
db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/string/
db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/string/organizeImports.txt
db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/string/organizeImportsExpected.txt
Modified:
db/torque/torque4/trunk/torque-generator/src/test/java/org/apache/torque/generator/processor/string/OrganizeImportsProcessorTest.java
Modified: db/torque/torque4/trunk/torque-generator/src/test/java/org/apache/torque/generator/processor/string/OrganizeImportsProcessorTest.java
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-generator/src/test/ja \
va/org/apache/torque/generator/processor/string/OrganizeImportsProcessorTest.java?rev=1574691&r1=1574690&r2=1574691&view=diff
==============================================================================
--- db/torque/torque4/trunk/torque-generator/src/test/java/org/apache/torque/generator/processor/string/OrganizeImportsProcessorTest.java \
(original)
+++ db/torque/torque4/trunk/torque-generator/src/test/java/org/apache/torque/generator/processor/string/OrganizeImportsProcessorTest.java \
Wed Mar 5 22:15:11 2014 @@ -21,6 +21,8 @@ package org.apache.torque.generator.proc
import static org.junit.Assert.assertEquals;
+import org.apache.commons.io.IOUtils;
+import org.apache.torque.generator.BaseTest;
import org.junit.Test;
/**
@@ -28,7 +30,7 @@ import org.junit.Test;
*
* @version $Id: $
*/
-public class OrganizeImportsProcessorTest
+public class OrganizeImportsProcessorTest extends BaseTest
{
/** System under test. */
private final OrganizeImportsProcessor organizeImportsProcessor
@@ -51,4 +53,13 @@ public class OrganizeImportsProcessorTes
+ "class2\n"
+ "Class3", result);
}
+
+ @Test
+ public void testProcessLong() throws Exception
+ {
+ String source = \
IOUtils.toString(getClass().getResourceAsStream("organizeImports.txt")); + \
String result = organizeImportsProcessor.process(source); + String expected = \
IOUtils.toString(getClass().getResourceAsStream("organizeImportsExpected.txt")); + \
assertEquals(expected, result); + }
}
Added: db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/string/organizeImports.txt
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-generator/src/test/re \
sources/org/apache/torque/generator/processor/string/organizeImports.txt?rev=1574691&view=auto
==============================================================================
--- db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/string/organizeImports.txt \
(added)
+++ db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/string/organizeImports.txt \
Wed Mar 5 22:15:11 2014 @@ -0,0 +1,751 @@
+package org.apache.torque.test.peer.base;
+
+import java.sql.Blob;
+import java.sql.Connection;
+import java.io.InputStream;
+import java.io.Reader;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.torque.NoRowsException;
+import org.apache.torque.TooManyRowsException;
+import org.apache.torque.Torque;
+import org.apache.torque.TorqueException;
+import org.apache.torque.criteria.Criteria;
+import org.apache.torque.om.mapper.RecordMapper;
+import org.apache.torque.om.ObjectKey;
+import org.apache.torque.om.SimpleKey;
+import org.apache.torque.map.TableMap;
+import org.apache.torque.util.Transaction;
+import org.apache.torque.util.ColumnValues;
+import org.apache.torque.util.JdbcTypedValue;
+
+import org.apache.torque.test.dbobject.*;
+import org.apache.torque.test.recordmapper.*;
+import org.apache.torque.test.peer.*;
+
+
+/**
+ * The skeleton for this class was autogenerated by Torque on:
+ *
+ * [Wed Mar 05 23:07:13 CET 2014]
+ *
+ * You should not use this class directly. It should not even be
+ * extended; all references should be to BlobTypePeer
+ */
+
+public abstract class BaseBlobTypePeerImpl
+ extends org.apache.torque.util.BasePeerImpl<BlobType>
+{
+ /** The class log. */
+ private static Log log = LogFactory.getLog(BaseBlobTypePeerImpl.class);
+
+ /** Serial version */
+ private static final long serialVersionUID = 1394057233749L;
+
+
+
+ /**
+ * Constructor.
+ * The recordMapper, tableMap and databaseName fields are correctly
+ * initialized.
+ */
+ public BaseBlobTypePeerImpl()
+ {
+ this(new BlobTypeRecordMapper(),
+ BlobTypePeer.TABLE,
+ BlobTypePeer.DATABASE_NAME);
+ }
+
+ /**
+ * Constructor providing the objects to be injected as parameters.
+ *
+ * @param recordMapper a record mapper to map JDBC result sets to objects
+ * @param tableMap the default table map
+ * @param databaseName the name of the database
+ */
+ public BaseBlobTypePeerImpl(
+ RecordMapper<BlobType> recordMapper,
+ TableMap tableMap,
+ String databaseName)
+ {
+ super(recordMapper, tableMap, databaseName);
+ }
+
+
+ /**
+ * Selects BlobType objects from the database which have
+ * the same content as the passed object.
+ *
+ * @return The list of selected objects, not null.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public List<BlobType> doSelect(BlobType obj)
+ throws TorqueException
+ {
+ return doSelect(buildSelectCriteria(obj));
+ }
+
+ /**
+ * Selects at most one BlobType object from the database
+ * which has the same content as the passed object.
+ *
+ * @return the selected Object, or null if no object was selected.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public BlobType doSelectSingleRecord(
+ BlobType obj)
+ throws TorqueException
+ {
+ List<BlobType> blobTypeList = doSelect(obj);
+ BlobType blobType = null;
+ if (blobTypeList.size() > 1)
+ {
+ throw new TooManyRowsException("Object " + obj
+ + " matched more than one record");
+ }
+ if (!blobTypeList.isEmpty())
+ {
+ blobType = blobTypeList.get(0);
+ }
+ return blobType;
+ }
+
+ /**
+ * Returns a new instance of the Data object class
+ */
+ public BlobType getDbObjectInstance()
+ {
+ return new BlobType();
+ }
+
+
+ /**
+ * Method to do inserts.
+ *
+ * @param columnValues the values to insert.
+ *
+ * @return the primary key of the inserted row.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public ObjectKey doInsert(ColumnValues columnValues) throws TorqueException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(
+ BlobTypePeer.DATABASE_NAME);
+ ObjectKey result = doInsert(columnValues, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return result;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Method to do inserts. This method is to be used during a transaction,
+ * otherwise use the doInsert(Criteria) method.
+ *
+ * @param columnValues the values to insert.
+ * @param con the connection to use, not null.
+ *
+ * @return the primary key of the inserted row.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public ObjectKey doInsert(ColumnValues columnValues, Connection con)
+ throws TorqueException
+ {
+ correctBooleans(columnValues);
+ return super.doInsert(columnValues, con);
+ }
+
+ /**
+ * Method to do inserts
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public void doInsert(BlobType obj) throws TorqueException
+ {
+ obj.setPrimaryKey(doInsert(buildColumnValues(obj)));
+ obj.setNew(false);
+ obj.setModified(false);
+ }
+
+ /**
+ * Method to do inserts. This method is to be used during a transaction,
+ * otherwise use the doInsert(BlobType) method. It will take
+ * care of the connection details internally.
+ *
+ * @param obj the data object to insert into the database.
+ * @param con the connection to use
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public void doInsert(BlobType obj, Connection con)
+ throws TorqueException
+ {
+ ObjectKey primaryKey = doInsert(buildColumnValues(obj), con);
+ if (primaryKey != null)
+ {
+ obj.setPrimaryKey(primaryKey);
+ }
+ obj.setNew(false);
+ obj.setModified(false);
+ }
+
+ /**
+ * Method to do updates.
+ *
+ * @param columnValues the values to update plus the primary key
+ * identifying the row to update.
+ *
+ * @return the number of affected rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doUpdate(ColumnValues columnValues) throws TorqueException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(
+ BlobTypePeer.DATABASE_NAME);
+ int result = doUpdate(columnValues, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return result;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Method to do updates. This method is to be used during a transaction,
+ * otherwise use the doUpdate(Criteria) method.
+ *
+ * @param columnValues the values to update plus the primary key
+ * identifying the row to update.
+ * @param con the connection to use, not null.
+ *
+ * @return the number of affected rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doUpdate(ColumnValues columnValues, Connection con)
+ throws TorqueException
+ {
+ Criteria selectCriteria
+ = new Criteria(BlobTypePeer.DATABASE_NAME);
+ correctBooleans(columnValues);
+
+ {
+ JdbcTypedValue pkValue
+ = columnValues.remove(BlobTypePeer.ID);
+ if (pkValue == null)
+ {
+ throw new TorqueException(
+ "The value for the primary key column "
+ + "BlobTypePeer.ID"
+ + " must be set");
+ }
+ if (pkValue.getSqlExpression() == null)
+ {
+ selectCriteria.where(
+ BlobTypePeer.ID,
+ pkValue.getValue());
+ }
+ else
+ {
+ selectCriteria.where(
+ BlobTypePeer.ID,
+ pkValue.getSqlExpression());
+ }
+ }
+
+
+ int rowCount = doUpdate(selectCriteria, columnValues, con);
+ return rowCount;
+ }
+
+ /**
+ * Updates an BlobType in the database.
+ * The primary key is used to identify the object to update.
+ *
+ * @param obj the data object to update in the database.
+ *
+ * @return the number of affected rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doUpdate(BlobType obj) throws TorqueException
+ {
+ ColumnValues columnValues = buildColumnValues(obj);
+ int result = doUpdate(columnValues);
+ obj.setModified(false);
+ return result;
+ }
+
+ /**
+ * Updates a BlobType in the database.
+ * The primary key is used to identify the object to update.
+ * This method is to be used during a transaction,
+ * otherwise the doUpdate(BlobType) method can be used.
+ *
+ * @param obj the data object to update in the database.
+ * @param con the connection to use, not null.
+
+ * @return the number of affected rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doUpdate(BlobType obj, Connection con)
+ throws TorqueException
+ {
+ ColumnValues columnValues = buildColumnValues(obj);
+ int result = doUpdate(columnValues, con);
+ obj.setModified(false);
+ return result;
+ }
+
+ /**
+ * Deletes a data object, i.e. a row in a table, in the database.
+ *
+ * @param obj the data object to delete in the database, not null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(BlobType obj) throws TorqueException
+ {
+ int result = doDelete(buildCriteria(obj.getPrimaryKey()));
+ obj.setDeleted(true);
+ return result;
+ }
+
+ /**
+ * Deletes a data object, i.e. a row in a table, in the database.
+ * This method is to be used during a transaction, otherwise use the
+ * doDelete(BlobType) method.
+ *
+ * @param obj the data object to delete in the database, not null.
+ * @param con the connection to use, not null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(BlobType obj, Connection con)
+ throws TorqueException
+ {
+ int result = doDelete(buildCriteria(obj.getPrimaryKey()), con);
+ obj.setDeleted(true);
+ return result;
+ }
+
+ /**
+ * Deletes data objects, i.e. rows in a table, in the database.
+ *
+ * @param objects the data object to delete in the database, not null,
+ * may not contain null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(Collection<BlobType> objects)
+ throws TorqueException
+ {
+ int result = doDelete(buildPkCriteria(objects));
+ for (BlobType object : objects)
+ {
+ object.setDeleted(true);
+ }
+ return result;
+ }
+
+ /**
+ * Deletes data objects, i.e. rows in a table, in the database.
+ * This method uses the passed connection to delete the rows;
+ * if a transaction is open in the connection, the deletion happens inside
+ * this transaction.
+ *
+ * @param objects the data objects to delete in the database, not null,
+ * may not contain null.
+ * @param con the connection to use for deleting, not null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(
+ Collection<BlobType> objects,
+ Connection con)
+ throws TorqueException
+ {
+ int result = doDelete(buildPkCriteria(objects), con);
+ for (BlobType object : objects)
+ {
+ object.setDeleted(true);
+ }
+ return result;
+ }
+
+ /**
+ * Deletes a row in the database.
+ *
+ * @param pk the ObjectKey that identifies the row to delete.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(ObjectKey pk) throws TorqueException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(
+ BlobTypePeer.DATABASE_NAME);
+ int deletedRows = doDelete(pk, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return deletedRows;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Deletes a row in the database.
+ * This method is to be used during a transaction,
+ * otherwise use the doDelete(ObjectKey) method.
+ *
+ * @param pk the ObjectKey that identifies the row to delete.
+ * @param con the connection to use for deleting, not null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(ObjectKey pk, Connection con)
+ throws TorqueException
+ {
+ return doDelete(buildCriteria(pk), con);
+ }
+
+ /**
+ * Build a Criteria object which selects all objects which have a given
+ * primary key.
+ *
+ * @param pk the primary key value to build the criteria from, not null.
+ */
+ public Criteria buildCriteria(ObjectKey pk)
+ {
+ Criteria criteria = new Criteria();
+ criteria.and(BlobTypePeer.ID, pk);
+ return criteria;
+ }
+
+ /**
+ * Build a Criteria object which selects all objects which primary keys
+ * are contained in the passed collection.
+ *
+ * @param pks the primary key values to build the criteria from, not null,
+ * may not contain null.
+ */
+ public Criteria buildCriteria(Collection<ObjectKey> pks)
+ {
+ Criteria criteria = new Criteria();
+ criteria.andIn(BlobTypePeer.ID, pks);
+ return criteria;
+ }
+
+
+ /**
+ * Build a Criteria object which selects all passed objects using their
+ * primary key. Objects which do not yet have a primary key are ignored.
+ *
+ * @param objects the objects to build the criteria from, not null,
+ * may not contain null.
+ */
+ public Criteria buildPkCriteria(
+ Collection<BlobType> objects)
+ {
+ List<ObjectKey> pks = new ArrayList<ObjectKey>(objects.size());
+ for (BlobType object : objects)
+ {
+ ObjectKey pk = object.getPrimaryKey();
+ if (pk != null)
+ {
+ pks.add(pk);
+ }
+ }
+ return buildCriteria(pks);
+ }
+
+ /**
+ * Build a Criteria object from the data object for this peer.
+ * The primary key columns are only added if the object is not new.
+ *
+ * @param obj the object to build the criteria from, not null.
+ */
+ public Criteria buildCriteria(BlobType obj)
+ {
+ Criteria criteria = new Criteria(BlobTypePeer.DATABASE_NAME);
+ if (!obj.isNew())
+ {
+ criteria.and(BlobTypePeer.ID, obj.getId());
+ }
+ criteria.and(BlobTypePeer.BLOB_VALUE, obj.getBlobValue());
+ criteria.and(BlobTypePeer.BLOB_OBJECT_VALUE, obj.getBlobObjectValue());
+ return criteria;
+ }
+
+ /**
+ * Build a Criteria object from the data object for this peer,
+ * skipping all binary columns.
+ *
+ * @param obj the object to build the criteria from, not null.
+ */
+ public Criteria buildSelectCriteria(BlobType obj)
+ {
+ Criteria criteria = new Criteria(BlobTypePeer.DATABASE_NAME);
+ if (!obj.isNew())
+ {
+ criteria.and(BlobTypePeer.ID, obj.getId());
+ }
+ return criteria;
+ }
+
+ /**
+ * Returns the contents of the object as ColumnValues object.
+ * Primary key columns which are generated on insertion are not
+ * added to the returned object if they still have their initial
+ * value. Also, columns which have the useDatabaseDefaultValue
+ * flag set to true are also not added to the returned object
+ * if they still have their initial value.
+ *
+ * @throws TorqueException if the table map cannot be retrieved
+ * (should not happen).
+ */
+ public ColumnValues buildColumnValues(BlobType blobType)
+ throws TorqueException
+ {
+ ColumnValues columnValues = new ColumnValues();
+ if (!blobType.isNew()
+ || blobType.getId() != 0L)
+ {
+ columnValues.put(
+ BlobTypePeer.ID,
+ new JdbcTypedValue(
+ blobType.getId(),
+ -5));
+ }
+ columnValues.put(
+ BlobTypePeer.BLOB_VALUE,
+ new JdbcTypedValue(
+ blobType.getBlobValue(),
+ 2004));
+ columnValues.put(
+ BlobTypePeer.BLOB_OBJECT_VALUE,
+ new JdbcTypedValue(
+ blobType.getBlobObjectValue(),
+ 2004));
+ return columnValues;
+ }
+
+ /**
+ * Retrieve a single object by pk
+ *
+ * @param pk the primary key
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ * @throws NoRowsException Primary key was not found in database.
+ * @throws TooManyRowsException Primary key was not found in database.
+ */
+ public BlobType retrieveByPK(long pk)
+ throws TorqueException, NoRowsException, TooManyRowsException
+ {
+ return retrieveByPK(SimpleKey.keyFor(pk));
+ }
+
+ /**
+ * Retrieve a single object by pk
+ *
+ * @param pk the primary key
+ * @param con the connection to use
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ * @throws NoRowsException Primary key was not found in database.
+ * @throws TooManyRowsException Primary key was not found in database.
+ */
+ public BlobType retrieveByPK(long pk, Connection con)
+ throws TorqueException, NoRowsException, TooManyRowsException
+ {
+ return retrieveByPK(SimpleKey.keyFor(pk), con);
+ }
+
+
+
+
+ /**
+ * Retrieve a single object by pk
+ *
+ * @param pk the primary key
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ * @throws NoRowsException Primary key was not found in database.
+ * @throws TooManyRowsException Primary key was not found in database.
+ */
+ public BlobType retrieveByPK(ObjectKey pk)
+ throws TorqueException, NoRowsException, TooManyRowsException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(BlobTypePeer.DATABASE_NAME);
+ BlobType result = retrieveByPK(pk, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return result;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Retrieve a single object by pk
+ *
+ * @param pk the primary key
+ * @param con the connection to use
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ * @throws NoRowsException Primary key was not found in database.
+ * @throws TooManyRowsException Primary key was not found in database.
+ */
+ public BlobType retrieveByPK(ObjectKey pk, Connection con)
+ throws TorqueException, NoRowsException, TooManyRowsException
+ {
+ Criteria criteria = buildCriteria(pk);
+ List<BlobType> v = doSelect(criteria, con);
+ if (v.size() == 0)
+ {
+ throw new NoRowsException("Failed to select a row.");
+ }
+ else if (v.size() > 1)
+ {
+ throw new TooManyRowsException("Failed to select only one row.");
+ }
+ else
+ {
+ return (BlobType)v.get(0);
+ }
+ }
+
+
+ /**
+ * Retrieve a multiple objects by pk
+ *
+ * @param pks List of primary keys
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public List<BlobType> retrieveByPKs(Collection<ObjectKey> pks)
+ throws TorqueException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(BlobTypePeer.DATABASE_NAME);
+ List<BlobType> result = retrieveByPKs(pks, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return result;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Retrieve multiple objects by pk
+ *
+ * @param pks List of primary keys
+ * @param dbcon the connection to use
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public List<BlobType> retrieveByPKs(
+ Collection<ObjectKey> pks,
+ Connection dbcon)
+ throws TorqueException
+ {
+ if (pks == null || pks.size() == 0)
+ {
+ return new ArrayList<BlobType>();
+ }
+ Criteria criteria = buildCriteria(pks);
+ List<BlobType> result = doSelect(criteria, dbcon);
+ return result;
+ }
+
+
+
+
+
+
+
+
+}
Added: db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/string/organizeImportsExpected.txt
URL: http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-generator/src/test/re \
sources/org/apache/torque/generator/processor/string/organizeImportsExpected.txt?rev=1574691&view=auto
==============================================================================
--- db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/string/organizeImportsExpected.txt \
(added)
+++ db/torque/torque4/trunk/torque-generator/src/test/resources/org/apache/torque/generator/processor/string/organizeImportsExpected.txt \
Wed Mar 5 22:15:11 2014 @@ -0,0 +1,747 @@
+package org.apache.torque.test.peer.base;
+
+import java.sql.Blob;
+import java.sql.Connection;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.torque.NoRowsException;
+import org.apache.torque.TooManyRowsException;
+import org.apache.torque.Torque;
+import org.apache.torque.TorqueException;
+import org.apache.torque.criteria.Criteria;
+import org.apache.torque.om.mapper.RecordMapper;
+import org.apache.torque.om.ObjectKey;
+import org.apache.torque.om.SimpleKey;
+import org.apache.torque.map.TableMap;
+import org.apache.torque.util.Transaction;
+import org.apache.torque.util.ColumnValues;
+import org.apache.torque.util.JdbcTypedValue;
+
+import org.apache.torque.test.dbobject.*;
+import org.apache.torque.test.recordmapper.*;
+import org.apache.torque.test.peer.*;
+
+
+/**
+ * The skeleton for this class was autogenerated by Torque on:
+ *
+ * [Wed Mar 05 22:50:18 CET 2014]
+ *
+ * You should not use this class directly. It should not even be
+ * extended; all references should be to BlobTypePeer
+ */
+
+public abstract class BaseBlobTypePeerImpl
+ extends org.apache.torque.util.BasePeerImpl<BlobType>
+{
+ /** The class log. */
+ private static Log log = LogFactory.getLog(BaseBlobTypePeerImpl.class);
+
+ /** Serial version */
+ private static final long serialVersionUID = 1394056218047L;
+
+
+
+ /**
+ * Constructor.
+ * The recordMapper, tableMap and databaseName fields are correctly
+ * initialized.
+ */
+ public BaseBlobTypePeerImpl()
+ {
+ this(new BlobTypeRecordMapper(),
+ BlobTypePeer.TABLE,
+ BlobTypePeer.DATABASE_NAME);
+ }
+
+ /**
+ * Constructor providing the objects to be injected as parameters.
+ *
+ * @param recordMapper a record mapper to map JDBC result sets to objects
+ * @param tableMap the default table map
+ * @param databaseName the name of the database
+ */
+ public BaseBlobTypePeerImpl(
+ RecordMapper<BlobType> recordMapper,
+ TableMap tableMap,
+ String databaseName)
+ {
+ super(recordMapper, tableMap, databaseName);
+ }
+
+
+ /**
+ * Selects BlobType objects from the database which have
+ * the same content as the passed object.
+ *
+ * @return The list of selected objects, not null.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public List<BlobType> doSelect(BlobType obj)
+ throws TorqueException
+ {
+ return doSelect(buildSelectCriteria(obj));
+ }
+
+ /**
+ * Selects at most one BlobType object from the database
+ * which has the same content as the passed object.
+ *
+ * @return the selected Object, or null if no object was selected.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public BlobType doSelectSingleRecord(
+ BlobType obj)
+ throws TorqueException
+ {
+ List<BlobType> blobTypeList = doSelect(obj);
+ BlobType blobType = null;
+ if (blobTypeList.size() > 1)
+ {
+ throw new TooManyRowsException("Object " + obj
+ + " matched more than one record");
+ }
+ if (!blobTypeList.isEmpty())
+ {
+ blobType = blobTypeList.get(0);
+ }
+ return blobType;
+ }
+
+ /**
+ * Returns a new instance of the Data object class
+ */
+ public BlobType getDbObjectInstance()
+ {
+ return new BlobType();
+ }
+
+
+ /**
+ * Method to do inserts.
+ *
+ * @param columnValues the values to insert.
+ *
+ * @return the primary key of the inserted row.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public ObjectKey doInsert(ColumnValues columnValues) throws TorqueException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(
+ BlobTypePeer.DATABASE_NAME);
+ ObjectKey result = doInsert(columnValues, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return result;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Method to do inserts. This method is to be used during a transaction,
+ * otherwise use the doInsert(Criteria) method.
+ *
+ * @param columnValues the values to insert.
+ * @param con the connection to use, not null.
+ *
+ * @return the primary key of the inserted row.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public ObjectKey doInsert(ColumnValues columnValues, Connection con)
+ throws TorqueException
+ {
+ correctBooleans(columnValues);
+ return super.doInsert(columnValues, con);
+ }
+
+ /**
+ * Method to do inserts
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public void doInsert(BlobType obj) throws TorqueException
+ {
+ obj.setPrimaryKey(doInsert(buildColumnValues(obj)));
+ obj.setNew(false);
+ obj.setModified(false);
+ }
+
+ /**
+ * Method to do inserts. This method is to be used during a transaction,
+ * otherwise use the doInsert(BlobType) method. It will take
+ * care of the connection details internally.
+ *
+ * @param obj the data object to insert into the database.
+ * @param con the connection to use
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public void doInsert(BlobType obj, Connection con)
+ throws TorqueException
+ {
+ ObjectKey primaryKey = doInsert(buildColumnValues(obj), con);
+ if (primaryKey != null)
+ {
+ obj.setPrimaryKey(primaryKey);
+ }
+ obj.setNew(false);
+ obj.setModified(false);
+ }
+
+ /**
+ * Method to do updates.
+ *
+ * @param columnValues the values to update plus the primary key
+ * identifying the row to update.
+ *
+ * @return the number of affected rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doUpdate(ColumnValues columnValues) throws TorqueException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(
+ BlobTypePeer.DATABASE_NAME);
+ int result = doUpdate(columnValues, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return result;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Method to do updates. This method is to be used during a transaction,
+ * otherwise use the doUpdate(Criteria) method.
+ *
+ * @param columnValues the values to update plus the primary key
+ * identifying the row to update.
+ * @param con the connection to use, not null.
+ *
+ * @return the number of affected rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doUpdate(ColumnValues columnValues, Connection con)
+ throws TorqueException
+ {
+ Criteria selectCriteria
+ = new Criteria(BlobTypePeer.DATABASE_NAME);
+ correctBooleans(columnValues);
+
+ {
+ JdbcTypedValue pkValue
+ = columnValues.remove(BlobTypePeer.ID);
+ if (pkValue == null)
+ {
+ throw new TorqueException(
+ "The value for the primary key column "
+ + "BlobTypePeer.ID"
+ + " must be set");
+ }
+ if (pkValue.getSqlExpression() == null)
+ {
+ selectCriteria.where(
+ BlobTypePeer.ID,
+ pkValue.getValue());
+ }
+ else
+ {
+ selectCriteria.where(
+ BlobTypePeer.ID,
+ pkValue.getSqlExpression());
+ }
+ }
+
+
+ int rowCount = doUpdate(selectCriteria, columnValues, con);
+ return rowCount;
+ }
+
+ /**
+ * Updates an BlobType in the database.
+ * The primary key is used to identify the object to update.
+ *
+ * @param obj the data object to update in the database.
+ *
+ * @return the number of affected rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doUpdate(BlobType obj) throws TorqueException
+ {
+ ColumnValues columnValues = buildColumnValues(obj);
+ int result = doUpdate(columnValues);
+ obj.setModified(false);
+ return result;
+ }
+
+ /**
+ * Updates a BlobType in the database.
+ * The primary key is used to identify the object to update.
+ * This method is to be used during a transaction,
+ * otherwise the doUpdate(BlobType) method can be used.
+ *
+ * @param obj the data object to update in the database.
+ * @param con the connection to use, not null.
+
+ * @return the number of affected rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doUpdate(BlobType obj, Connection con)
+ throws TorqueException
+ {
+ ColumnValues columnValues = buildColumnValues(obj);
+ int result = doUpdate(columnValues, con);
+ obj.setModified(false);
+ return result;
+ }
+
+ /**
+ * Deletes a data object, i.e. a row in a table, in the database.
+ *
+ * @param obj the data object to delete in the database, not null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(BlobType obj) throws TorqueException
+ {
+ int result = doDelete(buildCriteria(obj.getPrimaryKey()));
+ obj.setDeleted(true);
+ return result;
+ }
+
+ /**
+ * Deletes a data object, i.e. a row in a table, in the database.
+ * This method is to be used during a transaction, otherwise use the
+ * doDelete(BlobType) method.
+ *
+ * @param obj the data object to delete in the database, not null.
+ * @param con the connection to use, not null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(BlobType obj, Connection con)
+ throws TorqueException
+ {
+ int result = doDelete(buildCriteria(obj.getPrimaryKey()), con);
+ obj.setDeleted(true);
+ return result;
+ }
+
+ /**
+ * Deletes data objects, i.e. rows in a table, in the database.
+ *
+ * @param objects the data object to delete in the database, not null,
+ * may not contain null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(Collection<BlobType> objects)
+ throws TorqueException
+ {
+ int result = doDelete(buildPkCriteria(objects));
+ for (BlobType object : objects)
+ {
+ object.setDeleted(true);
+ }
+ return result;
+ }
+
+ /**
+ * Deletes data objects, i.e. rows in a table, in the database.
+ * This method uses the passed connection to delete the rows;
+ * if a transaction is open in the connection, the deletion happens inside
+ * this transaction.
+ *
+ * @param objects the data objects to delete in the database, not null,
+ * may not contain null.
+ * @param con the connection to use for deleting, not null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(
+ Collection<BlobType> objects,
+ Connection con)
+ throws TorqueException
+ {
+ int result = doDelete(buildPkCriteria(objects), con);
+ for (BlobType object : objects)
+ {
+ object.setDeleted(true);
+ }
+ return result;
+ }
+
+ /**
+ * Deletes a row in the database.
+ *
+ * @param pk the ObjectKey that identifies the row to delete.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(ObjectKey pk) throws TorqueException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(
+ BlobTypePeer.DATABASE_NAME);
+ int deletedRows = doDelete(pk, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return deletedRows;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Deletes a row in the database.
+ * This method is to be used during a transaction,
+ * otherwise use the doDelete(ObjectKey) method.
+ *
+ * @param pk the ObjectKey that identifies the row to delete.
+ * @param con the connection to use for deleting, not null.
+ *
+ * @return the number of deleted rows.
+ *
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public int doDelete(ObjectKey pk, Connection con)
+ throws TorqueException
+ {
+ return doDelete(buildCriteria(pk), con);
+ }
+
+ /**
+ * Build a Criteria object which selects all objects which have a given
+ * primary key.
+ *
+ * @param pk the primary key value to build the criteria from, not null.
+ */
+ public Criteria buildCriteria(ObjectKey pk)
+ {
+ Criteria criteria = new Criteria();
+ criteria.and(BlobTypePeer.ID, pk);
+ return criteria;
+ }
+
+ /**
+ * Build a Criteria object which selects all objects which primary keys
+ * are contained in the passed collection.
+ *
+ * @param pks the primary key values to build the criteria from, not null,
+ * may not contain null.
+ */
+ public Criteria buildCriteria(Collection<ObjectKey> pks)
+ {
+ Criteria criteria = new Criteria();
+ criteria.andIn(BlobTypePeer.ID, pks);
+ return criteria;
+ }
+
+
+ /**
+ * Build a Criteria object which selects all passed objects using their
+ * primary key. Objects which do not yet have a primary key are ignored.
+ *
+ * @param objects the objects to build the criteria from, not null,
+ * may not contain null.
+ */
+ public Criteria buildPkCriteria(
+ Collection<BlobType> objects)
+ {
+ List<ObjectKey> pks = new ArrayList<ObjectKey>(objects.size());
+ for (BlobType object : objects)
+ {
+ ObjectKey pk = object.getPrimaryKey();
+ if (pk != null)
+ {
+ pks.add(pk);
+ }
+ }
+ return buildCriteria(pks);
+ }
+
+ /**
+ * Build a Criteria object from the data object for this peer.
+ * The primary key columns are only added if the object is not new.
+ *
+ * @param obj the object to build the criteria from, not null.
+ */
+ public Criteria buildCriteria(BlobType obj)
+ {
+ Criteria criteria = new Criteria(BlobTypePeer.DATABASE_NAME);
+ if (!obj.isNew())
+ {
+ criteria.and(BlobTypePeer.ID, obj.getId());
+ }
+ criteria.and(BlobTypePeer.BLOB_VALUE, obj.getBlobValue());
+ criteria.and(BlobTypePeer.BLOB_OBJECT_VALUE, obj.getBlobObjectValue());
+ return criteria;
+ }
+
+ /**
+ * Build a Criteria object from the data object for this peer,
+ * skipping all binary columns.
+ *
+ * @param obj the object to build the criteria from, not null.
+ */
+ public Criteria buildSelectCriteria(BlobType obj)
+ {
+ Criteria criteria = new Criteria(BlobTypePeer.DATABASE_NAME);
+ if (!obj.isNew())
+ {
+ criteria.and(BlobTypePeer.ID, obj.getId());
+ }
+ return criteria;
+ }
+
+ /**
+ * Returns the contents of the object as ColumnValues object.
+ * Primary key columns which are generated on insertion are not
+ * added to the returned object if they still have their initial
+ * value. Also, columns which have the useDatabaseDefaultValue
+ * flag set to true are also not added to the returned object
+ * if they still have their initial value.
+ *
+ * @throws TorqueException if the table map cannot be retrieved
+ * (should not happen).
+ */
+ public ColumnValues buildColumnValues(BlobType blobType)
+ throws TorqueException
+ {
+ ColumnValues columnValues = new ColumnValues();
+ if (!blobType.isNew()
+ || blobType.getId() != 0L)
+ {
+ columnValues.put(
+ BlobTypePeer.ID,
+ new JdbcTypedValue(
+ blobType.getId(),
+ -5));
+ }
+ columnValues.put(
+ BlobTypePeer.BLOB_VALUE,
+ new JdbcTypedValue(
+ blobType.getBlobValue(),
+ 2004));
+ columnValues.put(
+ BlobTypePeer.BLOB_OBJECT_VALUE,
+ new JdbcTypedValue(
+ blobType.getBlobObjectValue(),
+ 2004));
+ return columnValues;
+ }
+
+ /**
+ * Retrieve a single object by pk
+ *
+ * @param pk the primary key
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ * @throws NoRowsException Primary key was not found in database.
+ * @throws TooManyRowsException Primary key was not found in database.
+ */
+ public BlobType retrieveByPK(long pk)
+ throws TorqueException, NoRowsException, TooManyRowsException
+ {
+ return retrieveByPK(SimpleKey.keyFor(pk));
+ }
+
+ /**
+ * Retrieve a single object by pk
+ *
+ * @param pk the primary key
+ * @param con the connection to use
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ * @throws NoRowsException Primary key was not found in database.
+ * @throws TooManyRowsException Primary key was not found in database.
+ */
+ public BlobType retrieveByPK(long pk, Connection con)
+ throws TorqueException, NoRowsException, TooManyRowsException
+ {
+ return retrieveByPK(SimpleKey.keyFor(pk), con);
+ }
+
+
+
+
+ /**
+ * Retrieve a single object by pk
+ *
+ * @param pk the primary key
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ * @throws NoRowsException Primary key was not found in database.
+ * @throws TooManyRowsException Primary key was not found in database.
+ */
+ public BlobType retrieveByPK(ObjectKey pk)
+ throws TorqueException, NoRowsException, TooManyRowsException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(BlobTypePeer.DATABASE_NAME);
+ BlobType result = retrieveByPK(pk, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return result;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Retrieve a single object by pk
+ *
+ * @param pk the primary key
+ * @param con the connection to use
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ * @throws NoRowsException Primary key was not found in database.
+ * @throws TooManyRowsException Primary key was not found in database.
+ */
+ public BlobType retrieveByPK(ObjectKey pk, Connection con)
+ throws TorqueException, NoRowsException, TooManyRowsException
+ {
+ Criteria criteria = buildCriteria(pk);
+ List<BlobType> v = doSelect(criteria, con);
+ if (v.size() == 0)
+ {
+ throw new NoRowsException("Failed to select a row.");
+ }
+ else if (v.size() > 1)
+ {
+ throw new TooManyRowsException("Failed to select only one row.");
+ }
+ else
+ {
+ return (BlobType)v.get(0);
+ }
+ }
+
+
+ /**
+ * Retrieve a multiple objects by pk
+ *
+ * @param pks List of primary keys
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public List<BlobType> retrieveByPKs(Collection<ObjectKey> pks)
+ throws TorqueException
+ {
+ Connection connection = null;
+ try
+ {
+ connection = Transaction.begin(BlobTypePeer.DATABASE_NAME);
+ List<BlobType> result = retrieveByPKs(pks, connection);
+ Transaction.commit(connection);
+ connection = null;
+ return result;
+ }
+ finally
+ {
+ if (connection != null)
+ {
+ Transaction.safeRollback(connection);
+ }
+ }
+ }
+
+ /**
+ * Retrieve multiple objects by pk
+ *
+ * @param pks List of primary keys
+ * @param dbcon the connection to use
+ * @throws TorqueException Any exceptions caught during processing will be
+ * rethrown wrapped into a TorqueException.
+ */
+ public List<BlobType> retrieveByPKs(
+ Collection<ObjectKey> pks,
+ Connection dbcon)
+ throws TorqueException
+ {
+ if (pks == null || pks.size() == 0)
+ {
+ return new ArrayList<BlobType>();
+ }
+ Criteria criteria = buildCriteria(pks);
+ List<BlobType> result = doSelect(criteria, dbcon);
+ return result;
+ }
+
+
+
+
+
+
+
+
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: torque-dev-unsubscribe@db.apache.org
For additional commands, e-mail: torque-dev-help@db.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic