DeveelDB
20151217
complete SQL database system, primarly developed for .NET/Mono frameworks
|
A wrapper around a table that fires triggers on table events. More...
Public Member Functions | |
UserContextTable (IQuery context, ITable table) | |
override IEnumerator< Row > | GetEnumerator () |
override DataObject | GetValue (long rowNumber, int columnOffset) |
Gets a single cell within the table that is located at the given column offset and row. More... | |
override void | Lock () |
override void | Release () |
RowId | AddRow (Row row) |
Persists a new row to the table. More... | |
void | UpdateRow (Row row) |
Updates the values of a row into the table. More... | |
bool | RemoveRow (RowId rowId) |
Deletes row identified by the given coordinates from the table. More... | |
Public Member Functions inherited from Deveel.Data.Sql.Tables.BaseDataTable | |
void | AddToIndex (int rowNumber, int columnNumber) |
void | AddRowToIndex (int rowNumber) |
void | RemoveRowFromIndex (int rowNumber) |
Public Member Functions inherited from Deveel.Data.Sql.Tables.RootTable | |
bool | TypeEquals (IRootTable other) |
Public Member Functions inherited from Deveel.Data.Sql.Tables.Table | |
void | Dispose () |
ColumnIndex | GetIndex (int columnOffset) |
Gets an index for given column that can be used to select values from this table. More... | |
Protected Member Functions | |
override IEnumerable< int > | ResolveRows (int column, IEnumerable< int > rowSet, ITable ancestor) |
override ColumnIndex | GetColumnIndex (int columnOffset) |
override void | SetupIndexes (Type indexType) |
override void | Dispose (bool disposing) |
Protected Member Functions inherited from Deveel.Data.Sql.Tables.BaseDataTable | |
BaseDataTable () | |
BaseDataTable (IContext context) | |
override ObjectName | GetResolvedColumnName (int column) |
override int | IndexOfColumn (ObjectName columnName) |
override ColumnIndex | GetIndex (int column, int originalColumn, ITable table) |
void | SetupIndexes (string indexTypeName) |
override RawTableInfo | GetRawTableInfo (RawTableInfo rootInfo) |
Protected Member Functions inherited from Deveel.Data.Sql.Tables.RootTable | |
virtual bool | IsSameTable (RootTable other) |
Protected Member Functions inherited from Deveel.Data.Sql.Tables.Table | |
virtual void | OnLockAcquired (Lock @lock) |
virtual void | OnLockReleased (Lock @lock) |
int | FindColumn (ObjectName columnName) |
Properties | |
ITable | Table [get, private set] |
IQuery | Context [get, private set] |
IMutableTable | MutableTable [get] |
bool | IsMutable [get] |
override TableInfo | TableInfo [get] |
override int | RowCount [get] |
override int | ColumnCount [get] |
TableEventRegistry IMutableTable. | EventRegistry [get] |
Properties inherited from Deveel.Data.Sql.Tables.BaseDataTable | |
override IContext | Context [get] |
Properties inherited from Deveel.Data.Sql.Tables.RootTable | |
ObjectName | TableName [get] |
Properties inherited from Deveel.Data.Sql.Tables.Table | |
abstract IContext | Context [get] |
abstract TableInfo | TableInfo [get] |
bool | IsLocked [get, private set] |
object ILockable. | RefId [get] |
int IQueryTable. | ColumnCount [get] |
virtual int | ColumnCount [get] |
abstract int | RowCount [get] |
ObjectName | FullName [get] |
DbObjectType IDbObject. | ObjectType [get] |
Properties inherited from Deveel.Data.Sql.Tables.IQueryTable | |
int | ColumnCount [get] |
Properties inherited from Deveel.Data.Sql.Tables.ITable | |
IContext | Context [get] |
TableInfo | TableInfo [get] |
Gets the metadata information of the table, used to resolve the column sources. More... | |
int | RowCount [get] |
Gets the total number of rows in the table. More... | |
Properties inherited from Deveel.Data.Sql.IDbObject | |
ObjectName | FullName [get] |
Gets the fully qualified name of the object used to resolve it uniquely within the database. More... | |
DbObjectType | ObjectType [get] |
Gets the type of database object that the implementation is for More... | |
Properties inherited from Deveel.Data.Transactions.ILockable | |
object | RefId [get] |
Properties inherited from Deveel.Data.Sql.Tables.IMutableTable | |
TableEventRegistry | EventRegistry [get] |
Private Member Functions | |
void | OnTableEvent (TriggerEventType eventType, RowId rowId, Row row) |
void IMutableTable. | AddLock () |
void IMutableTable. | RemoveLock () |
void IMutableTable. | FlushIndexes () |
Flushes all changes made on this table to the backing index scheme. More... | |
void IMutableTable. | AssertConstraints () |
Performs all constraint integrity checks and actions to any modifications based on any changes that happened to the table since that last call to this method. More... | |
A wrapper around a table that fires triggers on table events.
Definition at line 27 of file UserContextTable.cs.
Definition at line 28 of file UserContextTable.cs.
|
inlineprivate |
Implements Deveel.Data.Sql.Tables.IMutableTable.
Definition at line 98 of file UserContextTable.cs.
Persists a new row to the table.
The row to be added must belong to the table context, otherwise an exception will be thrown.
row | The row to be persisted. |
ArgumentException | If the gven row does not belong to the table context. |
ArgumentNullException | If the given row is null . |
Implements Deveel.Data.Sql.Tables.IMutableTable.
Definition at line 106 of file UserContextTable.cs.
|
inlineprivate |
Performs all constraint integrity checks and actions to any modifications based on any changes that happened to the table since that last call to this method.
It is important that is called after any call to AddRow, RemoveRow or UpdateRow.
Any constraints that are marked as ConstraintDeferrability.InitiallyImmediate are checked when this is called, otherwise the constraint is checked at commit time.
Any referential actions are performed when this method is called. If a referential action causes a modification to another table, this method is recursively called on the table modified.
If a referential integrity constraint is violated and a referential action is unable to maintain the integrity of the database, any changes made to the table are reverted.
Implements Deveel.Data.Sql.Tables.IMutableTable.
Definition at line 144 of file UserContextTable.cs.
|
inlineprotectedvirtual |
Reimplemented from Deveel.Data.Sql.Tables.Table.
Definition at line 148 of file UserContextTable.cs.
|
inlineprivate |
Flushes all changes made on this table to the backing index scheme.
This is used during the commit phase of this objects lifetime. The transaction control mechanism has found that there are no clashes and now we need to commit the current table view to the conglomerate. Because this object may not update index information immediately, we call this to flush all the changes to the table to the backing index set.
When this method returns, the backing index-set of this view will be completely up to date.
Implements Deveel.Data.Sql.Tables.IMutableTable.
Definition at line 140 of file UserContextTable.cs.
|
inlineprotectedvirtual |
Reimplemented from Deveel.Data.Sql.Tables.BaseDataTable.
Definition at line 73 of file UserContextTable.cs.
|
inlinevirtual |
|
inline |
Gets a single cell within the table that is located at the given column offset and row.
rowNumber | The unique number of the row where the cell is located. |
columnOffset | The zero-based offset of the column of the cell to return. |
ArgumentOutOfRangeException | If the given columnOffset is less than zero or greater or equal than the number of columns defined in the table metadata. |
Implements Deveel.Data.Sql.Tables.ITable.
Definition at line 80 of file UserContextTable.cs.
|
inlinevirtual |
Implements Deveel.Data.Sql.Tables.Table.
Definition at line 84 of file UserContextTable.cs.
|
inlineprivate |
Definition at line 61 of file UserContextTable.cs.
|
inlinevirtual |
Implements Deveel.Data.Sql.Tables.Table.
Definition at line 89 of file UserContextTable.cs.
|
inlineprivate |
Implements Deveel.Data.Sql.Tables.IMutableTable.
Definition at line 102 of file UserContextTable.cs.
|
inline |
Deletes row identified by the given coordinates from the table.
rowId | The unique identifier of the row to be removed. |
true
if the row identified was found and removed, false
otherwise. ArgumentException | Thrown if the given rowId does not belong to this table. |
Implements Deveel.Data.Sql.Tables.IMutableTable.
Definition at line 129 of file UserContextTable.cs.
|
inlineprotectedvirtual |
Reimplemented from Deveel.Data.Sql.Tables.BaseDataTable.
Definition at line 65 of file UserContextTable.cs.
|
inlineprotectedvirtual |
Reimplemented from Deveel.Data.Sql.Tables.BaseDataTable.
Definition at line 77 of file UserContextTable.cs.
|
inline |
Updates the values of a row into the table.
row | The object containing the values to update. |
ArgumentNullException | If the given row is null . |
Implements Deveel.Data.Sql.Tables.IMutableTable.
Definition at line 116 of file UserContextTable.cs.
|
getprotected |
Definition at line 57 of file UserContextTable.cs.
|
getprivate set |
Definition at line 35 of file UserContextTable.cs.
|
getprivate |
Definition at line 94 of file UserContextTable.cs.
|
getprivate |
Definition at line 41 of file UserContextTable.cs.
|
getprivate |
Definition at line 37 of file UserContextTable.cs.
|
get |
Definition at line 53 of file UserContextTable.cs.
|
getprivate set |
Definition at line 33 of file UserContextTable.cs.
|
get |
Definition at line 49 of file UserContextTable.cs.