01: // THIS SOFTWARE IS PROVIDED BY SOFTARIS PTY.LTD. AND OTHER METABOSS
02: // CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
03: // BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
04: // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SOFTARIS PTY.LTD.
05: // OR OTHER METABOSS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
06: // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
07: // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
08: // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
09: // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
10: // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
11: // EVEN IF SOFTARIS PTY.LTD. OR OTHER METABOSS CONTRIBUTORS ARE ADVISED OF THE
12: // POSSIBILITY OF SUCH DAMAGE.
13: //
14: // Copyright 2000-2005 © Softaris Pty.Ltd. All Rights Reserved.
15: package com.metaboss.enterprise.transaction;
16:
17: /** This interface is a representative for the javax.transaction.TransactionManager object. It only
18: * contains the COMPONENT_URL for use when application code wants to acess javax.transaction.TransactionManager
19: * Note that the average complexity business level application should use javax.transaction.UserTransaction for simple
20: * transaction management (begin, commit, rollback, getStatus ) functionality. The javax.transaction.TransactionManager is too low level
21: * and should only be used for system level purposes (i.e. suspending or resuming transactions). This is why
22: * this object is not available in some parts of the system, particularly clients. For example simple java application,
23: * which runs in separate JVM and is a client to JBoss application server will not have access to the TransactionManager object
24: * (it will, however, have access to UserTransaction object). Given all of this, in order to remain platform independent and
25: * portable, TransactionManager object should only be used in middle tiers of the system and not at the client.
26: * To access JTA's TransactionManager object in platform independent way :
27: * <p><code><pre>
28: * import javax.naming.Context;
29: * import javax.naming.InitialContext;
30: * import javax.transaction.TransactionManager;
31: * ...............................
32: * ...............................
33: * Context lContext = new javax.naming.InitialContext();
34: * TransactionManager lTransactionManager = (TransactionManager)lContext.lookup(com.metaboss.enterprise.transaction.TransactionManager.COMPONENT_URL);
35: * </pre></code></p>
36: */
37: public interface TransactionManager extends
38: javax.transaction.TransactionManager {
39: /** Naming URL of the factory component */
40: public static final String COMPONENT_URL = "component:/com.metaboss.enterprise.transaction.TransactionManager";
41: }
|