Create indexer proto
This commit is contained in:
@@ -11,11 +11,12 @@ import (
|
|||||||
"github.com/rs/zerolog/log"
|
"github.com/rs/zerolog/log"
|
||||||
"google.golang.org/grpc"
|
"google.golang.org/grpc"
|
||||||
"gopkg.in/yaml.v2"
|
"gopkg.in/yaml.v2"
|
||||||
pb "homelab.lan/music-agregator/gen/music_agregator/hello/v1"
|
|
||||||
|
|
||||||
// My modules
|
// My modules
|
||||||
|
"homelab.lan/music-agregator/internal"
|
||||||
"homelab.lan/music-agregator/internal/config"
|
"homelab.lan/music-agregator/internal/config"
|
||||||
"homelab.lan/music-agregator/internal/hello"
|
"homelab.lan/music-agregator/internal/hello"
|
||||||
|
"homelab.lan/music-agregator/internal/indexer"
|
||||||
appRouter "homelab.lan/music-agregator/internal/router"
|
appRouter "homelab.lan/music-agregator/internal/router"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -53,8 +54,15 @@ func serveGrpc(config config.Config) {
|
|||||||
var opts []grpc.ServerOption
|
var opts []grpc.ServerOption
|
||||||
server := grpc.NewServer(opts...)
|
server := grpc.NewServer(opts...)
|
||||||
|
|
||||||
helloServiceHandler := hello.NewHelloServer()
|
services := []internal.Registrable{
|
||||||
pb.RegisterHelloServiceServer(server, helloServiceHandler)
|
hello.NewHelloServer(),
|
||||||
|
indexer.NewIndexerServer(),
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, service := range services {
|
||||||
|
service.Register(server)
|
||||||
|
}
|
||||||
|
|
||||||
listener, err := net.Listen("tcp", fmt.Sprintf("%v:%v", config.App.Host, config.App.Port))
|
listener, err := net.Listen("tcp", fmt.Sprintf("%v:%v", config.App.Host, config.App.Port))
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package hello
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
|
||||||
|
"google.golang.org/grpc"
|
||||||
pb "homelab.lan/music-agregator/gen/music_agregator/hello/v1"
|
pb "homelab.lan/music-agregator/gen/music_agregator/hello/v1"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -25,3 +26,7 @@ func (server *HelloServer) Echo(ctx context.Context, req *pb.EchoRequest) (*pb.E
|
|||||||
|
|
||||||
return response, nil
|
return response, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *HelloServer) Register(server *grpc.Server) {
|
||||||
|
pb.RegisterHelloServiceServer(server, s)
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package indexer
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"google.golang.org/grpc"
|
||||||
|
pb "homelab.lan/music-agregator/gen/music_agregator/indexer/v1"
|
||||||
|
)
|
||||||
|
|
||||||
|
type IndexerServer struct {
|
||||||
|
pb.UnimplementedIndexerServiceServer
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewIndexerServer() *IndexerServer {
|
||||||
|
return &IndexerServer{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (server *IndexerServer) Search(ctx context.Context, req *pb.SearchRequest) (*pb.SearchResponse, error) {
|
||||||
|
return &pb.SearchResponse{}, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *IndexerServer) Register(server *grpc.Server) {
|
||||||
|
pb.RegisterIndexerServiceServer(server, s)
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package internal
|
||||||
|
|
||||||
|
import "google.golang.org/grpc"
|
||||||
|
|
||||||
|
type Registrable interface {
|
||||||
|
Register(server *grpc.Server)
|
||||||
|
}
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
syntax = "proto3";
|
||||||
|
package music_agregator.indexer.v1;
|
||||||
|
option go_package = "homelab.lan/music-agregator/gen/music_agregator/v1/indexer";
|
||||||
|
|
||||||
|
service IndexerService {
|
||||||
|
rpc Search(SearchRequest) returns (SearchResponse){
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
message SearchRequest {}
|
||||||
|
message SearchResponse {}
|
||||||
Reference in New Issue
Block a user