실거래 경계를 열기 위한 domain, contract, API, worker, client parser 등록을 함께 추가한다. 브로커 capability 조회와 live trading capability 광고가 각 런타임에서 일관되게 검증되도록 테스트와 review artifact를 포함한다.
27 lines
790 B
Go
27 lines
790 B
Go
package socket
|
|
|
|
import (
|
|
altv1 "git.toki-labs.com/toki/alt/packages/contracts/gen/go/alt/v1"
|
|
"git.toki-labs.com/toki/alt/packages/domain/trading"
|
|
)
|
|
|
|
func liveCapabilityToProto(c trading.BrokerCapability) *altv1.LiveBrokerCapability {
|
|
cap := &altv1.LiveBrokerCapability{
|
|
Broker: string(c.Broker),
|
|
SupportsAmend: c.SupportsAmend,
|
|
SupportsCancel: c.SupportsCancel,
|
|
SupportsAccount: c.SupportsAccount,
|
|
SupportsAuditTags: c.SupportsAuditTags,
|
|
CheckedAtUnixMs: c.CheckedAt.UnixMilli(),
|
|
}
|
|
for m := range c.Markets {
|
|
cap.Markets = append(cap.Markets, marketToProto(m))
|
|
}
|
|
for v := range c.Venues {
|
|
cap.Venues = append(cap.Venues, venueToProto(v))
|
|
}
|
|
for _, t := range c.OrderTypes {
|
|
cap.OrderTypes = append(cap.OrderTypes, string(t))
|
|
}
|
|
return cap
|
|
}
|