Class X25Channel
java.lang.Object
java.util.Observable
org.jpos.iso.BaseChannel
org.jpos.iso.channel.X25Channel
- All Implemented Interfaces:
Cloneable, Configurable, ExceptionHandlerAware, BaseChannelMBean, ClientChannel, FactoryChannel, FilteredChannel, ISOChannel, ISOSource, ServerChannel, ISOMsgMetrics.Source, LogSource
Implements an ISOChannel suitable to be used to connect to an X.25 PAD.
It waits a limited amount of time to decide when a packet is ready
to be unpacked.
This channel is based on PADChannel version 1.4. The new version
seems to have some problems dealing with ETXs (we're working on it).
Use this version _only_ if you have problems with current PADChannel
as it will be deprecated some time in the future.
- See Also:
-
Field Summary
FieldsFields inherited from class BaseChannel
cnt, incomingFilters, logger, originalRealm, outgoingFilters, overrideHeader, packager, realm, serverIn, serverInLock, serverOut, serverOutLock, serverSocket, socketFactory, usableFields inherited from interface ISOChannel
CONNECT, RX, SIZEOF_CNT, TX -
Constructor Summary
ConstructorsConstructorDescriptionNo-args constructorX25Channel(String host, int port, ISOPackager p) Constructs client ISOChannelConstruct server ISOChannelX25Channel(ISOPackager p, ServerSocket serverSocket) constructs a server ISOChannel associated with a Server Socket -
Method Summary
Modifier and TypeMethodDescriptionprotected voidsetup I/O Streams from socketvoiddisconnects the TCP/IP session.byte[]protected intprotected voidsendMessageHeader(ISOMsg m, int len) voidsetHeader(byte[] header) voidprotected byte[]Methods inherited from class BaseChannel
accept, addFilter, addFilter, addIncomingFilter, addOutgoingFilter, applyIncomingFilters, applyIncomingFilters, applyOutgoingFilters, applyTimeout, clone, closeSocket, connect, createISOMsg, createMsg, getBytes, getChannel, getConfiguration, getCounters, getDynamicHeader, getDynamicPackager, getDynamicPackager, getDynamicPackager, getExceptionHandlers, getHeaderLength, getHeaderLength, getHost, getIncomingFilters, getISOMsgMetrics, getLogger, getMaxPacketLength, getMessage, getMessageLength, getMessageTrailer, getMessageTrailler, getName, getOriginalRealm, getOutgoingFilters, getPackager, getPort, getRealm, getServerSocket, getSocket, getSocketFactory, getSoLingerSeconds, getTimeout, incrementMsgInCounter, incrementMsgOutCounter, isConnected, isExpectKeepAlive, isOverrideHeader, isRejected, isSoLingerOn, newSocket, newSocket, pack, postConnectHook, readHeader, receive, reconnect, removeFilter, removeFilter, removeIncomingFilter, removeOutgoingFilter, resetCounters, send, send, sendKeepAlive, sendMessage, sendMessageLength, sendMessageTrailer, sendMessageTrailler, sendMessageTrailler, setConfiguration, setHost, setHost, setIncomingFilters, setISOMsgMetrics, setLocalAddress, setLogger, setMaxPacketLength, setName, setOutgoingFilters, setOverrideHeader, setPackager, setPort, setServerSocket, setSocketFactory, setSoLinger, setTimeout, setUsable, shouldIgnore, unpackMethods inherited from class Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChangedMethods inherited from class Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ExceptionHandlerAware
addHandler, addHandler, handle, removeHandler, removeHandler, removeHandlers
-
Field Details
-
header
-
-
Constructor Details
-
X25Channel
public X25Channel()No-args constructor -
X25Channel
Constructs client ISOChannel- Parameters:
host- server TCP Addressport- server port numberp- an ISOPackager- See Also:
-
X25Channel
Construct server ISOChannel- Parameters:
p- an ISOPackager- Throws:
IOException- See Also:
-
X25Channel
constructs a server ISOChannel associated with a Server Socket- Parameters:
p- an ISOPackagerserverSocket- where to accept a connection- Throws:
IOException- See Also:
-
-
Method Details
-
streamReceive
- Overrides:
streamReceivein classBaseChannel- Returns:
- a byte array with the received message
- Throws:
IOException
-
connect
Description copied from class:BaseChannelsetup I/O Streams from socket- Overrides:
connectin classBaseChannel- Parameters:
socket- a Socket (client or server)- Throws:
IOException- on error
-
disconnect
Description copied from class:BaseChanneldisconnects the TCP/IP session. The instance is ready for a reconnection. There is no need to create a new ISOChannel- Specified by:
disconnectin interfaceBaseChannelMBean- Specified by:
disconnectin interfaceISOChannel- Overrides:
disconnectin classBaseChannel- Throws:
IOException
-
getHeaderLength
- Overrides:
getHeaderLengthin classBaseChannel
-
setHeader
- Overrides:
setHeaderin classBaseChannel
-
setHeader
- Overrides:
setHeaderin classBaseChannel- Parameters:
header- Hex representation of header
-
getHeader
- Overrides:
getHeaderin classBaseChannel
-
sendMessageHeader
- Overrides:
sendMessageHeaderin classBaseChannel- Throws:
IOException
-