From fbf5e2e677b7c1f89114a29acdd834536316ab73 Mon Sep 17 00:00:00 2001 From: Wolfy-J Date: Sun, 3 Nov 2019 18:33:41 +0300 Subject: - the ability to set custom command producer for roadrunner - minor improvements in metrics service - List() function for Container to receive names of all available services --- service/container.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'service/container.go') diff --git a/service/container.go b/service/container.go index a21b49b4..06609ffc 100644 --- a/service/container.go +++ b/service/container.go @@ -46,6 +46,9 @@ type Container interface { // Close all active services. Stop() + + // List service names. + List() []string } // Config provides ability to slice configuration sections and unmarshal configuration data into @@ -212,6 +215,16 @@ func (c *container) Stop() { } } +// List all service names. +func (c *container) List() []string { + names := make([]string, 0) + for _, e := range c.services { + names = append(names, e.name) + } + + return names +} + // calls Init method with automatically resolved arguments. func (c *container) initService(s interface{}, segment Config) (bool, error) { r := reflect.TypeOf(s) -- cgit v1.2.3