Logo Search packages:      
Sourcecode: virtualbox-ose version File versions  Download package

tmTransactionService Class Reference

#include <tmTransactionService.h>

Inheritance diagram for tmTransactionService:

ipcIMessageObserver nsISupports nsISupports

List of all members.

Detailed Description

The tmTransactionService shares packets of information (transactions) with other Gecko based applications interested in the same namespace and domain. An application registers with the Transaction Service for a particular namespace and domain and then can post transactions to the service and receive transactions from the service.

For applications using the Transaction Service to share changes in state that get reflected in files on disk there are certain pattersn to follow to ensure data loss does not occur.

Startup: XXX docs needed

Shutdown/writing to disk: XXX docs needed

Definition at line 70 of file tmTransactionService.h.

Public Member Functions

void attach (in ACString aDomainName, in ipcITransactionObserver aObserver, in PRBool aLockingCall)
void detach (in ACString aDomainName)
void flush (in ACString aDomainName, in PRBool aLockingCall)
void init (in ACString aNamespace)
void onMessageAvailable (in unsigned long aSenderID, in nsIDRef aTarget,[array, const, size_is(aDataLen)] in octet aData, in unsigned long aDataLen)
void postTransaction (in ACString aDomainName,[array, const, size_is(aDataLen)] in octet aData, in unsigned long aDataLen)
virtual ~tmTransactionService ()
 NS_IMETHOD_ (nsrefcnt) Release(void)=0
 NS_IMETHOD_ (nsrefcnt) AddRef(void)=0
NS_IMETHOD QueryInterface (REFNSIID aIID, void **aInstancePtr)=0

Public Attributes

struct nsISupports_vtblvtbl
struct nsISupports_vtblvtbl

Protected Member Functions

void DispatchStoredMessages (tm_queue_mapping *aQMapping)
char * GetJoinedQueueName (const nsACString &aDomainName)
char * GetJoinedQueueName (PRUint32 aQueueID)
PRInt32 GetQueueID (const nsACString &aDomainName)
tm_queue_mapping * GetQueueMap (PRUint32 aQueueID)
void OnAttachReply (tmTransaction *aTrans)
void OnDetachReply (tmTransaction *aTrans)
void OnFlushReply (tmTransaction *aTrans)
void OnPost (tmTransaction *aTrans)
nsresult SendDetachOrFlush (PRUint32 aQueueID, PRUint32 aAction, PRBool aSync)
void SendMessage (tmTransaction *aTrans, PRBool aSync)

Protected Attributes

nsCOMPtr< ipcILockServicelockService
nsCString mNamespace
PLHashTable * mObservers
tmVector mQueueMaps
tmVector mWaitingMessages

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index