iop/apps/control-plane/internal/wire/edge.go
toki 4c8441e6c9 feat(credential): Provider Credential Slot 라우팅을 구현한다
사용자별 credential 저장, lease, projection, runtime 전달과 OpenAI-compatible 계약 및 검증 근거를 함께 반영한다.
2026-08-02 09:10:11 +09:00

55 lines
2 KiB
Go

package wire
import (
"google.golang.org/protobuf/proto"
proto_socket "git.toki-labs.com/toki/proto-socket/go"
iop "iop/proto/gen/iop"
)
// EdgeParserMap returns the proto-socket parser set for the Control Plane-Edge
// native TCP wire contract.
func EdgeParserMap() proto_socket.ParserMap {
return proto_socket.ParserMap{
proto_socket.TypeNameOf(&iop.EdgeHelloRequest{}): func(b []byte) (proto.Message, error) {
req := &iop.EdgeHelloRequest{}
return req, proto.Unmarshal(b, req)
},
proto_socket.TypeNameOf(&iop.EdgeHelloResponse{}): func(b []byte) (proto.Message, error) {
res := &iop.EdgeHelloResponse{}
return res, proto.Unmarshal(b, res)
},
proto_socket.TypeNameOf(&iop.EdgeStatusRequest{}): func(b []byte) (proto.Message, error) {
req := &iop.EdgeStatusRequest{}
return req, proto.Unmarshal(b, req)
},
proto_socket.TypeNameOf(&iop.EdgeStatusResponse{}): func(b []byte) (proto.Message, error) {
res := &iop.EdgeStatusResponse{}
return res, proto.Unmarshal(b, res)
},
proto_socket.TypeNameOf(&iop.EdgeNodeEvent{}): func(b []byte) (proto.Message, error) {
event := &iop.EdgeNodeEvent{}
return event, proto.Unmarshal(b, event)
},
proto_socket.TypeNameOf(&iop.EdgeCommandRequest{}): func(b []byte) (proto.Message, error) {
req := &iop.EdgeCommandRequest{}
return req, proto.Unmarshal(b, req)
},
proto_socket.TypeNameOf(&iop.EdgeCommandResponse{}): func(b []byte) (proto.Message, error) {
res := &iop.EdgeCommandResponse{}
return res, proto.Unmarshal(b, res)
},
proto_socket.TypeNameOf(&iop.EdgeCommandEvent{}): func(b []byte) (proto.Message, error) {
event := &iop.EdgeCommandEvent{}
return event, proto.Unmarshal(b, event)
},
proto_socket.TypeNameOf(&iop.AcquireLeaseRequest{}): func(b []byte) (proto.Message, error) {
req := &iop.AcquireLeaseRequest{}
return req, proto.Unmarshal(b, req)
},
proto_socket.TypeNameOf(&iop.PrincipalProjectionApplyResponse{}): func(b []byte) (proto.Message, error) {
res := &iop.PrincipalProjectionApplyResponse{}
return res, proto.Unmarshal(b, res)
},
}
}