Add Update/List endpoints to runtime
This commit is contained in:
parent
d89256d8d5
commit
dab0f3223f
@ -252,6 +252,28 @@ func (r *runtime) Delete(s *Service) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (r *runtime) Update(s *Service) error {
|
||||
// delete the service
|
||||
if err := r.Delete(s); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// create new service
|
||||
return r.Create(s)
|
||||
}
|
||||
|
||||
func (r *runtime) List() ([]*Service, error) {
|
||||
var services []*Service
|
||||
r.RLock()
|
||||
defer r.RUnlock()
|
||||
|
||||
for _, service := range r.services {
|
||||
services = append(services, service.Service)
|
||||
}
|
||||
|
||||
return services, nil
|
||||
}
|
||||
|
||||
func (r *runtime) Start() error {
|
||||
r.Lock()
|
||||
defer r.Unlock()
|
||||
|
@ -7,6 +7,10 @@ type Runtime interface {
|
||||
Create(*Service, ...CreateOption) error
|
||||
// Remove a service
|
||||
Delete(*Service) error
|
||||
// Update the service in place
|
||||
Update(*Service) error
|
||||
// List the managed services
|
||||
List() ([]*Service, error)
|
||||
// starts the runtime
|
||||
Start() error
|
||||
// Shutdown the runtime
|
||||
@ -36,6 +40,14 @@ func Delete(s *Service) error {
|
||||
return DefaultRuntime.Delete(s)
|
||||
}
|
||||
|
||||
func Update(s *Service) error {
|
||||
return DefaultRuntime.Update(s)
|
||||
}
|
||||
|
||||
func List() ([]*Service, error) {
|
||||
return DefaultRuntime.List()
|
||||
}
|
||||
|
||||
func Start() error {
|
||||
return DefaultRuntime.Start()
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user