class MMsvStoreManager |
Provides the File Access mechanism to the files that are stored in the message server's data cage in a secure manner. Presents a common interface to message store file access regardless of the process that its running in. For instance, when the File Access APIs are used on the client-side process, the implementation uses secure IPC calls to the message server that includes capability policing, however, when the same API is used on the server-side, the implementation has direct access to the file in the message store.
Public Member Functions | |
---|---|
void | AttachmentFilePathL(TMsvId, TDes &) |
void | BodyTextFilePathL(TMsvId, TDes &) |
TBool | CreateAttachmentForWriteL(TMsvId, TDes &, RFile &) |
void | CreatePlainTextFileL(RFile &, TMsvId) |
TBool | CreateShareProtectedAttachmentForWriteL(TMsvId, TDes &, RFile &) |
TInt | DeleteAttachment(TMsvId, const TDesC &) |
void | DeleteFileStoreL(TMsvId) |
void | DeletePlainTextFileL(TMsvId) |
TBool | FileExistsL(const TDesC &) |
TBool | FileStoreExistsL(TMsvId) |
void | OpenAttachmentForWriteL(TMsvId, const TDesC &, RFile &) |
void | OpenAttachmentL(TMsvId, const TDesC &, RFile &) |
void | OpenBodyTextFileForReadL(RFile &, TMsvId, const TDesC &) |
TInt | OpenFileStoreForRead(TMsvId, RFile &) |
void | OpenTempStoreFileL(TMsvId, RFile &) |
TInt | RenameAttachment(TMsvId, const TDesC &, const TDesC &) |
void | ReplaceAttachmentForWriteL(TMsvId, TDes &, RFile &) |
void | ReplaceFileStoreL(TMsvId) |
void | ReplacePlainTextFileL(TMsvId) |
void | AttachmentFilePathL | ( | TMsvId | aEntryId, |
TDes & | aFilePath | |||
) | [pure virtual] |
Queries the message server for the file path where attachments are stored for the a particular message entry.
void | BodyTextFilePathL | ( | TMsvId | aMessageId, |
TDes & | aFilepath | |||
) | [pure virtual] |
Gets the path of the bodytext file related to a message in the message store for the message id passed to it. leave
KErrAlreadyexists, if the file with the same name already existed the directory.
TBool | CreateAttachmentForWriteL | ( | TMsvId | aEntryId, |
TDes & | aFilename, | |||
RFile & | aFile | |||
) | [pure virtual] |
Allows clients to create a new empty file and allows clients to stream data to it.
Creates a new attachment file in the message store for the message entry specified by the aEntryId parameter. The attachment filename is set to the filename indicated by the aFilename parameter. The empty attachment file is passed back to the client using an opened file handle to the file in the message store.
leave
KErrAlreadyexists, if the file with the same name already existed the directory.
TMsvId aEntryId | The entry for which an attachment needs to be created in the message store |
TDes & aFilename | The name of the attachment file to be created |
RFile & aFile | On return, The created file handle for the attachment file.The ownership is transferred . The caller must close the file handle. |
void | CreatePlainTextFileL | ( | RFile & | aFile, |
TMsvId | aBodyTextId | |||
) | [pure virtual] |
Allows the message store classes to create the store file for a particular message entry.
Creates a message store file associated with the message entry specified by the aFilepath parameter. This method returns an open read-write file handle to the message store file.
leave
one of the other system-wide error codes.
TBool | CreateShareProtectedAttachmentForWriteL | ( | TMsvId | aEntryId, |
TDes & | aFilename, | |||
RFile & | aFile | |||
) | [pure virtual] |
Creates an Attachment using a ShareProtected RFs.Used in the case when a message contains a DRM attachment
leave
KErrAlreadyexists, if the file with the same name already existed the directory.
TMsvId aEntryId | The entry for which an attachment needs to be created in the message store |
TDes & aFilename | The name of the attachment file to be created |
RFile & aFile | On return, The created file handle for the attachment file.The ownership is transferred . The caller must close the file handle. |
TInt | DeleteAttachment | ( | TMsvId | aEntryId, |
const TDesC & | aFilePath | |||
) | [pure virtual] |
Allow clients to delete existing attachment files.
Deletes an existing attachment file in the message store associated with the message entry specified by the aEntryId parameter. The attachment is identified by the file path specified by the aFilePath parameter.
KErrNone if successful, otherwise any of the system wide error codes.
void | DeleteFileStoreL | ( | TMsvId | aEntryId | ) | [pure virtual] |
Deletes the store file associated with the message entry as specified by the aEntryId. Also attempts to delete the temporary store file if one exists.
TMsvId aEntryId | The entry whose store needs to be deleted |
void | DeletePlainTextFileL | ( | TMsvId | aBodyTextId | ) | [pure virtual] |
Deletes the store file associated with the message entry as specified by aFilepath.
leave
KErrNotFound if file is not found else any of the system wide errors
TMsvId aBodyTextId | The Id of the bodytext. |
TBool | FileExistsL | ( | const TDesC & | aFilePath | ) | [pure virtual] |
Check if an attachment file with the given path and name already exists.
ETrue if file exists, otherwise EFalse.
const TDesC & aFilePath | The full path specification of the file. |
TBool | FileStoreExistsL | ( | TMsvId | aEntryId | ) | const [pure virtual] |
Queries the message server to check if a store file exists for the message entry specified by the aEntryId parameter.
ETrue if the store exists else EFalse
TMsvId aEntryId | The entry for whom the check for existance of store is being done |
void | OpenAttachmentForWriteL | ( | TMsvId | aEntryId, |
const TDesC & | aFilePath, | |||
RFile & | aFile | |||
) | [pure virtual] |
Allows clients to open an attachment file for writing.
Opens an existing attachment file in the message associated with the message entry specified by the aEntryId parameter. The attachment is identified by the file path specified by the aFilePath parameter. The attachment file is returned as a read/write file handle to the file in the message store.
TMsvId aEntryId | The entry whose attachment needs to be opened/read from the message store |
const TDesC & aFilePath | The name and path of the attachment file to be opened |
RFile & aFile | On return, The opened file handle for the attachment file.The ownership is transferred . The caller must close the file handle. |
void | OpenAttachmentL | ( | TMsvId | aEntryId, |
const TDesC & | aFilePath, | |||
RFile & | aFile | |||
) | [pure virtual] |
Allows clients to view attachment files.
Opens an existing attachment file in the message associated with the message entry specified by the aEntryId parameter. The attachment is identified by the file path specified by the aFilePath parameter. The attachment file is returned as a read-only file handle to the file in the message store.
TMsvId aEntryId | The entry whose attachment needs to be opened/read from the message store |
const TDesC & aFilePath | The name and path of the attachment file to be opened |
RFile & aFile | On return, The opened file handle for the attachment file.The ownership is transferred . The caller must close the file handle. |
void | OpenBodyTextFileForReadL | ( | RFile & | aFile, |
TMsvId | aBodyTextId, | |||
const TDesC & | aFilePath | |||
) | [pure virtual] |
Allows the message store classes to read the store file for a particular message entry.
Opens a message store file associated with the message entry specified by the aFilepath parameter. This method returns an open read-only file handle to the message store file.
leave
KErrNotFound if file is not found else any of the system wide errors
TInt | OpenFileStoreForRead | ( | TMsvId | aEntryId, |
RFile & | aFile | |||
) | [pure virtual] |
Allows the message store classes to read the store file for a particular message entry.
Opens a message store file associated with the message entry specified by the aEntryId parameter. This method returns an open read-only file handle to the message store file.
leave
KErrNotFound if file is not found else any of the system wide errors
void | OpenTempStoreFileL | ( | TMsvId | aEntryId, |
RFile & | aFile | |||
) | [pure virtual] |
Opens a temporary store file associated with the message entry specified by the aEntryId parameter. This method returns an open read-write file handle with an exclusive share to the temporary store file. The temporary store file is defined as <store_filename>.new. Data can be streamed to the temporary store file. It is expected that once the temporary store file has been written to and then closed, a call to ReplaceFileStoreL is required to replace the old store file with this temporary one.
Along with ReplaceFileStoreL, this method allows the message store classes to write data to the store file for a particular message entry.
TInt | RenameAttachment | ( | TMsvId | aEntryId, |
const TDesC & | aOldFilePath, | |||
const TDesC & | aNewName | |||
) | [pure virtual] |
Renames an existing attachment file.
Renames an existing attachment file in the message store associated with the message entry specified by the aEntryId parameter. The attachment is identified by the file path specified by the aOldFilePath parameter and renamed to the name supplied in the aNewName paramter.
KErrNone if successful, otherwise any of the system wide error codes.
void | ReplaceAttachmentForWriteL | ( | TMsvId | aEntryId, |
TDes & | aFilename, | |||
RFile & | aFile | |||
) | [pure virtual] |
Allows clients to replace an existing attachment file and allows clients to stream data to it.
Replaces an existing attachment file in the message store for the message entry specified by the aEntryId parameter. The attachment filename is set to the filename indicated by the aFilename parameter. If an attachment with the supplied name does not exist, a new file is created. The empty attachment file is passed back to the client using an opened file handle to the file in the message store.
TMsvId aEntryId | The entry for which an attachment needs to be created in the message store |
TDes & aFilename | The name of the attachment file to be created |
RFile & aFile | On return, The created file handle for the attachment file.The ownership is transferred . The caller must close the file handle. |
void | ReplaceFileStoreL | ( | TMsvId | aEntryId | ) | [pure virtual] |
Replaces the current store file with the temporary store file, created from OpenTempStoreFileL, for the message entry as specified by the aEntryId parameter. The method replaces the store file with the temporary file (<store_filename.new>) and if successful, will then delete the temporary store file. This method assumes that the temporary file exists, otherwise a KErrNotFound error occurs.
Along with OpenTempStoreFileL, this method allows the message store classes to write data to the store file for a particular message entry.
TMsvId aEntryId | The entry whose store needs to be replaced/overwritten |