Patent ID: 7668937

Claim:
A method of enabling use of an application server application by a wireless communication device, the method comprising: at a transaction server having two alternative modes of execution, the first mode being a clustered mode wherein the transaction server is scaled across multiple machines, the second mode being a non-clustered mode wherein the transaction server runs on a single machine: on receipt of a given message from said wireless communication device for said application on said application server, queuing said given message on a queue for said application; subsequent to said queuing, pushing said given message, and each message queued on said queue, toward a destination for said application of said application server, wherein said pushing comprises, for each message on said queue, dequeuing said each message from said queue and pushing said each message; prior to said dequeuing and pushing, acquiring, via a locking mechanism, a lock for said destination on said application server, said lock preventing other use of said destination, wherein if said transaction server is executing in said clustered mode, said locking mechanism comprises a lock object on one of said multiple machines, said one machine being remote from a machine upon which said queuing and said pushing are performed, said one machine providing an interface to be used as a central lock provider by each of said multiple machines; and wherein, if said transaction server is executing in said non-clustered mode, said locking mechanism comprises a lock object that is local to the single machine on which said transaction server runs.