org.objectweb.jonas_jms
Class JSession

java.lang.Object
  |
  +--org.objectweb.jonas_jms.JSession
All Implemented Interfaces:
java.lang.Runnable, javax.jms.Session, javax.transaction.xa.XAResource
Direct Known Subclasses:
JQueueSession, JTopicSession

public abstract class JSession
extends java.lang.Object
implements javax.jms.Session, javax.transaction.xa.XAResource


Field Summary
protected  boolean closed
           
protected  javax.transaction.Transaction currtx
           
protected  JConnection jconn
           
protected static javax.transaction.TransactionManager tm
           
protected  boolean txover
           
protected  javax.transaction.xa.XAResource xares
           
 
Fields inherited from interface javax.jms.Session
AUTO_ACKNOWLEDGE, CLIENT_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE
 
Fields inherited from interface javax.transaction.xa.XAResource
TMENDRSCAN, TMFAIL, TMJOIN, TMNOFLAGS, TMONEPHASE, TMRESUME, TMSTARTRSCAN, TMSUCCESS, TMSUSPEND, XA_OK, XA_RDONLY
 
Constructor Summary
JSession(JConnection jconn)
          Constructor
 
Method Summary
 void close()
           
 void commit()
           
 void commit(javax.transaction.xa.Xid xid, boolean onePhase)
           
 javax.jms.BytesMessage createBytesMessage()
           
 javax.jms.MapMessage createMapMessage()
           
 javax.jms.Message createMessage()
           
 javax.jms.ObjectMessage createObjectMessage()
           
 javax.jms.ObjectMessage createObjectMessage(java.io.Serializable object)
           
 javax.jms.StreamMessage createStreamMessage()
           
 javax.jms.TextMessage createTextMessage()
           
 javax.jms.TextMessage createTextMessage(java.lang.String text)
           
 void end(javax.transaction.xa.Xid xid, int flags)
           
 void forget(javax.transaction.xa.Xid xid)
           
 javax.jms.MessageListener getMessageListener()
           
protected abstract  javax.jms.Session getMOMSession()
          Get the underlaying MOM Session.
 boolean getTransacted()
           
 int getTransactionTimeout()
           
 boolean isSameRM(javax.transaction.xa.XAResource xar)
           
protected abstract  void MOMSessionClose()
           
protected  void PhysicalClose()
           
 int prepare(javax.transaction.xa.Xid xid)
           
 void recover()
           
 javax.transaction.xa.Xid[] recover(int flag)
           
 void rollback()
           
 void rollback(javax.transaction.xa.Xid xid)
           
 void run()
           
 void setMessageListener(javax.jms.MessageListener listener)
           
 boolean setTransactionTimeout(int seconds)
           
 void start(javax.transaction.xa.Xid xid, int flags)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

xares

protected javax.transaction.xa.XAResource xares

txover

protected boolean txover

currtx

protected javax.transaction.Transaction currtx

closed

protected boolean closed

jconn

protected JConnection jconn

tm

protected static javax.transaction.TransactionManager tm
Constructor Detail

JSession

public JSession(JConnection jconn)
Constructor
Method Detail

getMOMSession

protected abstract javax.jms.Session getMOMSession()
                                            throws javax.jms.JMSException
Get the underlaying MOM Session.

MOMSessionClose

protected abstract void MOMSessionClose()

PhysicalClose

protected void PhysicalClose()

close

public void close()
           throws javax.jms.JMSException
Specified by:
close in interface javax.jms.Session

commit

public void commit()
            throws javax.jms.JMSException
Specified by:
commit in interface javax.jms.Session

createBytesMessage

public javax.jms.BytesMessage createBytesMessage()
                                          throws javax.jms.JMSException
Specified by:
createBytesMessage in interface javax.jms.Session

createMapMessage

public javax.jms.MapMessage createMapMessage()
                                      throws javax.jms.JMSException
Specified by:
createMapMessage in interface javax.jms.Session

createMessage

public javax.jms.Message createMessage()
                                throws javax.jms.JMSException
Specified by:
createMessage in interface javax.jms.Session

createObjectMessage

public javax.jms.ObjectMessage createObjectMessage()
                                            throws javax.jms.JMSException
Specified by:
createObjectMessage in interface javax.jms.Session

createObjectMessage

public javax.jms.ObjectMessage createObjectMessage(java.io.Serializable object)
                                            throws javax.jms.JMSException
Specified by:
createObjectMessage in interface javax.jms.Session

createStreamMessage

public javax.jms.StreamMessage createStreamMessage()
                                            throws javax.jms.JMSException
Specified by:
createStreamMessage in interface javax.jms.Session

createTextMessage

public javax.jms.TextMessage createTextMessage()
                                        throws javax.jms.JMSException
Specified by:
createTextMessage in interface javax.jms.Session

createTextMessage

public javax.jms.TextMessage createTextMessage(java.lang.String text)
                                        throws javax.jms.JMSException
Specified by:
createTextMessage in interface javax.jms.Session

getMessageListener

public javax.jms.MessageListener getMessageListener()
                                             throws javax.jms.JMSException
Specified by:
getMessageListener in interface javax.jms.Session

getTransacted

public boolean getTransacted()
                      throws javax.jms.JMSException
Specified by:
getTransacted in interface javax.jms.Session

recover

public void recover()
             throws javax.jms.JMSException
Specified by:
recover in interface javax.jms.Session

rollback

public void rollback()
              throws javax.jms.JMSException
Specified by:
rollback in interface javax.jms.Session

run

public void run()
Specified by:
run in interface javax.jms.Session

setMessageListener

public void setMessageListener(javax.jms.MessageListener listener)
                        throws javax.jms.JMSException
Specified by:
setMessageListener in interface javax.jms.Session

commit

public void commit(javax.transaction.xa.Xid xid,
                   boolean onePhase)
            throws javax.transaction.xa.XAException
Specified by:
commit in interface javax.transaction.xa.XAResource

end

public void end(javax.transaction.xa.Xid xid,
                int flags)
         throws javax.transaction.xa.XAException
Specified by:
end in interface javax.transaction.xa.XAResource

forget

public void forget(javax.transaction.xa.Xid xid)
            throws javax.transaction.xa.XAException
Specified by:
forget in interface javax.transaction.xa.XAResource

getTransactionTimeout

public int getTransactionTimeout()
                          throws javax.transaction.xa.XAException
Specified by:
getTransactionTimeout in interface javax.transaction.xa.XAResource

isSameRM

public boolean isSameRM(javax.transaction.xa.XAResource xar)
                 throws javax.transaction.xa.XAException
Specified by:
isSameRM in interface javax.transaction.xa.XAResource

prepare

public int prepare(javax.transaction.xa.Xid xid)
            throws javax.transaction.xa.XAException
Specified by:
prepare in interface javax.transaction.xa.XAResource

recover

public javax.transaction.xa.Xid[] recover(int flag)
                                   throws javax.transaction.xa.XAException
Specified by:
recover in interface javax.transaction.xa.XAResource

rollback

public void rollback(javax.transaction.xa.Xid xid)
              throws javax.transaction.xa.XAException
Specified by:
rollback in interface javax.transaction.xa.XAResource

setTransactionTimeout

public boolean setTransactionTimeout(int seconds)
                              throws javax.transaction.xa.XAException
Specified by:
setTransactionTimeout in interface javax.transaction.xa.XAResource

start

public void start(javax.transaction.xa.Xid xid,
                  int flags)
           throws javax.transaction.xa.XAException
Specified by:
start in interface javax.transaction.xa.XAResource