TableCategoryBase.java
// Do not edit this file! It was generated by Melati POEM's DSD preprocessor.
package org.melati.poem.generated;
import java.util.Collections;
import java.util.Enumeration;
import java.util.List;
import org.melati.poem.AccessPoemException;
import org.melati.poem.CachedSelection;
import org.melati.poem.Column;
import org.melati.poem.Field;
import org.melati.poem.JdbcPersistent;
import org.melati.poem.PoemDatabaseTables;
import org.melati.poem.TableCategory;
import org.melati.poem.TableCategoryTable;
import org.melati.poem.TableInfo;
import org.melati.poem.ValidationPoemException;
import org.melati.poem.util.EmptyEnumeration;
/**
* Melati POEM generated abstract base class for a <code>Persistent</code>
* <code>tableCategory</code> Object.
*
* See org.melati.poem.prepro.TableDef#generatePersistentBaseJava
*/
public abstract class TableCategoryBase extends JdbcPersistent {
/**
* Retrieves the Database object.
*
* See org.melati.poem.prepro.TableDef#generatePersistentBaseJava
* @return the database
*/
public PoemDatabaseTables getPoemDatabaseTables() {
return (PoemDatabaseTables)getDatabase();
}
/**
* Retrieves the <code>TableCategoryTable</code> table
* which this <code>Persistent</code> is from.
*
* See org.melati.poem.prepro.TableDef#generatePersistentBaseJava
* @return the TableCategoryTable
*/
@SuppressWarnings("unchecked")
public TableCategoryTable<TableCategory> getTableCategoryTable() {
return (TableCategoryTable<TableCategory>)getTable();
}
@SuppressWarnings("unchecked")
private TableCategoryTable<TableCategory> _getTableCategoryTable() {
return (TableCategoryTable<TableCategory>)getTable();
}
// Fields in this table
/**
* id - The Table Row Object ID
*/
protected Integer id;
/**
* name - A human-readable name for the category
*/
protected String name;
/**
* Retrieves the <code>Id</code> value, without locking,
* for this <code>tableCategory</code> <code>Persistent</code>.
*
* see org.melati.poem.prepro.FieldDef#generateBaseMethods
* @return the Integer id
*/
public Integer getId_unsafe() {
return id;
}
/**
* Sets the <code>Id</code> value directly, without checking,
* for this tableCategory <code>Persistent</code>.
*
* see org.melati.poem.prepro.FieldDef#generateBaseMethods
* @param cooked the pre-validated value to set
*/
public void setId_unsafe(Integer cooked) {
id = cooked;
}
/**
* Retrieves the Id value, with locking, for this
* <code>tableCategory</code> <code>Persistent</code>.
* Field description:
* The Table Row Object ID
*
* Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
* @throws AccessPoemException
* if the current <code>AccessToken</code>
* does not confer write access rights
* @return the value of the field <code>Id</code> for this
* <code>tableCategory</code> <code>Persistent</code>
*/
public Integer getId()
throws AccessPoemException {
readLock();
return getId_unsafe();
}
/**
* Sets the <code>Id</code> value, with checking, for this
* <code>tableCategory</code> <code>Persistent</code>.
* Field description:
* The Table Row Object ID
*
* Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
* @param cooked a validated <code>int</code>
* @throws AccessPoemException
* if the current <code>AccessToken</code>
* does not confer write access rights
* @throws ValidationPoemException
* if the value is not valid
*/
public void setId(Integer cooked)
throws AccessPoemException, ValidationPoemException {
_getTableCategoryTable().getIdColumn().
getType().assertValidCooked(cooked);
writeLock();
setId_unsafe(cooked);
}
/**
* Sets the <code>Id</code> value, with checking, for this
* <code>tableCategory</code> <code>Persistent</code>.
* Field description:
* The Table Row Object ID
*
*
* Generated by org.melati.poem.prepro.IntegerFieldDef#generateBaseMethods
* @param cooked a validated <code>int</code>
* @throws AccessPoemException
* if the current <code>AccessToken</code>
* does not confer write access rights
* @throws ValidationPoemException
* if the value is not valid
*/
public final void setId(int cooked)
throws AccessPoemException, ValidationPoemException {
setId(new Integer(cooked));
}
/**
* Retrieves the <code>Id</code> value as a <code>Field</code>
* from this <code>tableCategory</code> <code>Persistent</code>.
*
* see org.melati.poem.prepro.FieldDef#generateFieldCreator
* @throws AccessPoemException
* if the current <code>AccessToken</code>
* does not confer write access rights
* @return the Integer id
*/
public Field<Integer> getIdField() throws AccessPoemException {
Column<Integer> c = _getTableCategoryTable().getIdColumn();
return new Field<Integer>((Integer)c.getRaw(this), c);
}
/**
* Retrieves the <code>Name</code> value, without locking,
* for this <code>tableCategory</code> <code>Persistent</code>.
*
* see org.melati.poem.prepro.FieldDef#generateBaseMethods
* @return the String name
*/
public String getName_unsafe() {
return name;
}
/**
* Sets the <code>Name</code> value directly, without checking,
* for this tableCategory <code>Persistent</code>.
*
* see org.melati.poem.prepro.FieldDef#generateBaseMethods
* @param cooked the pre-validated value to set
*/
public void setName_unsafe(String cooked) {
name = cooked;
}
/**
* Retrieves the Name value, with locking, for this
* <code>tableCategory</code> <code>Persistent</code>.
* Field description:
* A human-readable name for the category
*
* Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
* @throws AccessPoemException
* if the current <code>AccessToken</code>
* does not confer write access rights
* @return the value of the field <code>Name</code> for this
* <code>tableCategory</code> <code>Persistent</code>
*/
public String getName()
throws AccessPoemException {
readLock();
return getName_unsafe();
}
/**
* Sets the <code>Name</code> value, with checking, for this
* <code>tableCategory</code> <code>Persistent</code>.
* Field description:
* A human-readable name for the category
*
* Generated by org.melati.poem.prepro.AtomFieldDef#generateBaseMethods
* @param cooked a validated <code>int</code>
* @throws AccessPoemException
* if the current <code>AccessToken</code>
* does not confer write access rights
* @throws ValidationPoemException
* if the value is not valid
*/
public void setName(String cooked)
throws AccessPoemException, ValidationPoemException {
_getTableCategoryTable().getNameColumn().
getType().assertValidCooked(cooked);
writeLock();
setName_unsafe(cooked);
}
/**
* Retrieves the <code>Name</code> value as a <code>Field</code>
* from this <code>tableCategory</code> <code>Persistent</code>.
*
* see org.melati.poem.prepro.FieldDef#generateFieldCreator
* @throws AccessPoemException
* if the current <code>AccessToken</code>
* does not confer write access rights
* @return the String name
*/
public Field<String> getNameField() throws AccessPoemException {
Column<String> c = _getTableCategoryTable().getNameColumn();
return new Field<String>((String)c.getRaw(this), c);
}
private CachedSelection<TableInfo> categoryTableInfos = null;
/** References to this TableCategory in the TableInfo table via its category field.*/
@SuppressWarnings("unchecked")
public Enumeration<TableInfo> getCategoryTableInfos() {
if (getTroid() == null)
return new EmptyEnumeration<TableInfo>();
else {
if (categoryTableInfos == null)
categoryTableInfos =
getPoemDatabaseTables().getTableInfoTable().getCategoryColumn().cachedSelectionWhereEq(getTroid());
return categoryTableInfos.objects();
}
}
/** References to this TableCategory in the TableInfo table via its category field, as a List.*/
public List<TableInfo> getCategoryTableInfoList() {
return Collections.list(getCategoryTableInfos());
}
}