org.jpos.q2.iso
Class QMUX

java.lang.Object
  extended by org.jpos.q2.QBeanSupport
      extended by org.jpos.q2.iso.QMUX
All Implemented Interfaces:
Configurable, ISOSource, MUX, QMUXMBean, QBean, QBeanSupportMBean, QPersist, SpaceListener, Loggeable

public class QMUX
extends QBeanSupport
implements SpaceListener, MUX, QMUXMBean, Loggeable, ISOSource

Version:
$Revision$ $Date$
Author:
Alejandro Revilla

Nested Class Summary
 class QMUX.AsyncRequest
           
 
Field Summary
protected  String ignorerc
           
protected  String in
           
protected  String[] key
           
protected  String[] mtiMapping
           
protected  String out
           
protected  String[] ready
           
protected  LocalSpace sp
           
protected  String spaceName
           
protected  String unhandled
           
 
Fields inherited from class org.jpos.q2.QBeanSupport
cfg, log
 
Fields inherited from interface org.jpos.q2.QBean
DESTROYED, FAILED, STARTED, STARTING, stateString, STOPPED, STOPPING
 
Constructor Summary
QMUX()
           
 
Method Summary
 void addISORequestListener(ISORequestListener l)
           
 void destroyService()
           
 void dump(PrintStream p, String indent)
           
 String getCountersAsString()
           
 long getIdleTimeInMillis()
           
 String getInQueue()
           
 String getKey(ISOMsg m)
           
 long getLastTxnTimestampInMillis()
           
static MUX getMUX(String name)
           
 String getOutQueue()
           
 String[] getReadyIndicatorNames()
           
 int getRXCounter()
           
 Space getSpace()
           
 int getTXCounter()
           
 String getUnhandledQueue()
           
 void initService()
           
 boolean isConnected()
           
 void notify(Object k, Object value)
          Called by Space implementation whenever an object with the given key is being placed in the Space.
protected  void processUnhandled(ISOMsg m)
           
 boolean removeISORequestListener(ISORequestListener l)
           
 ISOMsg request(ISOMsg m, long timeout)
           
 void request(ISOMsg m, long timeout, ISOResponseListener rl, Object handBack)
           
 void resetCounters()
           
 void send(ISOMsg m)
          sends (or hands back) an ISOMsg
 void setInQueue(String in)
           
 void setOutQueue(String out)
           
 void setUnhandledQueue(String unhandled)
           
 void startService()
           
 void stopService()
           
 
Methods inherited from class org.jpos.q2.QBeanSupport
addAttr, createElement, destroy, getAttrs, getAttrs, getConfiguration, getFactory, getLoader, getLoaderURLS, getLog, getLogger, getName, getPersist, getProperties, getProperty, getRealm, getServer, getState, getStateAsString, init, isModified, running, setAttr, setConfiguration, setLogger, setModified, setName, setPersist, setProperty, setRealm, setServer, setState, shutdownQ2, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jpos.q2.QBeanSupportMBean
getLoader, getLoaderURLS, getLogger, getName, getRealm, getServer, setLogger, setName, setPersist, setRealm, setServer, shutdownQ2
 
Methods inherited from interface org.jpos.q2.QBean
destroy, getState, getStateAsString, init, start, stop
 
Methods inherited from interface org.jpos.q2.QPersist
getPersist, isModified
 

Field Detail

sp

protected LocalSpace sp

in

protected String in

out

protected String out

unhandled

protected String unhandled

ready

protected String[] ready

spaceName

protected String spaceName

key

protected String[] key

ignorerc

protected String ignorerc

mtiMapping

protected String[] mtiMapping
Constructor Detail

QMUX

public QMUX()
Method Detail

initService

public void initService()
                 throws ConfigurationException
Overrides:
initService in class QBeanSupport
Throws:
ConfigurationException

startService

public void startService()
Overrides:
startService in class QBeanSupport

stopService

public void stopService()
Overrides:
stopService in class QBeanSupport

destroyService

public void destroyService()
Overrides:
destroyService in class QBeanSupport

getMUX

public static MUX getMUX(String name)
                  throws NameRegistrar.NotFoundException
Returns:
MUX with name using NameRegistrar
Throws:
NameRegistrar.NotFoundException
See Also:
NameRegistrar

request

public ISOMsg request(ISOMsg m,
                      long timeout)
               throws ISOException
Specified by:
request in interface MUX
Parameters:
m - message to send
timeout - amount of time in millis to wait for a response
Returns:
response or null
Throws:
ISOException

notify

public void notify(Object k,
                   Object value)
Description copied from interface: SpaceListener

Called by Space implementation whenever an object with the given key is being placed in the Space.

Specified by:
notify in interface SpaceListener
Parameters:
k - Object's key
value - Object's value

getKey

public String getKey(ISOMsg m)
              throws ISOException
Throws:
ISOException

setInQueue

public void setInQueue(String in)
Specified by:
setInQueue in interface QMUXMBean

getInQueue

public String getInQueue()
Specified by:
getInQueue in interface QMUXMBean

setOutQueue

public void setOutQueue(String out)
Specified by:
setOutQueue in interface QMUXMBean

getOutQueue

public String getOutQueue()
Specified by:
getOutQueue in interface QMUXMBean

getSpace

public Space getSpace()

setUnhandledQueue

public void setUnhandledQueue(String unhandled)
Specified by:
setUnhandledQueue in interface QMUXMBean

getUnhandledQueue

public String getUnhandledQueue()
Specified by:
getUnhandledQueue in interface QMUXMBean

request

public void request(ISOMsg m,
                    long timeout,
                    ISOResponseListener rl,
                    Object handBack)
             throws ISOException
Specified by:
request in interface MUX
Throws:
ISOException

getReadyIndicatorNames

public String[] getReadyIndicatorNames()

addISORequestListener

public void addISORequestListener(ISORequestListener l)

removeISORequestListener

public boolean removeISORequestListener(ISORequestListener l)

resetCounters

public void resetCounters()
Specified by:
resetCounters in interface QMUXMBean

getCountersAsString

public String getCountersAsString()
Specified by:
getCountersAsString in interface QMUXMBean

getTXCounter

public int getTXCounter()
Specified by:
getTXCounter in interface QMUXMBean

getRXCounter

public int getRXCounter()
Specified by:
getRXCounter in interface QMUXMBean

getLastTxnTimestampInMillis

public long getLastTxnTimestampInMillis()
Specified by:
getLastTxnTimestampInMillis in interface QMUXMBean

getIdleTimeInMillis

public long getIdleTimeInMillis()
Specified by:
getIdleTimeInMillis in interface QMUXMBean

processUnhandled

protected void processUnhandled(ISOMsg m)

send

public void send(ISOMsg m)
          throws IOException,
                 ISOException,
                 ISOFilter.VetoException
sends (or hands back) an ISOMsg

Specified by:
send in interface ISOSource
Parameters:
m - the Message to be sent
Throws:
IOException
ISOException
org.jpos.iso.ISOFilter.VetoException;
ISOFilter.VetoException

isConnected

public boolean isConnected()
Specified by:
isConnected in interface ISOSource
Specified by:
isConnected in interface MUX
Returns:
true if connected

dump

public void dump(PrintStream p,
                 String indent)
Specified by:
dump in interface Loggeable


Copyright © 1998-2012 jPOS.org. All Rights Reserved.