ClientTCP

  
class ClientTCP extends ClientProxy {
  constructor(options: { host?: string; port?: number; serializer?: Serializer<any, any>; deserializer?: Deserializer<any, any>; tlsOptions?: ConnectionOptions; socketClass?: Type<...>; })
  protected logger: Logger
  protected port: number
  protected host: string
  protected socketClass: Type<TcpSocket>
  protected tlsOptions?: ConnectionOptions
  protected socket: TcpSocket | null
  protected connectionPromise: Promise<any> | null
  protected pendingEventListeners: Array<{...}
  connect(): Promise<any>
  handleResponse(buffer: unknown): Promise<void>
  createSocket(): TcpSocket
  close()
  registerConnectListener(socket: TcpSocket)
  registerErrorListener(socket: TcpSocket)
  registerCloseListener(socket: TcpSocket)
  handleError(err: any)
  handleClose()
  on<EventKey extends keyof TcpEvents = keyof TcpEvents, EventCallback extends TcpEvents[EventKey] = TcpEvents[EventKey]>(event: EventKey, callback: EventCallback)
  unwrap<T>(): T
  protected publish(partialPacket: ReadPacket<any>, callback: (packet: WritePacket<any>) => any): () => void
  protected dispatchEvent(packet: ReadPacket<any>): Promise<any>

  // inherited from nest/packages/microservices/ClientProxy
  protected routingMap: Map<string, Function>
  protected serializer: ProducerSerializer
  protected deserializer: ProducerDeserializer
  protected _status$: ReplaySubject<Status>
  status: Observable<Status>
  abstract connect(): Promise<any>
  abstract close(): any
  on<EventKey extends keyof EventsMap = keyof EventsMap, EventCallback extends EventsMap[EventKey] = EventsMap[EventKey]>(event: EventKey, callback: EventCallback)
  abstract unwrap<T>(): T
  send<TResult = any, TInput = any>(pattern: any, data: TInput): Observable<TResult>
  emit<TResult = any, TInput = any>(pattern: any, data: TInput): Observable<TResult>
  protected abstract publish(packet: ReadPacket<any>, callback: (packet: WritePacket<any>) => void): () => void
  protected abstract dispatchEvent<T = any>(packet: ReadPacket<any>): Promise<T>
  protected createObserver<T>(observer: Observer<T>): (packet: WritePacket) => void
  protected serializeError(err: any): any
  protected serializeResponse(response: any): any
  protected assignPacketId(packet: ReadPacket<any>): ReadPacket & PacketId
  protected connect$(instance: any, errorEvent: string = 'error', connectEvent: string = 'connect'): Observable<any>
  protected getOptionsProp<Options extends ClientOptions['options'], Attribute extends keyof Options, DefaultValue extends Options[Attribute] = Options[Attribute]>(obj: Options, prop: Attribute, defaultValue: DefaultValue = undefined as DefaultValue)
  protected normalizePattern(pattern: MsPattern): string
  protected initializeSerializer(options: { url?: string; maxSendMessageLength?: number; maxReceiveMessageLength?: number; maxMetadataSize?: number; keepalive?: { keepaliveTimeMs?: number; keepaliveTimeoutMs?: number; keepalivePermitWithoutCalls?: number; http2MaxPingsWithoutData?: number; http2MinTimeBetweenPingsMs?: number; http2MinPingIntervalWithoutData...)
  protected initializeDeserializer(options: { url?: string; maxSendMessageLength?: number; maxReceiveMessageLength?: number; maxMetadataSize?: number; keepalive?: { keepaliveTimeMs?: number; keepaliveTimeoutMs?: number; keepalivePermitWithoutCalls?: number; http2MaxPingsWithoutData?: number; http2MinTimeBetweenPingsMs?: number; http2MinPingIntervalWithoutData...)
}

Constructor


constructor(options: { host?: string; port?: number; serializer?: Serializer<any, any>; deserializer?: Deserializer<any, any>; tlsOptions?: ConnectionOptions; socketClass?: Type<...>; })

Parameters

Option Type Description
options object

Properties

Property Description
protected logger: Logger Read-only.
protected port: number Read-only.
protected host: string Read-only.
protected socketClass: Type<TcpSocket> Read-only.
protected tlsOptions?: ConnectionOptions Read-only.
protected socket: TcpSocket | null
protected connectionPromise: Promise<any> | null
protected pendingEventListeners: Array<{ event: keyof TcpEvents; callback: TcpEvents[keyof TcpEvents]; }>

Methods

connect()


connect(): Promise<any>

Parameters

There are no parameters.

Returns

Promise<any>

handleResponse()


handleResponse(buffer: unknown): Promise<void>

Parameters

Option Type Description
buffer unknown

Returns

Promise<void>

createSocket()


createSocket(): TcpSocket

Parameters

There are no parameters.

Returns

TcpSocket

close()


close()

Parameters

There are no parameters.

registerConnectListener()


registerConnectListener(socket: TcpSocket)

Parameters

Option Type Description
socket TcpSocket

registerErrorListener()


registerErrorListener(socket: TcpSocket)

Parameters

Option Type Description
socket TcpSocket

registerCloseListener()


registerCloseListener(socket: TcpSocket)

Parameters

Option Type Description
socket TcpSocket

handleError()


handleError(err: any)

Parameters

Option Type Description
err any

handleClose()


handleClose()

Parameters

There are no parameters.

on()


on<EventKey extends keyof TcpEvents = keyof TcpEvents, EventCallback extends TcpEvents[EventKey] = TcpEvents[EventKey]>(event: EventKey, callback: EventCallback)

Parameters

Option Type Description
event EventKey
callback EventCallback

unwrap()


unwrap<T>(): T

Parameters

There are no parameters.

Returns

T

publish()


protected publish(partialPacket: ReadPacket<any>, callback: (packet: WritePacket<any>) => any): () => void

Parameters

Option Type Description
partialPacket ReadPacket
callback (packet: WritePacket) => any

Returns

() => void

dispatchEvent()


protected dispatchEvent(packet: ReadPacket<any>): Promise<any>

Parameters

Option Type Description
packet ReadPacket

Returns

Promise<any>