org.mmbase.storage.database
Class OODatabaseStorage
java.lang.Object
|
+--org.mmbase.storage.database.Support2Storage
|
+--org.mmbase.storage.database.AbstractDatabaseStorage
|
+--org.mmbase.storage.database.SQL92DatabaseStorage
|
+--org.mmbase.storage.database.OODatabaseStorage
- All Implemented Interfaces:
- DatabaseStorage, MMJdbc2NodeInterface, Storage
- public class OODatabaseStorage
- extends SQL92DatabaseStorage
- implements DatabaseStorage
OODatabaseStorage implements the DatabaseStorage interface and the MMJdbc2NodeInterface for
an objectoriented database (i.e. Postgresql).
It overrides the methods for storing and retrieving huge texts and bytefields, and the methods for determining
database key (for the object 'number' field).
- Since:
- MMBase-1.6
- Version:
- $Id: OODatabaseStorage.java,v 1.2 2002/11/07 12:30:38 pierre Exp $
- Author:
- Pierre van Rooden
|
Method Summary |
int |
createKey(Transaction trans)
Gives an unique number for a node to be inserted. |
byte[] |
getBytes(java.lang.String tableName,
java.lang.String fieldname,
int number)
Get bytes from blob |
byte[] |
getDBByte(java.sql.ResultSet rs,
int idx)
is next function nessecary? |
java.lang.String |
getDBText(java.sql.ResultSet rs,
int idx)
is next function nessecary? |
protected java.lang.String |
getText(java.lang.String tableName,
java.lang.String fieldname,
int number)
Get text from blob |
protected void |
prepare()
Prepares the database layer. |
void |
setDBByte(int i,
java.sql.PreparedStatement stmt,
byte[] bytes)
is next function nessecary? |
void |
setDBText(int i,
java.sql.PreparedStatement stmt,
java.lang.String body)
Set text array in database |
| Methods inherited from class org.mmbase.storage.database.SQL92DatabaseStorage |
addField, applyCreateScheme, changeField, commit, commitToTable, create, created, created, createObjectStorage, createSQL, delete, deleteFromTable, deleteSQL, drop, dropSQL, getBytes, getFieldsOrderCreate, getNode, getNodeType, getParentBuilder, getParentTableName, getText, init, insert, insertIntoTable, insertSQL, isAllowedParentBuilder, isParentField, loadExistingTables, loadFieldFromTable, loadSupportInformation, readBytesFromFile, removeField, selectSQL, setValuePreparedStatement, size, size, supportsExtendedTables, supportsRollback, updateSQL, updateStorage, writeBytesToFile |
| Methods inherited from class org.mmbase.storage.database.AbstractDatabaseStorage |
applyForeignKeyScheme, applyKeyScheme, applyNotNullScheme, applyPrimaryKeyScheme, applyScheme, commit, constructFieldDefinition, constructFieldDefinition, create, createDatabaseTransaction, createDatabaseTransaction, createKey, createObjectStorage, createSQL, createTransaction, delete, deployDatabaseDocument, getBinaryFilePath, getCreateExtendedScheme, getCreateScheme, getFieldNameMap, getForeignKeyScheme, getFullTableName, getJDBC, getKeyScheme, getMaxDropSize, getNode, getNodeType, getNotNullScheme, getNumberString, getPrimaryKeyScheme, getStoreBinaryAsFile, getTypeMap, insert, mapToMMBaseFieldName, mapToTableFieldName, matchType, registerChanged, registerParentBuilder, selectSQL, selectSQL, selectSQL, setBinaryFilePath, setCreateExtendedScheme, setCreateScheme, setFieldNameMap, setForeignKeyScheme, setKeyScheme, setMaxDropSize, setNotNullScheme, setPrimaryKeyScheme, setStoreBinaryAsFile, setTypeMap |
| Methods inherited from class org.mmbase.storage.database.Support2Storage |
commit, createObjectTable, decodeDBnodeField, decodeDBnodeField, getAllowedField, getConnection, getDBKey, getDisallowedField, getMMNodeSearch2SQL, getOTypeString, getOwnerString, getShortedByte, getShortedText, insert, removeNode, updateTable |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.mmbase.storage.database.DatabaseStorage |
deployDatabaseDocument, getBinaryFilePath, getCreateExtendedScheme, getCreateScheme, getFieldNameMap, getForeignKeyScheme, getJDBC, getKeyScheme, getMaxDropSize, getNotNullScheme, getPrimaryKeyScheme, getStoreBinaryAsFile, getTypeMap, init, loadFieldFromTable, mapToMMBaseFieldName, mapToTableFieldName, registerChanged, setBinaryFilePath, setCreateExtendedScheme, setCreateScheme, setFieldNameMap, setForeignKeyScheme, setKeyScheme, setMaxDropSize, setNotNullScheme, setPrimaryKeyScheme, setStoreBinaryAsFile, setTypeMap, setValuePreparedStatement, supportsExtendedTables |
| Methods inherited from interface org.mmbase.storage.Storage |
addField, changeField, commit, commit, create, create, created, createKey, createObjectStorage, createObjectStorage, createTransaction, delete, delete, drop, getBytes, getNode, getNode, getNodeType, getNodeType, getText, insert, insert, isAllowedParentBuilder, registerParentBuilder, removeField, size, supportsRollback, updateStorage |
OODatabaseStorage
public OODatabaseStorage()
getText
protected java.lang.String getText(java.lang.String tableName,
java.lang.String fieldname,
int number)
- Get text from blob
- Overrides:
getText in class SQL92DatabaseStorage
getBytes
public byte[] getBytes(java.lang.String tableName,
java.lang.String fieldname,
int number)
- Get bytes from blob
- Overrides:
getBytes in class SQL92DatabaseStorage
prepare
protected void prepare()
- Description copied from class:
SQL92DatabaseStorage
- Prepares the database layer.
Override this method if you need to make preparations for your database.
- Overrides:
prepare in class SQL92DatabaseStorage
createKey
public int createKey(Transaction trans)
throws StorageException
- Gives an unique number for a node to be inserted.
This method will work with multiple mmbases
- Specified by:
createKey in interface Storage- Overrides:
createKey in class AbstractDatabaseStorage
- Parameters:
trans - the transaction to use for obtaining the key- Returns:
- unique number
- Throws:
StorageException - if an error occurred while obtaining the key
getDBByte
public byte[] getDBByte(java.sql.ResultSet rs,
int idx)
- is next function nessecary?
- Overrides:
getDBByte in class Support2Storage
setDBByte
public void setDBByte(int i,
java.sql.PreparedStatement stmt,
byte[] bytes)
- is next function nessecary?
- Overrides:
setDBByte in class AbstractDatabaseStorage
getDBText
public java.lang.String getDBText(java.sql.ResultSet rs,
int idx)
- is next function nessecary?
- Overrides:
getDBText in class Support2Storage
setDBText
public void setDBText(int i,
java.sql.PreparedStatement stmt,
java.lang.String body)
- Set text array in database
- Overrides:
setDBText in class AbstractDatabaseStorage
MMBase build 1.6.5.20030923