Http2SecureServer

sealed external interface Http2SecureServer : Server, HTTP2ServerCommon(source)

Properties

Link copied to clipboard
Link copied to clipboard

Indicates whether or not the server is listening for connections.

Link copied to clipboard

Set this property to reject connections when the server's connection count gets high.

Functions

Link copied to clipboard
fun addContext(hostname: String, context: SecureContextOptions)

The server.addContext() method adds a secure context that will be used if the client request's SNI name matches the supplied hostname (or wildcard).

Link copied to clipboard
abstract fun addListener(event: Symbol, listener: Function<Unit>)
abstract fun addListener(event: Http2SecureServerEvent.CHECKCONTINUE, listener: (request: Http2ServerRequest, response: Http2ServerResponse) -> Unit)
abstract fun addListener(event: Http2SecureServerEvent.REQUEST, listener: (request: Http2ServerRequest, response: Http2ServerResponse) -> Unit)
abstract fun addListener(event: Http2SecureServerEvent.SESSION, listener: (session: ServerHttp2Session) -> Unit)
abstract fun addListener(event: Http2SecureServerEvent.SESSIONERROR, listener: (JsError) -> Unit)
abstract fun addListener(event: Http2SecureServerEvent.STREAM, listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: Double) -> Unit)
abstract fun addListener(event: Http2SecureServerEvent.TIMEOUT, listener: () -> Unit)
abstract fun addListener(event: Http2SecureServerEvent.UNKNOWNPROTOCOL, listener: (socket: TLSSocket) -> Unit)
fun addListener(event: ServerEvent.CLOSE, listener: () -> Unit)
fun addListener(event: ServerEvent.CONNECTION, listener: (socket: Socket) -> Unit)
fun addListener(event: ServerEvent.DROP, listener: (data: DropArgument?) -> Unit)
fun addListener(event: ServerEvent.ERROR, listener: (JsError) -> Unit)
fun addListener(event: ServerEvent.LISTENING, listener: () -> Unit)
fun addListener(event: ServerEvent.KEYLOG, listener: (line: Buffer, tlsSocket: TLSSocket) -> Unit)
fun addListener(event: ServerEvent.NEWSESSION, listener: (sessionId: Buffer, sessionData: Buffer, callback: () -> Unit) -> Unit)
fun addListener(event: ServerEvent.OCSPREQUEST, listener: (certificate: Buffer, issuer: Buffer, callback: (JsError?, resp: Buffer) -> Unit) -> Unit)
fun addListener(event: ServerEvent.RESUMESESSION, listener: (sessionId: Buffer, callback: (JsError?, sessionData: Buffer?) -> Unit) -> Unit)
fun addListener(event: ServerEvent.SECURECONNECTION, listener: (tlsSocket: TLSSocket) -> Unit)
fun addListener(event: ServerEvent.TLSCLIENTERROR, listener: (JsError, tlsSocket: TLSSocket) -> Unit)

abstract override fun addListener(event: String, listener: Function<Unit>)

events.EventEmitter

Link copied to clipboard
fun address(): Any?

Returns the bound address, the address family name, and port of the server as reported by the operating system if listening on an IP socket (useful to find which port was assigned when getting an OS-assigned address):{ port: 12346, family: 'IPv4', address: '127.0.0.1' }.

Link copied to clipboard
fun close(callback: (JsError?) -> Unit = definedExternally)

Stops the server from accepting new connections and keeps existing connections. This function is asynchronous, the server is finally closed when all connections are ended and the server emits a 'close' event. The optional callback will be called once the 'close' event occurs. Unlike that event, it will be called with an Error as its only argument if the server was not open when it was closed.

Link copied to clipboard
abstract override fun emit(event: Symbol, vararg args: Any?): Boolean
abstract override fun emit(event: String, vararg args: Any?): Boolean
fun emit(event: ServerEvent.DROP, data: DropArgument = definedExternally): Boolean
fun emit(event: ServerEvent.KEYLOG, line: Buffer, tlsSocket: TLSSocket): Boolean
fun emit(event: ServerEvent.RESUMESESSION, sessionId: Buffer, callback: (JsError?, sessionData: Buffer?) -> Unit): Boolean
fun emit(event: ServerEvent.NEWSESSION, sessionId: Buffer, sessionData: Buffer, callback: () -> Unit): Boolean
fun emit(event: ServerEvent.OCSPREQUEST, certificate: Buffer, issuer: Buffer, callback: (JsError?, resp: Buffer) -> Unit): Boolean
Link copied to clipboard

Returns an array listing the events for which the emitter has registered listeners. The values in the array are strings or Symbols.

Link copied to clipboard
fun getConnections(cb: (JsError?, count: Double) -> Unit)

Asynchronously get the number of concurrent connections on the server. Works when sockets were sent to forks.

Link copied to clipboard

Returns the current max listener value for the EventEmitter which is either set by emitter.setMaxListeners(n) or defaults to {@link defaultMaxListeners}.

Link copied to clipboard

Returns the session ticket keys.

Link copied to clipboard
fun listen(handle: Any?, listeningListener: () -> Unit = definedExternally)
fun listen(port: Number = definedExternally, listeningListener: () -> Unit = definedExternally)
fun listen(path: String, listeningListener: () -> Unit = definedExternally)
fun listen(options: ListenOptions, listeningListener: () -> Unit = definedExternally)
fun listen(handle: Any?, backlog: Number = definedExternally, listeningListener: () -> Unit = definedExternally)
fun listen(port: Number = definedExternally, backlog: Number = definedExternally, listeningListener: () -> Unit = definedExternally)
fun listen(port: Number = definedExternally, hostname: String = definedExternally, listeningListener: () -> Unit = definedExternally)
fun listen(path: String, backlog: Number = definedExternally, listeningListener: () -> Unit = definedExternally)

fun listen(port: Number = definedExternally, hostname: String = definedExternally, backlog: Number = definedExternally, listeningListener: () -> Unit = definedExternally)

Start a server listening for connections. A net.Server can be a TCP or an IPC server depending on what it listens to.

Link copied to clipboard
abstract fun on(event: Symbol, listener: Function<Unit>)
abstract override fun on(event: String, listener: Function<Unit>)
abstract fun on(event: Http2SecureServerEvent.CHECKCONTINUE, listener: (request: Http2ServerRequest, response: Http2ServerResponse) -> Unit)
abstract fun on(event: Http2SecureServerEvent.REQUEST, listener: (request: Http2ServerRequest, response: Http2ServerResponse) -> Unit)
abstract fun on(event: Http2SecureServerEvent.SESSION, listener: (session: ServerHttp2Session) -> Unit)
abstract fun on(event: Http2SecureServerEvent.SESSIONERROR, listener: (JsError) -> Unit)
abstract fun on(event: Http2SecureServerEvent.STREAM, listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: Double) -> Unit)
abstract fun on(event: Http2SecureServerEvent.TIMEOUT, listener: () -> Unit)
abstract fun on(event: Http2SecureServerEvent.UNKNOWNPROTOCOL, listener: (socket: TLSSocket) -> Unit)
fun on(event: ServerEvent.CLOSE, listener: () -> Unit)
fun on(event: ServerEvent.CONNECTION, listener: (socket: Socket) -> Unit)
fun on(event: ServerEvent.DROP, listener: (data: DropArgument?) -> Unit)
fun on(event: ServerEvent.ERROR, listener: (JsError) -> Unit)
fun on(event: ServerEvent.LISTENING, listener: () -> Unit)
fun on(event: ServerEvent.KEYLOG, listener: (line: Buffer, tlsSocket: TLSSocket) -> Unit)
fun on(event: ServerEvent.NEWSESSION, listener: (sessionId: Buffer, sessionData: Buffer, callback: () -> Unit) -> Unit)
fun on(event: ServerEvent.OCSPREQUEST, listener: (certificate: Buffer, issuer: Buffer, callback: (JsError?, resp: Buffer) -> Unit) -> Unit)
fun on(event: ServerEvent.RESUMESESSION, listener: (sessionId: Buffer, callback: (JsError?, sessionData: Buffer?) -> Unit) -> Unit)
fun on(event: ServerEvent.SECURECONNECTION, listener: (tlsSocket: TLSSocket) -> Unit)
fun on(event: ServerEvent.TLSCLIENTERROR, listener: (JsError, tlsSocket: TLSSocket) -> Unit)
Link copied to clipboard
abstract fun once(event: Symbol, listener: Function<Unit>)
abstract override fun once(event: String, listener: Function<Unit>)
abstract fun once(event: Http2SecureServerEvent.CHECKCONTINUE, listener: (request: Http2ServerRequest, response: Http2ServerResponse) -> Unit)
abstract fun once(event: Http2SecureServerEvent.REQUEST, listener: (request: Http2ServerRequest, response: Http2ServerResponse) -> Unit)
abstract fun once(event: Http2SecureServerEvent.SESSION, listener: (session: ServerHttp2Session) -> Unit)
abstract fun once(event: Http2SecureServerEvent.SESSIONERROR, listener: (JsError) -> Unit)
abstract fun once(event: Http2SecureServerEvent.STREAM, listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: Double) -> Unit)
abstract fun once(event: Http2SecureServerEvent.TIMEOUT, listener: () -> Unit)
abstract fun once(event: Http2SecureServerEvent.UNKNOWNPROTOCOL, listener: (socket: TLSSocket) -> Unit)
fun once(event: ServerEvent.CLOSE, listener: () -> Unit)
fun once(event: ServerEvent.CONNECTION, listener: (socket: Socket) -> Unit)
fun once(event: ServerEvent.DROP, listener: (data: DropArgument?) -> Unit)
fun once(event: ServerEvent.ERROR, listener: (JsError) -> Unit)
fun once(event: ServerEvent.LISTENING, listener: () -> Unit)
fun once(event: ServerEvent.KEYLOG, listener: (line: Buffer, tlsSocket: TLSSocket) -> Unit)
fun once(event: ServerEvent.NEWSESSION, listener: (sessionId: Buffer, sessionData: Buffer, callback: () -> Unit) -> Unit)
fun once(event: ServerEvent.OCSPREQUEST, listener: (certificate: Buffer, issuer: Buffer, callback: (JsError?, resp: Buffer) -> Unit) -> Unit)
fun once(event: ServerEvent.RESUMESESSION, listener: (sessionId: Buffer, callback: (JsError?, sessionData: Buffer?) -> Unit) -> Unit)
fun once(event: ServerEvent.SECURECONNECTION, listener: (tlsSocket: TLSSocket) -> Unit)
fun once(event: ServerEvent.TLSCLIENTERROR, listener: (JsError, tlsSocket: TLSSocket) -> Unit)
Link copied to clipboard
abstract fun prependListener(event: Symbol, listener: Function<Unit>)
abstract override fun prependListener(event: String, listener: Function<Unit>)
abstract fun prependListener(event: Http2SecureServerEvent.REQUEST, listener: (request: Http2ServerRequest, response: Http2ServerResponse) -> Unit)
abstract fun prependListener(event: Http2SecureServerEvent.SESSION, listener: (session: ServerHttp2Session) -> Unit)
abstract fun prependListener(event: Http2SecureServerEvent.STREAM, listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: Double) -> Unit)
abstract fun prependListener(event: Http2SecureServerEvent.TIMEOUT, listener: () -> Unit)
abstract fun prependListener(event: Http2SecureServerEvent.UNKNOWNPROTOCOL, listener: (socket: TLSSocket) -> Unit)
fun prependListener(event: ServerEvent.CLOSE, listener: () -> Unit)
fun prependListener(event: ServerEvent.CONNECTION, listener: (socket: Socket) -> Unit)
fun prependListener(event: ServerEvent.DROP, listener: (data: DropArgument?) -> Unit)
fun prependListener(event: ServerEvent.ERROR, listener: (JsError) -> Unit)
fun prependListener(event: ServerEvent.LISTENING, listener: () -> Unit)
fun prependListener(event: ServerEvent.KEYLOG, listener: (line: Buffer, tlsSocket: TLSSocket) -> Unit)
fun prependListener(event: ServerEvent.NEWSESSION, listener: (sessionId: Buffer, sessionData: Buffer, callback: () -> Unit) -> Unit)
fun prependListener(event: ServerEvent.OCSPREQUEST, listener: (certificate: Buffer, issuer: Buffer, callback: (JsError?, resp: Buffer) -> Unit) -> Unit)
fun prependListener(event: ServerEvent.RESUMESESSION, listener: (sessionId: Buffer, callback: (JsError?, sessionData: Buffer?) -> Unit) -> Unit)
fun prependListener(event: ServerEvent.SECURECONNECTION, listener: (tlsSocket: TLSSocket) -> Unit)
fun prependListener(event: ServerEvent.TLSCLIENTERROR, listener: (JsError, tlsSocket: TLSSocket) -> Unit)
Link copied to clipboard
abstract fun prependOnceListener(event: Symbol, listener: Function<Unit>)
abstract override fun prependOnceListener(event: String, listener: Function<Unit>)
abstract fun prependOnceListener(event: Http2SecureServerEvent.REQUEST, listener: (request: Http2ServerRequest, response: Http2ServerResponse) -> Unit)
abstract fun prependOnceListener(event: Http2SecureServerEvent.SESSION, listener: (session: ServerHttp2Session) -> Unit)
abstract fun prependOnceListener(event: Http2SecureServerEvent.STREAM, listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: Double) -> Unit)
abstract fun prependOnceListener(event: Http2SecureServerEvent.TIMEOUT, listener: () -> Unit)
abstract fun prependOnceListener(event: Http2SecureServerEvent.UNKNOWNPROTOCOL, listener: (socket: TLSSocket) -> Unit)
fun prependOnceListener(event: ServerEvent.CLOSE, listener: () -> Unit)
fun prependOnceListener(event: ServerEvent.CONNECTION, listener: (socket: Socket) -> Unit)
fun prependOnceListener(event: ServerEvent.DROP, listener: (data: DropArgument?) -> Unit)
fun prependOnceListener(event: ServerEvent.LISTENING, listener: () -> Unit)
fun prependOnceListener(event: ServerEvent.KEYLOG, listener: (line: Buffer, tlsSocket: TLSSocket) -> Unit)
fun prependOnceListener(event: ServerEvent.NEWSESSION, listener: (sessionId: Buffer, sessionData: Buffer, callback: () -> Unit) -> Unit)
fun prependOnceListener(event: ServerEvent.OCSPREQUEST, listener: (certificate: Buffer, issuer: Buffer, callback: (JsError?, resp: Buffer) -> Unit) -> Unit)
fun prependOnceListener(event: ServerEvent.RESUMESESSION, listener: (sessionId: Buffer, callback: (JsError?, sessionData: Buffer?) -> Unit) -> Unit)
fun prependOnceListener(event: ServerEvent.SECURECONNECTION, listener: (tlsSocket: TLSSocket) -> Unit)
fun prependOnceListener(event: ServerEvent.TLSCLIENTERROR, listener: (JsError, tlsSocket: TLSSocket) -> Unit)
Link copied to clipboard
fun ref()

Opposite of unref(), calling ref() on a previously unrefed server will not let the program exit if it's the only server left (the default behavior). If the server is refed calling ref() again will have no effect.

Link copied to clipboard

By default EventEmitters will print a warning if more than 10 listeners are added for a particular event. This is a useful default that helps finding memory leaks. The emitter.setMaxListeners() method allows the limit to be modified for this specific EventEmitter instance. The value can be set to Infinity (or 0) to indicate an unlimited number of listeners.

Link copied to clipboard

The server.setSecureContext() method replaces the secure context of an existing server. Existing connections to the server are not interrupted.

Link copied to clipboard

Sets the session ticket keys.

Link copied to clipboard
abstract fun setTimeout(msec: Number = definedExternally, callback: () -> Unit = definedExternally)
Link copied to clipboard
fun unref()

Calling unref() on a server will allow the program to exit if this is the only active server in the event system. If the server is already unrefed callingunref() again will have no effect.

Link copied to clipboard
abstract fun updateSettings(settings: Settings)

Throws ERR_HTTP2_INVALID_SETTING_VALUE for invalid settings values. Throws ERR_INVALID_ARG_TYPE for invalid settings argument.