Project

General

Profile

Download (3.83 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
 * Copyright (C) 2009 EDIT
3
 * European Distributed Institute of Taxonomy
4
 * http://www.e-taxonomy.eu
5
 *
6
 * The contents of this file are subject to the Mozilla Public License Version 1.1
7
 * See LICENSE.TXT at the top of this package for the full license terms.
8
 */
9
package eu.etaxonomy.cdm.persistence.dao.hibernate.validation;
10

    
11
import java.util.List;
12

    
13
import org.apache.log4j.Logger;
14
import org.hibernate.Query;
15
import org.springframework.beans.factory.annotation.Qualifier;
16
import org.springframework.stereotype.Repository;
17

    
18
import eu.etaxonomy.cdm.model.validation.EntityConstraintViolation;
19
import eu.etaxonomy.cdm.model.validation.Severity;
20
import eu.etaxonomy.cdm.persistence.dao.hibernate.common.CdmEntityDaoBase;
21
import eu.etaxonomy.cdm.persistence.dao.validation.IEntityConstraintViolationDao;
22

    
23
/**
24
 *
25
 * @author ayco_holleman
26
 \* @since 15 jan. 2015
27
 *
28
 */
29
@Repository
30
@Qualifier("entityConstraintViolationHibernateImpl")
31
public class EntityConstraintViolationHibernateImpl extends CdmEntityDaoBase<EntityConstraintViolation> implements
32
        IEntityConstraintViolationDao {
33

    
34
    @SuppressWarnings("unused")
35
    private static final Logger logger = Logger.getLogger(EntityConstraintViolationHibernateImpl.class);
36

    
37
    public EntityConstraintViolationHibernateImpl() {
38
        super(EntityConstraintViolation.class);
39
    }
40

    
41
    @Override
42
    public List<EntityConstraintViolation> getConstraintViolations() {
43
        // @formatter:off
44
        Query query = getSession().createQuery(
45
                "FROM EntityConstraintViolation cv " + "JOIN FETCH cv.entityValidation ev "
46
                        + "ORDER BY ev.validatedEntityClass, ev.validatedEntityId");
47
        // @formatter:on
48
        @SuppressWarnings("unchecked")
49
        List<EntityConstraintViolation> result = query.list();
50
        return result;
51
    }
52

    
53
    @Override
54
    public List<EntityConstraintViolation> getConstraintViolations(String validatedEntityClass) {
55
        // @formatter:off
56
        Query query = getSession().createQuery(
57
                "FROM EntityConstraintViolation cv " + "JOIN FETCH cv.entityValidation ev "
58
                        + "WHERE ev.validatedEntityClass = :cls "
59
                        + "ORDER BY ev.validatedEntityClass, ev.validatedEntityId");
60
        // @formatter:on
61
        query.setString("cls", validatedEntityClass);
62
        @SuppressWarnings("unchecked")
63
        List<EntityConstraintViolation> result = query.list();
64
        return result;
65
    }
66

    
67
    @Override
68
    public List<EntityConstraintViolation> getConstraintViolations(String validatedEntityClass, Severity severity) {
69
        // @formatter:off
70
        Query query = getSession().createQuery(
71
                "FROM EntityConstraintViolation cv " + "JOIN FETCH cv.entityValidation ev "
72
                        + "WHERE ev.validatedEntityClass = :cls " + "AND cv.severity = :severity "
73
                        + "ORDER BY ev.validatedEntityClass, ev.validatedEntityId");
74
        // @formatter:on
75
        query.setString("cls", validatedEntityClass);
76
        query.setString("severity", severity.toString());
77
        @SuppressWarnings("unchecked")
78
        List<EntityConstraintViolation> result = query.list();
79
        return result;
80
    }
81

    
82
    @Override
83
    public List<EntityConstraintViolation> getConstraintViolations(Severity severity) {
84
        // @formatter:off
85
        Query query = getSession().createQuery(
86
                "FROM EntityConstraintViolation cv " + "JOIN FETCH cv.entityValidation ev "
87
                        + "WHERE cv.severity = :severity " + "ORDER BY ev.validatedEntityClass, ev.validatedEntityId");
88
        // @formatter:on
89
        query.setString("severity", severity.toString());
90
        @SuppressWarnings("unchecked")
91
        List<EntityConstraintViolation> result = query.list();
92
        return result;
93
    }
94

    
95
}
(1-1/2)