Module org.newsclub.net.unix
Package org.newsclub.net.unix
Class AFSocketFactory<A extends AFSocketAddress>
java.lang.Object
javax.net.SocketFactory
org.newsclub.net.unix.AFSocketFactory<A>
- Type Parameters:
A
- The supported address type.
- All Implemented Interfaces:
AFSocketAddressFromHostname<A>
- Direct Known Subclasses:
AFSocketFactory.FixedAddressSocketFactory
,AFUNIXSocketFactory
public abstract class AFSocketFactory<A extends AFSocketAddress>
extends SocketFactory
implements AFSocketAddressFromHostname<A>
The base for a SocketFactory that connects to UNIX sockets.
Typically, the "hostname" is used as a reference to a socketFile on the file system. The actual
mapping is left to the implementor.
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
A socket factory that always connects to a fixed socket address, no matter what. -
Constructor Summary
ModifierConstructorDescriptionprotected
AFSocketFactory
(Class<? extends AFSocketAddress> socketAddressClass) Creates a new socket factory instance. -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract Socket
Creates a newAFSocket
, connected to the given address.abstract Socket
final Socket
createSocket
(String host, int port) final Socket
createSocket
(String host, int port, InetAddress localHost, int localPort) final Socket
createSocket
(InetAddress address, int port) final Socket
createSocket
(InetAddress address, int port, InetAddress localAddress, int localPort) protected final boolean
isInetAddressSupported
(InetAddress address) Checks whether the givenInetAddress
is supported by this socket factory.Methods inherited from class javax.net.SocketFactory
getDefault
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.newsclub.net.unix.AFSocketAddressFromHostname
addressFromHost, isHostnameSupported
-
Constructor Details
-
AFSocketFactory
Creates a new socket factory instance.- Parameters:
socketAddressClass
- The AFSocketAddress subclass.
-
-
Method Details
-
isInetAddressSupported
Checks whether the givenInetAddress
is supported by this socket factory. If not, calls to createSocket will cause aSocketException
. By default, this only checks the hostname part of the address viaAFSocketAddressFromHostname.isHostnameSupported(String)
.- Parameters:
address
- The address to check.- Returns:
true
if supported.
-
createSocket
- Overrides:
createSocket
in classSocketFactory
- Throws:
SocketException
-
connectTo
Creates a newAFSocket
, connected to the given address.- Parameters:
addr
- The address to connect to.- Returns:
- The socket instance.
- Throws:
IOException
- on error.
-
createSocket
- Specified by:
createSocket
in classSocketFactory
- Throws:
IOException
-
createSocket
public final Socket createSocket(String host, int port, InetAddress localHost, int localPort) throws IOException - Specified by:
createSocket
in classSocketFactory
- Throws:
IOException
-
createSocket
- Specified by:
createSocket
in classSocketFactory
- Throws:
IOException
-
createSocket
public final Socket createSocket(InetAddress address, int port, InetAddress localAddress, int localPort) throws IOException - Specified by:
createSocket
in classSocketFactory
- Throws:
IOException
-