|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.opensubsystems.core.persist.db.DatabaseSchemaImpl
org.opensubsystems.core.persist.db.ModifiableDatabaseSchemaImpl
org.opensubsystems.patterns.listdata.persist.db.impl.ModifiableListDatabaseSchemaImpl
org.opensubsystems.inventory.persist.db.CategoryDatabaseSchema
public abstract class CategoryDatabaseSchema
Database specific operations related to persistence of categories.
| Field Summary | |
|---|---|
static int |
CATEGORY_DESCRIPTION_MAXLENGTH
Maximal length of category description. |
static int[] |
CATEGORY_MANDATORY_RETRIEVE_COLUMNS
Columns which always have to be retrieved from the database |
static int |
CATEGORY_NAME_MAXLENGTH
Maximal length of category name. |
static java.lang.String |
CATEGORY_SCHEMA_NAME
Name identifies this schema in the database. |
static int |
CATEGORY_SCHEMA_VERSION
Version of this schema in the database. |
static int[] |
CATEGORY_SORT_COLUMNS
Static variable for array of all columns codes that can be used for sorting. |
| Fields inherited from class org.opensubsystems.patterns.listdata.persist.db.impl.ModifiableListDatabaseSchemaImpl |
|---|
m_mapFilterableColumns, m_mapListableTableNames, m_mapMandatoryRetrieveColumns, m_mapSortableColumns |
| Fields inherited from class org.opensubsystems.core.persist.db.ModifiableDatabaseSchemaImpl |
|---|
m_mapModifiableTableNames |
| Fields inherited from class org.opensubsystems.core.persist.db.DatabaseSchemaImpl |
|---|
DATABASE_SCHEMA_PREFIX, DATABASE_SCHEMA_PREFIX_DEFAULT, m_arrDependentSchemas, m_bIsInDomain, m_iSchemaVersion, m_strSchemaName, NL |
| Fields inherited from interface org.opensubsystems.core.persist.db.DatabaseOperations |
|---|
DBOP_DELETE, DBOP_INSERT, DBOP_SELECT, DBOP_UPDATE |
| Constructor Summary | |
|---|---|
CategoryDatabaseSchema()
Default constructor. |
|
| Method Summary | |
|---|---|
void |
createListIndexes(java.sql.Connection cntDBConnection)
Method creates specified LST indexes used for speeding up retrieving data into the list. |
int |
delete(java.sql.Connection dbConnection,
int iId,
int iDomainId)
Delete category with specified id. |
protected int |
deleteList(java.sql.Connection dbConnection,
java.util.List lstIds,
int iDomainId,
org.opensubsystems.patterns.listdata.data.SimpleRule listSecurityData)
Delete all category records specified within the list. |
protected int |
deleteRecursiveCategories(java.sql.Connection dbConnection,
java.util.List lstIds,
int iDomainId,
int iDeleted,
org.opensubsystems.patterns.listdata.data.SimpleRule listSecurityData)
Recursive delete all categories by IDs specified in the list. |
int |
deleteRoot(java.sql.Connection dbConnection,
int iId,
int iDomainId,
org.opensubsystems.patterns.listdata.data.SimpleRule listSecurityData)
Delete category and all its subcategories. |
int |
deleteRoots(java.sql.Connection dbConnection,
int[] arrIds,
int iDomainId,
org.opensubsystems.patterns.listdata.data.SimpleRule listSecurityData)
Delete multiple categories and its subcategories. |
java.lang.StringBuffer |
getColumns(boolean specific,
int[] columns,
java.lang.Object[] prefixes,
java.lang.Object[] postfixes,
java.lang.StringBuffer buffer)
|
protected java.lang.String |
getDeleteCategoriesCascade(int[] arrIds,
org.opensubsystems.patterns.listdata.data.SimpleRule secData)
Get query to cascade delete more categories and all belonging subcategories. |
java.lang.String |
getDeleteCategoryById()
Get query to delete particular category. |
protected java.lang.String |
getDeleteCategoryCascade(org.opensubsystems.patterns.listdata.data.SimpleRule secData)
Get query to cascade delete category and all its subcategories. |
java.lang.String |
getInsertCategory()
Method returns simple insert category query. |
abstract java.lang.String |
getInsertCategoryAndFetchGeneratedValues()
Get query that inserts a category to the database and fetches database generated values such as the generated id and creation timestamp |
java.lang.String |
getSelectActualCategoryCount(int[] arrIds)
Get query to retrieve count of categories which still exists. |
java.lang.String |
getSelectCategoryById(int[] columns)
Get query to select category by ID. |
java.lang.String |
getSelectCategoryByParentIdAndName(int[] columns,
int parentId)
Get query to select category by parent ID and name. |
java.lang.String |
getSelectCategoryCount()
Get number of subcategories for the specified category |
protected java.lang.String |
getSelectCategoryExist(Category cCategory)
Get sql query to find out if specified category exists. |
protected java.util.List |
getSelectCategoryIDsForMoreParents(java.sql.Connection dbConnection,
java.util.List lstParentIDs,
int iDomainId)
Get all category ids belonging to the specified parents. |
protected java.util.List |
getSelectCategoryIDsForParent(java.sql.Connection dbConnection,
int iParentId,
int iDomainId)
Get all category ids belonging to the specified parent. |
abstract java.lang.String |
getUpdateCategoryAndFetchGeneratedValues()
Get query that updates category in the database and fetches database generated values such as the updated modification timestamp |
void |
handleSQLException(java.sql.SQLException exc,
java.sql.Connection dbConnection,
int iOperationType,
int iDataType,
java.lang.Object data)
|
| Methods inherited from class org.opensubsystems.patterns.listdata.persist.db.impl.ModifiableListDatabaseSchemaImpl |
|---|
getFilterbleColumns, getMandatoryRetrieveColumns, getSelectList, getSortableColumns |
| Methods inherited from class org.opensubsystems.core.persist.db.ModifiableDatabaseSchemaImpl |
|---|
deleteRelatedData, getModifiableTableNames |
| Methods inherited from class org.opensubsystems.core.persist.db.DatabaseSchemaImpl |
|---|
getDependentSchemas, getJoinFromWhere, getName, getOwnerColumnNames, getSchemaPrefix, getVersion, isExistingIndex, isInDomain, upgrade, upgradeView |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.opensubsystems.patterns.listdata.persist.db.ListDatabaseSchema |
|---|
getJoinFromWhere, isExistingIndex |
| Methods inherited from interface org.opensubsystems.core.persist.db.DatabaseSchema |
|---|
create, getDependentSchemas, getName, getVersion, isInDomain, upgrade |
| Field Detail |
|---|
public static final java.lang.String CATEGORY_SCHEMA_NAME
public static final int CATEGORY_SCHEMA_VERSION
public static final int[] CATEGORY_MANDATORY_RETRIEVE_COLUMNS
public static final int[] CATEGORY_SORT_COLUMNS
public static final int CATEGORY_NAME_MAXLENGTH
public static final int CATEGORY_DESCRIPTION_MAXLENGTH
| Constructor Detail |
|---|
public CategoryDatabaseSchema()
throws org.opensubsystems.core.error.OSSException
org.opensubsystems.core.error.OSSException - - error occured.| Method Detail |
|---|
public abstract java.lang.String getInsertCategoryAndFetchGeneratedValues()
throws org.opensubsystems.core.error.OSSException
org.opensubsystems.core.error.OSSException - - an error has occured
public abstract java.lang.String getUpdateCategoryAndFetchGeneratedValues()
throws org.opensubsystems.core.error.OSSException
org.opensubsystems.core.error.OSSException - - an error has occured
public java.lang.String getInsertCategory()
throws org.opensubsystems.core.error.OSSException
org.opensubsystems.core.error.OSSException - - exception during getting query
public void createListIndexes(java.sql.Connection cntDBConnection)
throws java.sql.SQLException,
org.opensubsystems.core.error.OSSException
cntDBConnection - - valid connection to database
java.sql.SQLException - - problem creating the database schema
org.opensubsystems.core.error.OSSException - - problem creating the database schema
public int delete(java.sql.Connection dbConnection,
int iId,
int iDomainId)
throws org.opensubsystems.core.error.OSSException,
java.sql.SQLException
dbConnection - - database connectioniId - - id of the category that have to be deleted together with all
its subcategoriesiDomainId - - domain id the deleted data belongs to
org.opensubsystems.core.error.OSSException - - an error has occured
java.sql.SQLException - - an error has occured
public int deleteRoot(java.sql.Connection dbConnection,
int iId,
int iDomainId,
org.opensubsystems.patterns.listdata.data.SimpleRule listSecurityData)
throws org.opensubsystems.core.error.OSSException,
java.sql.SQLException
dbConnection - - database connectioniId - - data id that will be deletediDomainId - - domain id the deleted data belongs tolistSecurityData - - security data describing what data can be deleted
org.opensubsystems.core.error.OSSException - - an error has occured
java.sql.SQLException - - an error has occured
public int deleteRoots(java.sql.Connection dbConnection,
int[] arrIds,
int iDomainId,
org.opensubsystems.patterns.listdata.data.SimpleRule listSecurityData)
throws org.opensubsystems.core.error.OSSException,
java.sql.SQLException
dbConnection - - database connectionarrIds - - array of data ids that will be deletediDomainId - - domain id the deleted data belongs tolistSecurityData - - security data describing what data can be deleted
org.opensubsystems.core.error.OSSException - - an error has occured
java.sql.SQLException - - an error has occured
public java.lang.String getSelectCategoryById(int[] columns)
throws org.opensubsystems.core.error.OSSException
columns - - columns to retrieve
org.opensubsystems.core.error.OSSException - - and error has occured
public java.lang.String getSelectCategoryByParentIdAndName(int[] columns,
int parentId)
throws org.opensubsystems.core.error.OSSException
columns - - list of columns to retrieveparentId - - ID of the parent
org.opensubsystems.core.error.OSSException - - an error has occuredpublic java.lang.String getDeleteCategoryById()
public java.lang.String getSelectCategoryCount()
throws org.opensubsystems.core.error.OSSException
org.opensubsystems.core.error.OSSException - - an error has occured
public java.lang.String getSelectActualCategoryCount(int[] arrIds)
throws org.opensubsystems.core.error.OSSException
arrIds - - array of category IDs
org.opensubsystems.core.error.OSSException - - an error has occured
public java.lang.StringBuffer getColumns(boolean specific,
int[] columns,
java.lang.Object[] prefixes,
java.lang.Object[] postfixes,
java.lang.StringBuffer buffer)
throws org.opensubsystems.core.error.OSSException
org.opensubsystems.core.error.OSSException
public void handleSQLException(java.sql.SQLException exc,
java.sql.Connection dbConnection,
int iOperationType,
int iDataType,
java.lang.Object data)
throws org.opensubsystems.core.error.OSSException
handleSQLException in interface org.opensubsystems.core.persist.db.DatabaseSchemahandleSQLException in class org.opensubsystems.core.persist.db.ModifiableDatabaseSchemaImplorg.opensubsystems.core.error.OSSException
protected java.lang.String getSelectCategoryExist(Category cCategory)
throws org.opensubsystems.core.error.OSSException
cCategory - - category object
org.opensubsystems.core.error.OSSException - - error occured during constructing query
protected java.util.List getSelectCategoryIDsForParent(java.sql.Connection dbConnection,
int iParentId,
int iDomainId)
throws org.opensubsystems.core.error.OSSException,
java.sql.SQLException
dbConnection - - database connectioniParentId - - ID of the parentiDomainId - - domain ID the deleted data belongs to
org.opensubsystems.core.error.OSSException - - an error has occured
java.sql.SQLException - - an error has occured
protected java.util.List getSelectCategoryIDsForMoreParents(java.sql.Connection dbConnection,
java.util.List lstParentIDs,
int iDomainId)
throws org.opensubsystems.core.error.OSSException,
java.sql.SQLException
dbConnection - - database connectionlstParentIDs - - list of parent IDsiDomainId - - domain ID the deleted data belongs to
org.opensubsystems.core.error.OSSException - - an error has occured
java.sql.SQLException - - an error has occured
protected java.lang.String getDeleteCategoryCascade(org.opensubsystems.patterns.listdata.data.SimpleRule secData)
throws org.opensubsystems.core.error.OSSException
secData - - security data
org.opensubsystems.core.error.OSSException - - an error has occured
protected java.lang.String getDeleteCategoriesCascade(int[] arrIds,
org.opensubsystems.patterns.listdata.data.SimpleRule secData)
throws org.opensubsystems.core.error.OSSException
arrIds - - category ids that have to be deletedsecData - - security data
org.opensubsystems.core.error.OSSException - - an error has occured
protected int deleteList(java.sql.Connection dbConnection,
java.util.List lstIds,
int iDomainId,
org.opensubsystems.patterns.listdata.data.SimpleRule listSecurityData)
throws org.opensubsystems.core.error.OSSException,
java.sql.SQLException
dbConnection - - database connectionlstIds - - list of IDs that have to be deletediDomainId - - domain ID the deleted data belongs tolistSecurityData - - security data describing what data can be retrieved
org.opensubsystems.core.error.OSSException - - an error has occured
java.sql.SQLException - - an error has occured
protected int deleteRecursiveCategories(java.sql.Connection dbConnection,
java.util.List lstIds,
int iDomainId,
int iDeleted,
org.opensubsystems.patterns.listdata.data.SimpleRule listSecurityData)
throws org.opensubsystems.core.error.OSSException,
java.sql.SQLException
dbConnection - - database connectionlstIds - - list of data IDs that have to be deletediDomainId - - domain ID the deleted data belongs toiDeleted - - number of alreade deleted itemslistSecurityData - - security data describing what data can be retrieved
org.opensubsystems.core.error.OSSException - - an error has occured
java.sql.SQLException - - an error has occured
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||