DS-2248 Ensure that DSpaceObject subclasses create typed TableRows when instantiated.

This commit is contained in:
Mark H. Wood
2014-11-19 17:11:57 -05:00
parent 257dfe544d
commit bca1b2cf0e
6 changed files with 37 additions and 7 deletions

View File

@@ -39,11 +39,11 @@ import org.dspace.storage.rdbms.TableRowIterator;
public class Bitstream extends DSpaceObject
{
/** log4j logger */
private static Logger log = Logger.getLogger(Bitstream.class);
private static final Logger log = Logger.getLogger(Bitstream.class);
/** The row in the table representing this bitstream */
private TableRow bRow;
private final TableRow bRow;
/** The bitstream format corresponding to this bitstream */
private BitstreamFormat bitstreamFormat;
@@ -64,6 +64,11 @@ public class Bitstream extends DSpaceObject
Bitstream(Context context, TableRow row) throws SQLException
{
super(context);
// Ensure that my TableRow is typed.
if (null == row.getTable())
row.setTable("bitstream");
bRow = row;
// Get the bitstream format

View File

@@ -40,10 +40,10 @@ import org.dspace.storage.rdbms.TableRowIterator;
public class Bundle extends DSpaceObject
{
/** log4j logger */
private static Logger log = Logger.getLogger(Bundle.class);
private static final Logger log = Logger.getLogger(Bundle.class);
/** The table row corresponding to this bundle */
private TableRow bundleRow;
private final TableRow bundleRow;
/** The bitstreams in this bundle */
private List<Bitstream> bitstreams;
@@ -62,6 +62,11 @@ public class Bundle extends DSpaceObject
Bundle(Context context, TableRow row) throws SQLException
{
super(context);
// Ensure that my TableRow is typed.
if (null == row.getTable())
row.setTable("bundle");
bundleRow = row;
bitstreams = new ArrayList<Bitstream>();
String bitstreamOrderingField = ConfigurationManager.getProperty("webui.bitstream.order.field");

View File

@@ -42,10 +42,10 @@ import java.util.*;
public class Community extends DSpaceObject
{
/** log4j category */
private static Logger log = Logger.getLogger(Community.class);
private static final Logger log = Logger.getLogger(Community.class);
/** The table row corresponding to this item */
private TableRow communityRow;
private final TableRow communityRow;
/** The logo bitstream */
private Bitstream logo;
@@ -76,6 +76,11 @@ public class Community extends DSpaceObject
Community(Context context, TableRow row) throws SQLException
{
super(context);
// Ensure that my TableRow is typed.
if (null == row.getTable())
row.setTable("community");
communityRow = row;
// Get the logo bitstream

View File

@@ -66,7 +66,7 @@ public class Item extends DSpaceObject
private static final Logger log = Logger.getLogger(Item.class);
/** The table row corresponding to this item */
private TableRow itemRow;
private final TableRow itemRow;
/** The e-person who submitted this item */
private EPerson submitter;
@@ -96,6 +96,11 @@ public class Item extends DSpaceObject
Item(Context context, TableRow row) throws SQLException
{
super(context);
// Ensure that my TableRow is typed.
if (null == row.getTable())
row.setTable("item");
itemRow = row;
modified = false;
clearDetails();

View File

@@ -77,6 +77,11 @@ public class EPerson extends DSpaceObject
*/
EPerson(Context context, TableRow row) throws SQLException {
super(context);
// Ensure that my TableRow is typed.
if (null == row.getTable())
row.setTable("eperson");
myRow = row;
// Cache ourselves

View File

@@ -78,6 +78,11 @@ public class Group extends DSpaceObject
Group(Context context, TableRow row) throws SQLException
{
super(context);
// Ensure that my TableRow is typed.
if (null == row.getTable())
row.setTable("epersongroup");
myRow = row;
// Cache ourselves