1 package de.tivsource.page.install;
2
3 import java.io.BufferedReader;
4 import java.io.IOException;
5 import java.io.InputStream;
6 import java.io.InputStreamReader;
7 import java.text.ParseException;
8 import java.text.SimpleDateFormat;
9 import java.util.Date;
10 import java.util.logging.Logger;
11
12 import de.tivsource.page.dao.administration.RoleDaoLocal;
13 import de.tivsource.page.entity.administration.Role;
14
15 public class CreateRole {
16
17 private static final Logger LOGGER = Logger.getLogger("INFO");
18
19 private RoleDaoLocal roleDaoLocal;
20
21 public void setRoleDaoLocal(RoleDaoLocal roleDaoLocal) {
22 this.roleDaoLocal = roleDaoLocal;
23 }
24
25 public void generate() {
26 LOGGER.info("generate() aufgerufen.");
27
28 InputStream inputStream = CreateRole.class
29 .getClassLoader()
30 .getResourceAsStream("csv/role.csv");
31
32 BufferedReader in = new BufferedReader(new InputStreamReader(inputStream));
33
34 try {
35 String line = null;
36 while ((line = in.readLine()) != null) {
37 if (!line.startsWith("[Format Definition]")) {
38 Role role = convert(line);
39 roleDaoLocal.merge(role);
40 }
41 }
42 } catch (IOException e) {
43 e.printStackTrace();
44 }
45
46 }
47
48 private Role convert(String line) {
49
50 String[] items = line.split("\\|");
51
52 Role role = new Role();
53 role.setUuid(items[0]);
54 role.setTechnical(items[1]);
55 role.setCreated(convertDateString(items[2]));
56 role.setModified(convertDateString(items[3]));
57 role.setModifiedBy(items[4]);
58 role.setModifiedAddress(items[5]);
59
60 return role;
61 }
62
63
64
65
66
67
68 private Date convertDateString(String dateString) {
69 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
70 try {
71 return simpleDateFormat.parse(dateString);
72 } catch (ParseException e) {
73 return new Date();
74 }
75 }
76
77 }