HosArbiterApplication.java 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package com.yihu.hos.arbiter;
  2. import com.yihu.hos.arbiter.configuration.ArbiterServerConfiguration;
  3. import com.yihu.hos.arbiter.services.ProxyService;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.boot.CommandLineRunner;
  6. import org.springframework.boot.SpringApplication;
  7. import org.springframework.boot.autoconfigure.SpringBootApplication;
  8. import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
  9. import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration;
  10. import org.zbus.mq.server.MqServer;
  11. import org.zbus.mq.server.MqServerConfig;
  12. @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class})
  13. public class HosArbiterApplication implements CommandLineRunner {
  14. private ArbiterServerConfiguration configuration;
  15. private ProxyService proxyService;
  16. public static void main(String[] args) {
  17. SpringApplication.run(HosArbiterApplication.class, args);
  18. }
  19. @Override
  20. public void run(String... strings) throws Exception {
  21. if (configuration.isCentral()) {
  22. MqServerConfig config = new MqServerConfig();
  23. config.serverPort = configuration.getCentralPort();
  24. config.storePath = configuration.getCentralStore();
  25. final MqServer server = new MqServer(config);
  26. server.start();
  27. } else {
  28. proxyService.start();
  29. }
  30. }
  31. @Autowired
  32. public void setConfiguration(ArbiterServerConfiguration configuration) {
  33. this.configuration = configuration;
  34. }
  35. @Autowired
  36. public void setProxyService(ProxyService proxyService) {
  37. this.proxyService = proxyService;
  38. }
  39. }