api/internal/rpc/endpoints_server.go
Peter Kurfer 1ef1f59402 Add gRPC API implementation
- add config struct for API
- add UUID to endpoint to be able to address them uniquely
- add manager to handle all gRPC services
2020-06-15 12:32:18 +02:00

26 lines
627 B
Go

package rpc
import (
"context"
"github.com/baez90/inetmock/internal/endpoints"
)
type endpointsServer struct {
endpointsManager endpoints.EndpointManager
}
func (e endpointsServer) GetEndpoints(_ context.Context, _ *GetEndpointsRequest) (*GetEndpointsResponse, error) {
eps := make([]*Endpoint, 0)
for _, ep := range e.endpointsManager.StartedEndpoints() {
eps = append(eps, &Endpoint{
Id: ep.Id().String(),
Name: ep.Name(),
Handler: ep.Handler(),
ListenAddress: ep.Listen(),
Port: int32(ep.Port()),
})
}
return &GetEndpointsResponse{
Endpoints: eps,
}, nil
}