public abstract class SNIMatcher extends Object
SNIServerName
instance. Servers can use Server Name Indication (SNI) information to decide if specific SSLSocket
or SSLEngine
instances should accept a connection. For example, when multiple "virtual" or "name-based" servers are hosted on a single underlying network address, the server application can use SNI information to determine whether this server is the exact server that the client wants to access. Instances of this class can be used by a server to verify the acceptable server names of a particular type, such as host names.
SNIMatcher
objects are immutable. Subclasses should not provide methods that can change the state of an instance once it has been created.
Modifier | Constructor | Description |
---|---|---|
protected |
Creates an SNIMatcher using the specified server name type. |
Modifier and Type | Method | Description |
---|---|---|
final int |
getType() |
Returns the server name type of this SNIMatcher object. |
abstract boolean |
matches |
Attempts to match the given SNIServerName . |
protected SNIMatcher(int type)
SNIMatcher
using the specified server name type.type
- the type of the server name that this matcher performs onIllegalArgumentException
- if type
is not in the range of 0 to 255, inclusive.public final int getType()
SNIMatcher
object.SNIMatcher
object.public abstract boolean matches(SNIServerName serverName)
SNIServerName
.serverName
- the SNIServerName
instance on which this matcher performs match operationstrue
if, and only if, the matcher matches the given serverName
NullPointerException
- if serverName
is null
IllegalArgumentException
- if serverName
is not of the given server name type of this matcher
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/javax/net/ssl/SNIMatcher.html