1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 package net.sf.pmr.core.service;
37
38 import java.util.List;
39
40 import net.sf.pmr.core.CoreObjectFactory;
41 import net.sf.pmr.core.domain.user.User;
42 import net.sf.pmr.core.domain.user.UserRepository;
43 import net.sf.pmr.core.domain.user.company.CompanyRepository;
44 import net.sf.pmr.keopsframework.domain.validation.Errors;
45 import net.sf.pmr.keopsframework.domain.validation.Validator;
46
47 /***
48 * @author Arnaud Prost (arnaud.prost@gmail.com)
49 */
50 public class UserServiceImpl implements UserService {
51
52 /***
53 * User repository
54 */
55 private UserRepository userRepository;
56
57 /***
58 * user validator
59 */
60 private Validator userValidator;
61
62 /***
63 * Company repository
64 */
65 private CompanyRepository companyRepository;
66
67 /***
68 * company validator
69 */
70 private Validator companyValidator;
71
72 /***
73 * Constructor
74 * @param userRepository userRepository
75 * @param userValidator userValidator
76 * @param companyRepository companyRepository
77 * @param companyValidator companyValidator
78 */
79 public UserServiceImpl(final UserRepository userRepository,
80 final Validator userValidator, final CompanyRepository companyRepository) {
81 super();
82 this.userRepository = userRepository;
83 this.userValidator = userValidator;
84 this.companyRepository = companyRepository;
85 }
86
87 /***
88 * @see net.sf.pmr.core.service.UserService#update(int, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, long)
89 */
90 public Errors addOrUpdate(final int id, final String firstName, final String lastName,
91 final String login, final String password, final String email, final long persistanceVersion) {
92
93
94 User user = CoreObjectFactory.getUser();
95
96
97 user.setPersistanceId(id);
98 user.setFirstName(firstName);
99 user.setLastName(lastName);
100 user.setLogin(login);
101 user.setPassword(password);
102 user.setEmail(email);
103 user.setPersistanceVersion(persistanceVersion);
104
105
106 Errors errors = userValidator.validate(user);
107
108 if (!errors.hasErrors()) {
109
110
111 userRepository.addOrUpdate(user);
112 }
113
114 return errors;
115
116 }
117
118 /***
119 * @see net.sf.pmr.core.service.UserService#findById(java.lang.Integer)
120 */
121 public User findById(int id) {
122 return userRepository.findUserById(id);
123 }
124
125 /***
126 * @see net.sf.pmr.core.service.UserService#findByLogin(java.lang.String)
127 */
128 public User findByLogin(String login) {
129 return userRepository.findUserByLogin(login);
130 }
131
132
133 /***
134 * @see net.sf.pmr.core.service.UserService#findAll()
135 */
136 public List findAll() {
137 return userRepository.findAll();
138 }
139
140
141 /***
142 * @see net.sf.pmr.core.service.UserService#countAll()
143 */
144 public Integer countAll() {
145 return userRepository.countAll();
146 }
147
148 /***
149 * @see net.sf.pmr.core.service.UserService#delete(java.lang.Integer)
150 */
151 public Errors delete(Integer id) {
152
153 return null;
154 }
155 }