component.go 561 B

123456789101112131415161718192021222324252627282930313233343536
  1. package mhayaCluster
  2. import (
  3. cfacade "github.com/mhaya/facade"
  4. mhayaNatsCluster "github.com/mhaya/net/cluster/nats_cluster"
  5. )
  6. const (
  7. Name = "cluster_component"
  8. )
  9. type Component struct {
  10. cfacade.Component
  11. cfacade.ICluster
  12. }
  13. func New() *Component {
  14. return &Component{}
  15. }
  16. func (c *Component) Name() string {
  17. return Name
  18. }
  19. func (c *Component) Init() {
  20. c.ICluster = c.loadCluster()
  21. c.ICluster.Init()
  22. }
  23. func (c *Component) OnStop() {
  24. c.ICluster.Stop()
  25. }
  26. func (c *Component) loadCluster() cfacade.ICluster {
  27. return mhayaNatsCluster.New(c.App())
  28. }