org.apache.torque.om
Class BaseObject

java.lang.Object
  extended byorg.apache.torque.om.BaseObject
All Implemented Interfaces:
Persistent, java.io.Serializable

public abstract class BaseObject
extends java.lang.Object
implements Persistent, java.io.Serializable

This class contains attributes and methods that are used by all business objects within the system.

Version:
$Id: BaseObject.java,v 1.14 2002/11/26 22:32:55 mpoeschl Exp $
Author:
Frank Y. Kim, John D. McNally
See Also:
Serialized Form

Field Summary
private  boolean is_new
          attribute to determine if this object has previously been saved.
private  org.apache.log4j.Category log
          Cache the logger to avoid looking it up every time its needed.
private  boolean modified
          A flag that indicates an object has been modified since it was last retrieved from the persistence mechanism.
static int NEW_ID
          The constant denoting an unset numeric database identifier.
private static java.lang.String NOT_IMPLEMENTED
          Shared portion of the error message thrown for methods which are not implemented.
private  ObjectKey primaryKey
          The unique id for the object which can be used for persistence.
 
Constructor Summary
BaseObject()
           
 
Method Summary
 boolean equals(BaseObject bo)
          Compares the primary key of this instance with the key of another.
 boolean equals(java.lang.Object obj)
          Compares this with another BaseObject instance.
 java.lang.Object getByName(java.lang.String field)
          Retrieves a field from the object by name.
 java.lang.Object getByPeerName(java.lang.String name)
          Retrieves a field from the object by name passed in as a String.
 java.lang.Object getByPosition(int pos)
          Retrieves a field from the object by position as specified in a database schema for example.
protected  org.apache.log4j.Category getCategory()
          Deprecated. use log()
 ObjectKey getPrimaryKey()
          getter for the object primaryKey.
 java.math.BigDecimal getPrimaryKeyAsBigDecimal()
          Deprecated. Use getPrimaryKey() instead. Refer to ObjectKey for more information on type conversion.
 int getPrimaryKeyAsInt()
          Deprecated. Use getPrimaryKey() instead. Refer to ObjectKey for more information on type conversion.
 long getPrimaryKeyAsLong()
          Deprecated. Use getPrimaryKey() instead. Refer to ObjectKey for more information on type conversion.
 java.lang.String getPrimaryKeyAsString()
          Deprecated. Use getPrimaryKey() instead. Refer to ObjectKey for more information on type conversion.
 int hashCode()
          If the primary key is not null, return the hashcode of the primary key.
 boolean isModified()
          Returns whether the object has been modified.
 boolean isNew()
          Returns whether the object has ever been saved.
protected  org.apache.log4j.Category log()
          gets a log4j Category based on class name.
 void resetModified()
          Sets the modified state for the object to be false.
abstract  void save()
          Saves the object.
abstract  void save(java.sql.Connection con)
          Stores the object in the database.
abstract  void save(java.lang.String dbName)
          Stores the object in the database.
 void setModified(boolean m)
          Sets the modified state for the object.
 void setNew(boolean b)
          Setter for the isNew attribute.
 void setPrimaryKey(int primaryKey)
          Deprecated.  
 void setPrimaryKey(long primaryKey)
          Deprecated.  
 void setPrimaryKey(ObjectKey primaryKey)
          Sets the PrimaryKey for the object as an Object.
 void setPrimaryKey(SimpleKey[] primaryKey)
          Sets the PrimaryKey for the object as an Object.
 void setPrimaryKey(java.lang.String primaryKey)
          Sets the PrimaryKey for the object.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NEW_ID

public static final int NEW_ID
The constant denoting an unset numeric database identifier.

See Also:
Constant Field Values

NOT_IMPLEMENTED

private static final java.lang.String NOT_IMPLEMENTED
Shared portion of the error message thrown for methods which are not implemented.

See Also:
Constant Field Values

is_new

private boolean is_new
attribute to determine if this object has previously been saved.


primaryKey

private ObjectKey primaryKey
The unique id for the object which can be used for persistence.


modified

private boolean modified
A flag that indicates an object has been modified since it was last retrieved from the persistence mechanism. This flag is used to determine if this object should be saved to the database. We initialize it to true to force new objects to be saved.


log

private transient org.apache.log4j.Category log
Cache the logger to avoid looking it up every time its needed.

Constructor Detail

BaseObject

public BaseObject()
Method Detail

getPrimaryKey

public ObjectKey getPrimaryKey()
getter for the object primaryKey.

Specified by:
getPrimaryKey in interface Persistent
Returns:
the object primaryKey as an Object

getPrimaryKeyAsInt

public int getPrimaryKeyAsInt()
Deprecated. Use getPrimaryKey() instead. Refer to ObjectKey for more information on type conversion.

Attempts to return the object primaryKey as an int.

Returns:
the object primaryKey as an int; returns -1 if primaryKey was not set or could not be represented as an int.

getPrimaryKeyAsLong

public long getPrimaryKeyAsLong()
Deprecated. Use getPrimaryKey() instead. Refer to ObjectKey for more information on type conversion.

Attempts to return the object primaryKey as a long.

Returns:
the object primaryKey as a long; returns -1 if primaryKey was not set or could not be represented as a long.

getPrimaryKeyAsBigDecimal

public java.math.BigDecimal getPrimaryKeyAsBigDecimal()
Deprecated. Use getPrimaryKey() instead. Refer to ObjectKey for more information on type conversion.

Attempts to return the object primaryKey as a BigDecimal.

Returns:
the object primaryKey as a BigDecimal; returns -1 if primaryKey was not set or could not be represented as a BigDecimal.

getPrimaryKeyAsString

public java.lang.String getPrimaryKeyAsString()
Deprecated. Use getPrimaryKey() instead. Refer to ObjectKey for more information on type conversion.

Gets the object primaryKey as a String.

Returns:
the object primaryKey as a String; returns null if primaryKey was not set.

isModified

public boolean isModified()
Returns whether the object has been modified.

Specified by:
isModified in interface Persistent
Returns:
True if the object has been modified.

isNew

public boolean isNew()
Returns whether the object has ever been saved. This will be false, if the object was retrieved from storage or was created and then saved.

Specified by:
isNew in interface Persistent
Returns:
true, if the object has never been persisted.

setNew

public void setNew(boolean b)
Setter for the isNew attribute. This method will be called by Torque-generated children and Peers.

Specified by:
setNew in interface Persistent
Parameters:
b - the state of the object.

setPrimaryKey

public void setPrimaryKey(int primaryKey)
                   throws java.lang.Exception
Deprecated.  

Sets the primaryKey for the object as an int.

Parameters:
primaryKey - The new primaryKey for the object.
Throws:
java.lang.Exception - This method will not throw any exceptions but this allows for children to override the method more easily

setPrimaryKey

public void setPrimaryKey(long primaryKey)
                   throws java.lang.Exception
Deprecated.  

Sets the PrimaryKey for the object as an long.

Parameters:
primaryKey - The new PrimaryKey for the object.
Throws:
java.lang.Exception - This method will not throw any exceptions but this allows for children to override the method more easily

setPrimaryKey

public void setPrimaryKey(java.lang.String primaryKey)
                   throws java.lang.Exception
Sets the PrimaryKey for the object.

Specified by:
setPrimaryKey in interface Persistent
Parameters:
primaryKey - The new PrimaryKey for the object.
Throws:
java.lang.Exception - This method will not throw any exceptions but this allows for children to override the method more easily

setPrimaryKey

public void setPrimaryKey(SimpleKey[] primaryKey)
                   throws java.lang.Exception
Sets the PrimaryKey for the object as an Object.

Parameters:
primaryKey - The new PrimaryKey for the object.
Throws:
java.lang.Exception - This method will not throw any exceptions but this allows for children to override the method more easily

setPrimaryKey

public void setPrimaryKey(ObjectKey primaryKey)
                   throws java.lang.Exception
Sets the PrimaryKey for the object as an Object.

Specified by:
setPrimaryKey in interface Persistent
Parameters:
primaryKey - The new PrimaryKey for the object.
Throws:
java.lang.Exception - This method will not throw any exceptions but this allows for children to override the method more easily

setModified

public void setModified(boolean m)
Sets the modified state for the object.

Specified by:
setModified in interface Persistent
Parameters:
m - The new modified state for the object.

resetModified

public void resetModified()
Sets the modified state for the object to be false.


getByName

public java.lang.Object getByName(java.lang.String field)
Retrieves a field from the object by name. Must be overridden if called. BaseObject's implementation will throw an Error.

Parameters:
field - The name of the field to retrieve.
Returns:
The retrieved field value

getByPeerName

public java.lang.Object getByPeerName(java.lang.String name)
Retrieves a field from the object by name passed in as a String. Must be overridden if called. BaseObject's implementation will throw an Error.


getByPosition

public java.lang.Object getByPosition(int pos)
Retrieves a field from the object by position as specified in a database schema for example. Must be overridden if called. BaseObject's implementation will throw an Error.


equals

public boolean equals(java.lang.Object obj)
Compares this with another BaseObject instance. If obj is an instance of BaseObject, delegates to equals(BaseObject). Otherwise, returns false.

Parameters:
obj - The object to compare to.
Returns:
Whether equal to the object specified.

equals

public boolean equals(BaseObject bo)
Compares the primary key of this instance with the key of another.

Parameters:
bo - The object to compare to.
Returns:
Whether the primary keys are equal.

hashCode

public int hashCode()
If the primary key is not null, return the hashcode of the primary key. Otherwise calls Object.hashCode().

Returns:
an int value

getCategory

protected org.apache.log4j.Category getCategory()
Deprecated. use log()

gets a log4j Category based on class name.

Returns:
a Category to write log to.

log

protected org.apache.log4j.Category log()
gets a log4j Category based on class name.

Returns:
a Category to write log to.

save

public abstract void save()
                   throws java.lang.Exception
Description copied from interface: Persistent
Saves the object.

Specified by:
save in interface Persistent
Throws:
java.lang.Exception
See Also:
Persistent.save()

save

public abstract void save(java.lang.String dbName)
                   throws java.lang.Exception
Description copied from interface: Persistent
Stores the object in the database. If the object is new, it inserts it; otherwise an update is performed.

Specified by:
save in interface Persistent
Throws:
java.lang.Exception
See Also:
Persistent.save(String)

save

public abstract void save(java.sql.Connection con)
                   throws java.lang.Exception
Description copied from interface: Persistent
Stores the object in the database. If the object is new, it inserts it; otherwise an update is performed. This method is meant to be used as part of a transaction, otherwise use the save() method and the connection details will be handled internally

Specified by:
save in interface Persistent
Throws:
java.lang.Exception
See Also:
Persistent.save(Connection)


Copyright © 1999-2003 Apache Software Foundation. All Rights Reserved.