* @param {symbol} privateSymbol * @param {object} handle * @param {QuicEndpoint} endpoint
(privateSymbol, handle, endpoint)
| 2754 | * @param {QuicEndpoint} endpoint |
| 2755 | */ |
| 2756 | constructor(privateSymbol, handle, endpoint) { |
| 2757 | // Instances of QuicSession can only be created internally. |
| 2758 | assertPrivateSymbol(privateSymbol); |
| 2759 | |
| 2760 | this.#handle = handle; |
| 2761 | this.#handle[kOwner] = this; |
| 2762 | |
| 2763 | const inner = this.#inner; |
| 2764 | inner.endpoint = endpoint; |
| 2765 | // Move any qlog entries that arrived before the wrapper existed. |
| 2766 | if (handle._pendingQlog !== undefined) { |
| 2767 | inner.pendingQlog = handle._pendingQlog; |
| 2768 | handle._pendingQlog = undefined; |
| 2769 | } |
| 2770 | inner.stats = new QuicSessionStats( |
| 2771 | kPrivateConstructor, handle.stats, handle.statsByteOffset); |
| 2772 | inner.state = new QuicSessionState( |
| 2773 | kPrivateConstructor, handle.state, handle.stateByteOffset); |
| 2774 | |
| 2775 | if (hasObserver('quic')) { |
| 2776 | startPerf(this, kPerfEntry, { type: 'quic', name: 'QuicSession' }); |
| 2777 | } |
| 2778 | |
| 2779 | debug('session created'); |
| 2780 | } |
| 2781 | |
| 2782 | get applicationOptions() { |
| 2783 | // We don't cache application options because they may be updated by the |
nothing calls this directly
no test coverage detected