MCPcopy
hub / github.com/brianc/node-postgres / handlePacket

Method handlePacket

packages/pg-protocol/src/parser.ts:157–240  ·  view source on GitHub ↗
(offset: number, code: number, length: number, bytes: Buffer)

Source from the content-addressed store, hash-verified

155 }
156
157 private handlePacket(offset: number, code: number, length: number, bytes: Buffer): BackendMessage {
158 const { reader } = this
159
160 // NOTE: This undesirably retains the buffer in `this.reader` if the `parse*Message` calls below throw. However, those should only throw in the case of a protocol error, which normally results in the reader being discarded.
161 reader.setBuffer(offset, bytes)
162
163 let message: BackendMessage
164
165 switch (code) {
166 case MessageCodes.BindComplete:
167 message = bindComplete
168 break
169 case MessageCodes.ParseComplete:
170 message = parseComplete
171 break
172 case MessageCodes.CloseComplete:
173 message = closeComplete
174 break
175 case MessageCodes.NoData:
176 message = noData
177 break
178 case MessageCodes.PortalSuspended:
179 message = portalSuspended
180 break
181 case MessageCodes.CopyDone:
182 message = copyDone
183 break
184 case MessageCodes.ReplicationStart:
185 message = replicationStart
186 break
187 case MessageCodes.EmptyQuery:
188 message = emptyQuery
189 break
190 case MessageCodes.DataRow:
191 message = parseDataRowMessage(reader)
192 break
193 case MessageCodes.CommandComplete:
194 message = parseCommandCompleteMessage(reader)
195 break
196 case MessageCodes.ReadyForQuery:
197 message = parseReadyForQueryMessage(reader)
198 break
199 case MessageCodes.NotificationResponse:
200 message = parseNotificationMessage(reader)
201 break
202 case MessageCodes.AuthenticationResponse:
203 message = parseAuthenticationResponse(reader, length)
204 break
205 case MessageCodes.ParameterStatus:
206 message = parseParameterStatusMessage(reader)
207 break
208 case MessageCodes.BackendKeyData:
209 message = parseBackendKeyData(reader)
210 break
211 case MessageCodes.ErrorMessage:
212 message = parseErrorMessage(reader, 'error')
213 break
214 case MessageCodes.NoticeMessage:

Callers 1

parseMethod · 0.95

Calls 14

parseDataRowMessageFunction · 0.85
parseNotificationMessageFunction · 0.85
parseBackendKeyDataFunction · 0.85
parseErrorMessageFunction · 0.85
parseCopyInMessageFunction · 0.85
parseCopyOutMessageFunction · 0.85

Tested by

no test coverage detected