File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ package api
2+
3+ import (
4+ "context"
5+ "fmt"
6+
7+ "connectrpc.com/connect"
8+ "github.com/nandesh-dev/subtle/generated/ent/videoschema"
9+ "github.com/nandesh-dev/subtle/generated/proto/web"
10+ )
11+
12+ func (h WebServiceHandler ) GetVideo (ctx context.Context , req * connect.Request [web.GetVideoRequest ]) (* connect.Response [web.GetVideoResponse ], error ) {
13+ videoEntry , err := h .db .VideoSchema .Query ().Where (videoschema .IDEQ (int (req .Msg .Id ))).Only (h .ctx )
14+ if err != nil {
15+ return nil , fmt .Errorf ("cannot get video entry from database, err: %v" , err )
16+ }
17+
18+ subtitleEntries , err := videoEntry .QuerySubtitles ().All (h .ctx )
19+ if err != nil {
20+ return nil , fmt .Errorf ("cannot get subtitle entries from database, err: %v" , err )
21+ }
22+
23+ subtitleIds := make ([]int32 , 0 , len (subtitleEntries ))
24+ for _ , subtitleEntry := range subtitleEntries {
25+ subtitleIds = append (subtitleIds , int32 (subtitleEntry .ID ))
26+ }
27+
28+ return connect .NewResponse (& web.GetVideoResponse {
29+ Filepath : videoEntry .Filepath ,
30+ SubtitleIds : subtitleIds ,
31+ }), nil
32+ }
You can’t perform that action at this time.
0 commit comments