01: package org.theospi.portfolio.warehouse.sakai.user;
02:
03: import org.sakaiproject.db.api.SqlReader;
04: import org.sakaiproject.db.api.SqlService;
05: import org.sakaiproject.time.api.TimeService;
06: import org.theospi.portfolio.warehouse.impl.BaseWarehouseTask;
07: import org.theospi.portfolio.warehouse.model.UserBean;
08:
09: import java.sql.ResultSet;
10: import java.sql.SQLException;
11: import java.util.Collection;
12: import java.util.List;
13:
14: /**
15: * Created by IntelliJ IDEA.
16: * User: John Ellis
17: * Date: Dec 19, 2005
18: * Time: 12:38:18 PM
19: * To change this template use File | Settings | File Templates.
20: */
21: public class UserWarehouseTask extends BaseWarehouseTask {
22:
23: private SqlService sqlService;
24: private TimeService timeService;
25:
26: protected Collection getItems() {
27:
28: // check the db
29: String statement = "Select a.USER_ID, b.EID, a.EMAIL, a.EMAIL_LC, a.FIRST_NAME, a.LAST_NAME, a.TYPE from SAKAI_USER a, SAKAI_USER_ID_MAP b where a.USER_ID=b.USER_ID";
30:
31: List users = sqlService.dbRead(statement, null,
32: new SqlReader() {
33: public Object readSqlResultRecord(ResultSet result) {
34: try {
35:
36: String userId = result.getString(1);
37: String userEid = result.getString(2);
38: String email = result.getString(3);
39: String emailLc = result.getString(4);
40: String firstName = result.getString(5);
41: String lastName = result.getString(6);
42: String type = result.getString(7);
43:
44: UserBean user = new UserBean(userId,
45: userEid, email, emailLc, firstName,
46: lastName, type);
47: return user;
48: } catch (SQLException ignore) {
49: return null;
50: }
51: }
52: });
53:
54: return users;
55: }
56:
57: public SqlService getSqlService() {
58: return sqlService;
59: }
60:
61: public void setSqlService(SqlService sqlService) {
62: this .sqlService = sqlService;
63: }
64:
65: public TimeService getTimeService() {
66: return timeService;
67: }
68:
69: public void setTimeService(TimeService timeService) {
70: this.timeService = timeService;
71: }
72: }
|