MCPcopy Index your code
hub / github.com/Effect-TS/effect / decodeRequest

Function decodeRequest

packages/cluster/src/internal/entityManager.ts:582–599  ·  view source on GitHub ↗
(
    message: Message.IncomingRequest<Rpcs>,
    rpc: Rpc.AnyWithProps
  )

Source from the content-addressed store, hash-verified

580 entityRpcs: Map<string, Rpcs>
581) => {
582 const decodeRequest = (
583 message: Message.IncomingRequest<Rpcs>,
584 rpc: Rpc.AnyWithProps
585 ) => {
586 const payload = Schema.decode(rpc.payloadSchema)(message.envelope.payload)
587 const lastSentReply = Option.isSome(message.lastSentReply)
588 ? Effect.asSome(Schema.decode(Reply.Reply(rpc as any))(message.lastSentReply.value))
589 : Effect.succeedNone
590 return Effect.flatMap(payload, (payload) =>
591 Effect.map(lastSentReply, (lastSentReply) => ({
592 _tag: "IncomingRequest" as const,
593 envelope: {
594 ...message.envelope,
595 payload
596 } as Envelope.Request.Any,
597 lastSentReply
598 })))
599 }
600
601 return (message: Message.Incoming<Rpcs>): Effect.Effect<
602 {

Callers 3

handleRequestFunction · 0.85
handlerFunction · 0.85
makeMessageDecodeFunction · 0.85

Calls 2

decodeMethod · 0.80
mapMethod · 0.65

Tested by

no test coverage detected