ConfigurationServiceImpl.java 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package com.mooctest.service.impl;
  2. import com.mooctest.annotation.AutoValue;
  3. import com.mooctest.dao.ConfigurationDao;
  4. import com.mooctest.model.Configuration;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.dao.ConcurrencyFailureException;
  7. import org.springframework.stereotype.Service;
  8. import java.util.List;
  9. import java.util.Map;
  10. import java.util.Optional;
  11. import java.util.stream.Collectors;
  12. /**
  13. * @author guochao
  14. * @date 2021-05-11 11:39
  15. */
  16. @Service
  17. public class ConfigurationServiceImpl implements ConfigurationService{
  18. @Autowired
  19. private ConfigurationDao configurationDao;
  20. @Override
  21. public List<Configuration> getConfigurationList() {
  22. return configurationDao.findAll();
  23. }
  24. @Override
  25. public Map<String, String> getConfigurationMap() {
  26. return configurationDao.findAll().stream().collect(Collectors.toMap(configuration -> configuration.getName(), configuration -> configuration.getValue()));
  27. }
  28. @Override
  29. public String getConfigurationByName(String name) {
  30. Optional<Configuration> configurationOptional = configurationDao.findByName(name);
  31. if(!configurationOptional.isPresent()){
  32. throw new ConcurrencyFailureException(name + "配置不存在");
  33. }else{
  34. return configurationOptional.get().getValue();
  35. }
  36. }
  37. }