summaryrefslogtreecommitdiff
path: root/plugins/informer
diff options
context:
space:
mode:
authorValery Piashchynski <[email protected]>2021-07-11 10:11:22 +0300
committerValery Piashchynski <[email protected]>2021-07-11 10:11:22 +0300
commit589f759cc2411319adbca2ece0dbe212407d1eba (patch)
tree2fbea4a6033d65813c41fd80f6339a524b46c9b2 /plugins/informer
parentcb2665d93ad7abe1ab30508ff0e2bd4d0bc379ea (diff)
Update informer interface to return slice of pointers (do not over-copy
the Stat structure). Make amqp Push concurrent safe. Signed-off-by: Valery Piashchynski <[email protected]>
Diffstat (limited to 'plugins/informer')
-rw-r--r--plugins/informer/interface.go2
-rw-r--r--plugins/informer/plugin.go2
-rw-r--r--plugins/informer/rpc.go2
3 files changed, 3 insertions, 3 deletions
diff --git a/plugins/informer/interface.go b/plugins/informer/interface.go
index 316c7bc1..d91ddf9d 100644
--- a/plugins/informer/interface.go
+++ b/plugins/informer/interface.go
@@ -11,7 +11,7 @@ Because Availabler implementation should present in every plugin
// Informer used to get workers from particular plugin or set of plugins
type Informer interface {
- Workers() []process.State
+ Workers() []*process.State
}
// Availabler interface should be implemented by every plugin which wish to report to the PHP worker that it available in the RR runtime
diff --git a/plugins/informer/plugin.go b/plugins/informer/plugin.go
index f8725ed7..c613af58 100644
--- a/plugins/informer/plugin.go
+++ b/plugins/informer/plugin.go
@@ -19,7 +19,7 @@ func (p *Plugin) Init() error {
}
// Workers provides BaseProcess slice with workers for the requested plugin
-func (p *Plugin) Workers(name string) []process.State {
+func (p *Plugin) Workers(name string) []*process.State {
svc, ok := p.withWorkers[name]
if !ok {
return nil
diff --git a/plugins/informer/rpc.go b/plugins/informer/rpc.go
index f096a0af..02254865 100644
--- a/plugins/informer/rpc.go
+++ b/plugins/informer/rpc.go
@@ -11,7 +11,7 @@ type rpc struct {
// WorkerList contains list of workers.
type WorkerList struct {
// Workers is list of workers.
- Workers []process.State `json:"workers"`
+ Workers []*process.State `json:"workers"`
}
// List all resettable services.