class CCommsDbTemplateRecord : public CBase |
The view on a template record of a specific table.
The view contains only the template record and therefore, unlike the more general CCommsDbTableView class, does not contain any navigation functions.
This class does, however, contain the necessary member functions for reading and writing to columns.
Public Member Functions | |
---|---|
~CCommsDbTemplateRecord() | |
IMPORT_C void | CancelModifications() |
IMPORT_C TInt | Delete() |
IMPORT_C void | GetTableName(TDes &) |
IMPORT_C TInt | InsertCopy(TUint32 &) |
IMPORT_C TInt | Modify() |
IMPORT_C CCommsDbTemplateRecord * | NewL(CCommsDatabaseBase *, const TDesC &) |
IMPORT_C void | ReadBoolL(const TDesC &, TBool &) |
IMPORT_C void | ReadColumnLengthL(const TDesC &, TInt &) |
IMPORT_C HBufC * | ReadLongTextLC(const TDesC &) |
IMPORT_C void | ReadTextL(const TDesC &, TDes8 &) |
IMPORT_C void | ReadTextL(const TDesC &, TDes16 &) |
IMPORT_C void | ReadTypeAttribL(const TDesC &, TDbColType &, TUint32 &) |
IMPORT_C void | ReadUintL(const TDesC &, TUint32 &) |
IMPORT_C TInt | StoreModifications() |
IMPORT_C TBool | TemplateRecordExists() |
IMPORT_C void | WriteBoolL(const TDesC &, const TBool &) |
IMPORT_C void | WriteLongTextL(const TDesC &, const TDesC &) |
IMPORT_C void | WriteTextL(const TDesC &, const TDesC8 &) |
IMPORT_C void | WriteTextL(const TDesC &, const TDesC16 &) |
IMPORT_C void | WriteUintL(const TDesC &, const TUint32 &) |
Private Member Functions | |
---|---|
CCommsDbTemplateRecord() | |
void | ClearHiddenMask(TBool) |
void | ConstructL(CCommsDatabaseBase *, const TDesC &) |
TInt | Reposition() |
TBool | SetHiddenMask() |
Private Attributes | |
---|---|
TBool | iRecordExists |
CCommsDbTableView * | iView |
IMPORT_C | ~CCommsDbTemplateRecord | ( | ) |
Frees all resources owned by this object, prior to its destruction. Specifically, it closes the view.
void | ClearHiddenMask | ( | TBool | aClearHiddenMask | ) | [private] |
TBool aClearHiddenMask |
void | ConstructL | ( | CCommsDatabaseBase * | aDb, |
const TDesC & | aTableName | |||
) | [private] |
CCommsDatabaseBase * aDb | |
const TDesC & aTableName |
IMPORT_C TInt | Delete | ( | ) |
Removes the template from the table.
Deletes the template record.
This function raises a CommsDbServer 3 panic if a previous call to Modify() has been made.
IMPORT_C void | GetTableName | ( | TDes & | aTableName | ) | const |
The name of the table that this template belongs to.
Gets the name of the table associated with this view and copy it into the descriptor supplied by the caller.
TDes & aTableName | A reference to a descriptor passed by the caller. On return from this function it contains the name of the table. |
IMPORT_C TInt | InsertCopy | ( | TUint32 & | aId | ) |
Creates a new record based on the contents of the template record
TUint32 & aId | On return contains the unique Id associated with this new record. |
IMPORT_C TInt | Modify | ( | ) |
Modifies the existing template record if there is no template create one. StoreModifications() is called to complete the transaction.
Prepares to update the template record, if it exists. If the template record does not exist, it is created and left ready for modification. The function must be called before writing to any column. Once all changes to the template record are complete, a call must be made to either StoreModifications() or CancelModifications() as appropriate.
From v9.1 template record always exist
This function raises a CommsDbServer 1 or a CommsDbServer 2 panic if a previous call to Modify() has already been made.
This function must be called before any attempt is made to write to a column otherwise subsequent write operations raise a CommsDbServer 12 panic.
Once this function has completed successfully, no attempt can be made to read from a column until either StoreModifications() or CancelModifications() has been called to complete the record insertion operation, otherwise the read operations raise a CommsDbServer 10 panic.
IMPORT_C CCommsDbTemplateRecord * | NewL | ( | CCommsDatabaseBase * | aDb, |
const TDesC & | aTableName | |||
) | [static] |
Creates a new template view on the database and table specified.
Allocates and constructs a view, which includes only the template record, on the table whose name is defined in the specified descriptor and which is in the specified communications database.
The view is restricted to the single template record in the table.
The communications database, pointed to by aDb should already have been opened.
CCommsDatabaseBase * aDb | A pointer to the communications database object. This pointer must not be NULL. |
const TDesC & aTableName | A reference to a descriptor containing the name of a table in the communications database. |
IMPORT_C void | ReadBoolL | ( | const TDesC & | aColumn, |
TBool & | aValue | |||
) |
Reads a boolean value located in a specific column within the template record and copies it into the specified descriptor. The column is identified by the name supplied in the descriptor aColumn.
This read operation must not occur if any of the operations involved in changing the template record are still outstanding, otherwise the function raises a CommsDbServer 10 panic. For example, the panic is raised if this function is called between calls to Modify() and StoreModifications().
The CommsDbServer 10 panic is also raised if this function is called after the view has been closed.
If the template record does not exist then the function leaves with KErrUnknown.
IMPORT_C void | ReadColumnLengthL | ( | const TDesC & | aColumn, |
TInt & | aLength | |||
) |
Gets the length of a specific column within the template record and copies it to an integer passed by the caller. The column is identified by the name supplied in the descriptor aColumn.
This read operation must not occur if any of the operations involved in changing a template record are still outstanding, otherwise the function raises a CommsDbServer 10 panic. For example, the panic is raised if this function is called between calls to Modify() and StoreModifications().
The CommsDbServer 10 panic is also raised if this function is called after the view has been closed.
If the template record does not exist, this function will just return with aLength set to zero.
IMPORT_C HBufC * | ReadLongTextLC | ( | const TDesC & | aColumn | ) |
Reads the long text located in a specific column within the template record and copies this text to a heap descriptor. The heap descriptor is allocated and its pointer returned by this function. The column is identified by the name supplied in the descriptor aColumn.
While the text in columns retrieved by the ReadTextL() functions is limited in length, there is no restriction on the length of long text.
If the template record does not exist, this function will just return an empty desciptor. Also in this case, the caller is still responsible for removing this object from the cleanup stack.
This read operation must not occur if any of the operations involved in changing a record are still outstanding, otherwise the function raises a CommsDbServer 10 panic. For example, the panic is raised if this function is called between calls to Modify() and StoreModifications().
The CommsDbServer 10 panic is also raised if this function is called after the view has been closed.
const TDesC & aColumn | A reference to a descriptor containing the name of a column in the template record. |
IMPORT_C void | ReadTextL | ( | const TDesC & | aColumn, |
TDes8 & | aValue | |||
) |
Reads narrow (ASCII) text located in a specific column within the template record and copies it to the specified 8 bit modifiable descriptor. The column is identified by the name supplied in the descriptor aColumn.
The maximum length of text expected by this function is the value of the constant KCommsDbSvrMaxColumnNameLength. The maximum length of aValue supplied by the caller can, therefore, be the same.
If the template record does not exist, this function will just return with an empty aValue desciptor.
This read operation must not occur if any of the operations involved in changing the template record are still outstanding, otherwise the function raises a CommsDbServer 10 panic. For example, the panic is raised if this function is called between calls to Modify() and StoreModifications().
The CommsDbServer 10 panic is also raised if this function is called after the view has been closed.
IMPORT_C void | ReadTextL | ( | const TDesC & | aColumn, |
TDes16 & | aValue | |||
) |
Reads wide (UNICODE) text located in a specific column within the template record and copies it to the specified 16 bit modifiable descriptor. The column is identified by the name supplied in the descriptor aColumn.
The maximum length of text expected by this function is the value of the constant KCommsDbSvrMaxColumnNameLength. The maximum length of aValue supplied by the caller can, therefore, be the same.
This read operation must not occur if any of the operations involved in changing the template record are still outstanding, otherwise the function raises a CommsDbServer 10 panic. For example, the panic is raised if this function is called between calls to Modify() and StoreModifications().
The CommsDbServer 10 panic is also raised if this function is called after the view has been closed.
If the template record does not exist, this function will just return with an empty aValue desciptor.
IMPORT_C void | ReadTypeAttribL | ( | const TDesC & | aColumn, |
TDbColType & | aColType, | |||
TUint32 & | aAttrib | |||
) |
Gets the type and the attributes of a specific column within the template record and puts them into a reference to an object and a reference to an unsigned integer respectively. The column is identified by the name supplied in the descriptor aColumn.
The column type is described by the TDbColType enumerator.
The column attributes are one or more of the values TDbCol::ENotNull and TDbCol::EAutoIncrement.
This function must not be called if any of the operations involved in changing the template record are still outstanding, otherwise the function raises a CommsDbServer 10 panic. For example, the panic is raised if this function is called between calls to Modify() and StoreModifications().
const TDesC & aColumn | A reference to a descriptor containing the name of the column in the template record whose type and attributes are to be fetched. |
TDbColType & aColType | A reference to a TDbColType object passed by the caller. On successful return from this function, contains a copy of the column type. |
TUint32 & aAttrib | A reference to an unsigned integer passed by the caller. On successful return from this function, contains a copy of the column attributes. |
IMPORT_C void | ReadUintL | ( | const TDesC & | aColumn, |
TUint32 & | aValue | |||
) |
Reads an unsigned integer value located in a specific column within the template record and copies it into the specified unsigned integer. The column is identified by the name supplied in the descriptor aColumn.
This read operation must not occur if any of the operations involved in changing the template record are still outstanding, otherwise the function raises a CommsDbServer 10 panic. For example, the panic is raised if this function is called between calls to Modify() and StoreModifications().
The CommsDbServer 10 panic is also raised if this function is called after the view has been closed.
If the template record does not exist then the function leaves with KErrUnknown.
IMPORT_C TInt | StoreModifications | ( | ) |
Stores an new or updated template back to the database.
Confirms changes made to the template record which were started by a call to Modify().
A call to Modify() must have previously been made otherwise the function raises a CommsDbServer 4 panic.
IMPORT_C TBool | TemplateRecordExists | ( | ) |
True if a template exists.
Tests whether a template record exists in this table.
IMPORT_C void | WriteBoolL | ( | const TDesC & | aColumn, |
const TBool & | aValue | |||
) |
Writes a specified boolean value to a specific column within the template record. The column is identified by the name supplied in the descriptor aColumn.
An earlier call to Modify() must have been made before calling this function otherwise the function raises a CommsDbServer 12 panic.
The CommsDbServer 12 panic is also raised if this function is called after the view has been closed.
IMPORT_C void | WriteLongTextL | ( | const TDesC & | aColumn, |
const TDesC & | aValue | |||
) |
Writes the long text from a specified descriptor to a specific column within the template record. The column is identified by the name supplied in the descriptor aColumn.
An earlier call to Modify() must have been made before calling this function otherwise the function raises a CommsDbServer 12 panic.
The CommsDbServer 12 panic is also raised if this function is called after the view has been closed.
While the text written by WriteTextL() functions is limited in length, there is no restriction on the length of long text.
IMPORT_C void | WriteTextL | ( | const TDesC & | aColumn, |
const TDesC8 & | aValue | |||
) |
Writes the narrow (ASCII) text from the specified 8 bit descriptor to a specific column within the template record. The column is identified by the name supplied in the descriptor aColumn.
An earlier call to Modify() must have been made before calling this function otherwise the function raises a CommsDbServer 12 panic.
IMPORT_C void | WriteTextL | ( | const TDesC & | aColumn, |
const TDesC16 & | aValue | |||
) |
Writes the wide (Unicode) text from the specified 16 bit descriptor to a specific column within the template record. The column is identified by the name supplied in the descriptor aColumn.
An earlier call to Modify() must have been made before calling this function otherwise the function raises a CommsDbServer 12 panic.
The CommsDbServer 12 panic is also raised if this function is called after the view has been closed.
IMPORT_C void | WriteUintL | ( | const TDesC & | aColumn, |
const TUint32 & | aValue | |||
) |
Writes a specified unsigned integer value to a specific column within the template record. The column is identified by the name supplied in the descriptor aColumn.
An earlier call to Modify() must have been made before calling this function otherwise the function raises a CommsDbServer 12 panic.
The CommsDbServer 12 panic is also raised if this function is called after the view has been closed.
The column being changed must not be the Id column (symbolic name COMMDB_ID) otherwise the function raises a CommsDbServer 13 panic.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.