Projekt

Obecné

Profil

Stáhnout (1.93 KB) Statistiky
| Větev: | Revize:
1
package vldc.aswi.service.parameter;
2

    
3
import lombok.extern.slf4j.Slf4j;
4
import org.springframework.beans.factory.annotation.Autowired;
5
import org.springframework.context.event.ContextRefreshedEvent;
6
import org.springframework.context.event.EventListener;
7
import org.springframework.core.annotation.Order;
8
import org.springframework.dao.InvalidDataAccessResourceUsageException;
9
import org.springframework.stereotype.Service;
10
import vldc.aswi.dao.parameter.ParameterRepository;
11
import vldc.aswi.dao.parameter.ParameterValueRepository;
12
import vldc.aswi.domain.parameter.Parameter;
13
import vldc.aswi.domain.parameter.ParameterValue;
14

    
15
import javax.transaction.Transactional;
16
import java.util.LinkedList;
17
import java.util.List;
18

    
19
/**
20
 * Manager for ParameterValue.
21
 */
22
@Service
23
@Slf4j
24
public class ParameterValueManagerImpl implements ParameterValueManager {
25

    
26
    /** Autowired parameter value repository. */
27
    @Autowired
28
    private ParameterValueRepository parameterValueRepository;
29

    
30
    @Autowired
31
    private ParameterRepository parameterRepository;
32

    
33
    /**
34
     * Initialization setup for parameter value manager.
35
     * Check if table "Parametr_hodnota" exists.
36
     */
37
    @EventListener(classes = {
38
            ContextRefreshedEvent.class
39
    })
40
    @Order(3)
41
    @Transactional
42
    public void setup() {
43
        try {
44
            if (this.parameterValueRepository.count() == 0) {
45
                // Just checking if table exists.
46
            }
47
        }
48
        catch (InvalidDataAccessResourceUsageException e) {
49
            log.error("Table \"Parametr_hodnota\" did not exists in database!");
50
            System.exit(1);
51
        }
52
    }
53

    
54
    /**
55
     * Get all parameter values from database.
56
     * @return List of parameter values.
57
     */
58
    @Override
59
    public List<ParameterValue> getParameterValues() {
60
        List<ParameterValue> retVal = new LinkedList<>();
61
        this.parameterValueRepository.findAll().forEach(retVal::add);
62
        return retVal;
63
    }
64
}
(8-8/8)