package org.jdiameter.server.impl.io; import org.jdiameter.api.Configuration; import org.jdiameter.client.api.io.TransportError; import org.jdiameter.client.api.io.TransportException; import org.jdiameter.client.api.parser.IMessageParser; import org.jdiameter.server.api.io.INetWorkConnectionListener; import org.jdiameter.server.api.io.INetWorkGuard; import org.jdiameter.server.api.io.ITransportLayerFactory; import org.jdiameter.server.impl.io.tcp.NetWorkGuard; import java.net.InetAddress; public class TransportLayerFactory extends org.jdiameter.client.impl.transport.TransportLayerFactory implements ITransportLayerFactory { public TransportLayerFactory(Configuration conf, IMessageParser parser) throws TransportException { super(conf, parser); } public INetWorkGuard createNetWorkGuard(InetAddress inetAddress, int port) throws TransportException { INetWorkGuard guard; try { guard = new NetWorkGuard(inetAddress, port, parser); } catch (Exception e) { throw new TransportException(TransportError.NetWorkError, e); } return guard; } public INetWorkGuard createNetWorkGuard(InetAddress inetAddress, final int port, final INetWorkConnectionListener listener) throws TransportException { INetWorkGuard guard; try { guard = new NetWorkGuard(inetAddress, port, parser); } catch (Exception e) { throw new TransportException(TransportError.NetWorkError, e); } guard.addListener(listener); return guard; } }