Project

General

Profile

Download (3.49 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
 * Copyright (C) 2007 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

    
10
package eu.etaxonomy.cdm.api.service.config;
11

    
12
import java.util.List;
13

    
14
import org.hibernate.criterion.Criterion;
15

    
16
import eu.etaxonomy.cdm.model.common.IIdentifiableEntity;
17
import eu.etaxonomy.cdm.persistence.dao.common.Restriction;
18
import eu.etaxonomy.cdm.persistence.query.MatchMode;
19
import eu.etaxonomy.cdm.persistence.query.OrderHint;
20

    
21
/**
22
 * @author a.babadshanjan
23
 * @author n.hoffmann
24
 * @since 03.03.2009
25
 */
26
public class IdentifiableServiceConfiguratorImpl<T extends IIdentifiableEntity>
27
            implements IIdentifiableEntityServiceConfigurator<T>{
28

    
29
    private static final long serialVersionUID = -8126736101861741087L;
30

    
31
    private String titleSearchString;
32
	protected MatchMode matchMode;
33
	private Integer pageSize;
34
	private Integer pageNumber;
35
	private Class<? extends T> clazz;
36
    private List<Criterion> criteria;
37
	private List<Restriction<?>> restrictions;
38
	private List<String> propertyPaths;
39
	private List<OrderHint> orderHints;
40

    
41
	@Override
42
	public Class<T> getClazz() {
43
		return (Class)clazz;
44
	}
45

    
46
	@Override
47
	public void setClazz(Class<? extends T> clazz) {
48
		this.clazz = clazz;
49
	}
50

    
51
	@Override
52
    public String getTitleSearchString() {
53
		return titleSearchString;
54
	}
55

    
56
	@Override
57
    public String getTitleSearchStringSqlized(){
58
	    return getTitleSearchString() == null ? null : getTitleSearchString().replace("*", "%");
59
	}
60

    
61
	@Override
62
    public void setTitleSearchString(String titleSearchString) {
63
		this.titleSearchString = titleSearchString;
64
	}
65

    
66
	/**
67
	 * @return the pageSize
68
	 */
69
	@Override
70
    public Integer getPageSize() {
71
		return pageSize;
72
	}
73

    
74
	/**
75
	 * Sets the number of results that should be shown on current page
76
	 *
77
	 * @param pageSize the pageSize to set
78
	 */
79
	@Override
80
    public void setPageSize(Integer pageSize) {
81
		this.pageSize = pageSize;
82
	}
83

    
84
	/**
85
	 * @return the pageNumber
86
	 */
87
	@Override
88
    public Integer getPageNumber() {
89
		return pageNumber;
90
	}
91

    
92
	/**
93
	 * Sets the number of the page the first result should come from, starting
94
	 * with 0 as the first page.
95
	 *
96
	 * @param pageNumber the pageNumber to set
97
	 */
98
	@Override
99
    public void setPageNumber(Integer pageNumber) {
100
		this.pageNumber = pageNumber;
101
	}
102

    
103
	@Override
104
    public MatchMode getMatchMode() {
105
		return matchMode;
106
	}
107

    
108
	@Override
109
    public void setMatchMode(MatchMode matchMode) {
110
		this.matchMode = matchMode;
111
	}
112

    
113
   @Override
114
    public List<Criterion> getCriteria() {
115
        return criteria;
116
    }
117

    
118
    @Override
119
    public void setCriteria(List<Criterion> criteria) {
120
        this.criteria = criteria;
121
    }
122

    
123

    
124
    @Override
125
    public List<Restriction<?>> getRestrictions() {
126
        return restrictions;
127
    }
128

    
129
    @Override
130
    public void setRestrictions(List<Restriction<?>> restrictions) {
131
        this.restrictions = restrictions;
132
    }
133

    
134
    @Override
135
	public List<OrderHint> getOrderHints() {
136
		return orderHints;
137
	}
138

    
139
	@Override
140
	public void setOrderHints(List<OrderHint> orderHints) {
141
		this.orderHints = orderHints;
142
	}
143

    
144
	@Override
145
	public List<String> getPropertyPaths() {
146
		return propertyPaths;
147
	}
148

    
149
	@Override
150
	public void setPropertyPaths(List<String> propertyPaths) {
151
		this.propertyPaths = propertyPaths;
152
	}
153
}
(11-11/30)