Record Class ServletConnectionImpl
java.lang.Object
java.lang.Record
org.apache.tomcat.util.net.ServletConnectionImpl
- All Implemented Interfaces:
ServletConnection
public record ServletConnectionImpl(String connectionId, String protocol, String protocolConnectionId, boolean secure)
extends Record
implements ServletConnection
-
Constructor Summary
ConstructorsConstructorDescriptionServletConnectionImpl
(String connectionId, String protocol, String protocolConnectionId, boolean secure) Creates an instance of aServletConnectionImpl
record class. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of theconnectionId
record component.final boolean
Indicates whether some other object is "equal to" this one.Obtain a unique (within the lifetime of the JVM) identifier string for the network connection to the JVM that is being used for theServletRequest
from which thisServletConnection
was obtained.Obtain the name of the protocol as presented to the server after the removal, if present, of any TLS or similar encryption.Obtain the connection identifier for the network connection to the server that is being used for theServletRequest
from which thisServletConnection
was obtained as defined by the protocol in use.final int
hashCode()
Returns a hash code value for this object.boolean
isSecure()
Determine whether the incoming network connection to the server used encryption or not.protocol()
Returns the value of theprotocol
record component.Returns the value of theprotocolConnectionId
record component.boolean
secure()
Returns the value of thesecure
record component.final String
toString()
Returns a string representation of this record class.
-
Constructor Details
-
ServletConnectionImpl
public ServletConnectionImpl(String connectionId, String protocol, String protocolConnectionId, boolean secure) Creates an instance of aServletConnectionImpl
record class.- Parameters:
connectionId
- the value for theconnectionId
record componentprotocol
- the value for theprotocol
record componentprotocolConnectionId
- the value for theprotocolConnectionId
record componentsecure
- the value for thesecure
record component
-
-
Method Details
-
getConnectionId
Description copied from interface:jakarta.servlet.ServletConnection
Obtain a unique (within the lifetime of the JVM) identifier string for the network connection to the JVM that is being used for theServletRequest
from which thisServletConnection
was obtained.There is no defined format for this string. The format is implementation dependent.
- Specified by:
getConnectionId
in interfaceServletConnection
- Returns:
- A unique identifier for the network connection
-
getProtocol
Description copied from interface:jakarta.servlet.ServletConnection
Obtain the name of the protocol as presented to the server after the removal, if present, of any TLS or similar encryption. This may not be the same as the protocol seen by the application. For example, a reverse proxy may present AJP whereas the application will see HTTP 1.1.If the protocol has an entry in the IANA registry for ALPN names then the identification sequence, in string form, must be returned. Registered identification sequences MUST only be used for the associated protocol. Return values for other protocols are implementation dependent. Unknown protocols should return the string "unknown".
- Specified by:
getProtocol
in interfaceServletConnection
- Returns:
- The name of the protocol presented to the server after decryption of TLS, or similar encryption, if any.
-
getProtocolConnectionId
Description copied from interface:jakarta.servlet.ServletConnection
Obtain the connection identifier for the network connection to the server that is being used for theServletRequest
from which thisServletConnection
was obtained as defined by the protocol in use. Note that some protocols do not define such an identifier.Examples of protocol provided connection identifiers include:
- HTTP 1.x
- None, so the empty string should be returned
- HTTP 2
- None, so the empty string should be returned
- HTTP 3
- The QUIC connection ID
- AJP
- None, so the empty string should be returned
- Specified by:
getProtocolConnectionId
in interfaceServletConnection
- Returns:
- The connection identifier if one is defined, otherwise an empty string
-
isSecure
public boolean isSecure()Description copied from interface:jakarta.servlet.ServletConnection
Determine whether the incoming network connection to the server used encryption or not. Note that where a reverse proxy is used, the application may have a different view as to whether encryption is being used due to the use of headers likeX-Forwarded-Proto
.- Specified by:
isSecure
in interfaceServletConnection
- Returns:
true
if the incoming network connection used encryption, otherwisefalse
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object)
; primitive components are compared with thecompare
method from their corresponding wrapper classes. -
connectionId
Returns the value of theconnectionId
record component.- Returns:
- the value of the
connectionId
record component
-
protocol
Returns the value of theprotocol
record component.- Returns:
- the value of the
protocol
record component
-
protocolConnectionId
Returns the value of theprotocolConnectionId
record component.- Returns:
- the value of the
protocolConnectionId
record component
-
secure
public boolean secure()Returns the value of thesecure
record component.- Returns:
- the value of the
secure
record component
-