From 722f1300727fc635e862266860ab6c1d9923a11f Mon Sep 17 00:00:00 2001 From: Derrick Hammer Date: Mon, 29 Jan 2024 02:16:14 -0500 Subject: [PATCH] feat: add initial uber fx support --- fx/fx.go | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 fx/fx.go diff --git a/fx/fx.go b/fx/fx.go new file mode 100644 index 0000000..b086b40 --- /dev/null +++ b/fx/fx.go @@ -0,0 +1,45 @@ +package fx + +import ( + "git.lumeweb.com/LumeWeb/libs5-go/node" + "git.lumeweb.com/LumeWeb/libs5-go/service" + "go.uber.org/fx" +) + +var Module = fx.Module("libs5", + fx.Provide(newP2P), + fx.Provide(newRegistry), + fx.Provide(newHTTP), + fx.Provide(newStorage), + fx.Provide(newServices), + fx.Provide(node.NewNode), +) + +type ServiceParams struct { + fx.In + service.ServiceParams +} + +type ServicesParams struct { + fx.In + node.ServicesParams +} + +func newP2P(params ServiceParams) *service.P2PService { + return service.NewP2P(params.ServiceParams) +} + +func newRegistry(params ServiceParams) *service.RegistryService { + return service.NewRegistry(params.ServiceParams) +} +func newHTTP(params ServiceParams) *service.HTTPService { + return service.NewHTTP(params.ServiceParams) +} + +func newStorage(params ServiceParams) *service.StorageService { + return service.NewStorage(params.ServiceParams) +} + +func newServices(params ServicesParams) service.Services { + return node.NewServices(params.ServicesParams) +}