Advertisement
Guest User

SeksZdziecmi

a guest
Jul 20th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.03 KB | None | 0 0
  1.  
  2. package altkom.sessionbeans;
  3.  
  4. import altkom.domain.*;
  5. import altkom.PhoneType;
  6. import altkom.domain.CustomerId;
  7. import altkom.domain.*;
  8. import com.sun.xml.internal.ws.api.message.ExceptionHasMessage;
  9. import db.*;
  10.  
  11. import javax.annotation.PostConstruct;
  12. import javax.ejb.EJB;
  13. import javax.ejb.Singleton;
  14. import javax.ejb.Startup;
  15. import javax.ejb.Stateless;
  16. import javax.persistence.*;
  17. import java.math.BigDecimal;
  18. import java.util.*;
  19.  
  20. /**
  21. * Created by user on 19.07.17.
  22. */
  23.  
  24. @Singleton
  25. @Startup
  26. public class StartUpBean {
  27. @PersistenceContext(unitName = "Customers")
  28. EntityManager entityManager;
  29.  
  30. Random random = new Random();
  31. ArrayList<Student> students = new ArrayList<Student>();
  32. ArrayList<Teacher> teachers = new ArrayList<Teacher>();
  33. ArrayList<Gpa> gpas = new ArrayList<Gpa>();
  34. ArrayList<Course> courses = new ArrayList<Course>();
  35.  
  36. @PostConstruct
  37. public void init() {
  38.  
  39. generatTeacherList(5);
  40. generateStudentsList(10);
  41.  
  42.  
  43. }
  44.  
  45. private Set<Teacher> generatTeacherList(int size) {
  46. Set<Teacher> teachersList = new HashSet<Teacher>();
  47.  
  48. for (int i = 0; i < size; i++) {
  49. Teacher teacher = generateTeacher(random.nextInt(5));
  50.  
  51. teachersList.add(teacher);
  52. entityManager.persist(teacher);
  53. }
  54. return teachersList;
  55. }
  56.  
  57. private Teacher generateTeacher(int courses) {
  58. Teacher teacher = new Teacher();
  59. teacher.setCourses(generateCourseListForTeacher(5, teacher));
  60. teacher.setPersonalInfo(generatePersonalInfo());
  61. teachers.add(teacher);
  62. return teacher;
  63. }
  64.  
  65. private Student generateStudent() {
  66. Student student = new Student();
  67. student.setBookNumber(random.nextInt(1000000));
  68. student.setPersonalInfo(generatePersonalInfo());
  69. student.setGpas(generateGpas(random.nextInt(10)));
  70. student.setCourses(generateCourseListForStudent(random.nextInt(5), student));
  71. return student;
  72.  
  73. }
  74.  
  75. private ArrayList<Student> generateStudentsList(int size) {
  76. ArrayList<Student> studentsList = new ArrayList<Student>();
  77. for (int i = 0; i < size; i++) {
  78. Student student = generateStudent();
  79. studentsList.add(student);
  80. students.add(student);
  81. entityManager.persist(student);
  82. }
  83. return studentsList;
  84. }
  85.  
  86. private PersonalInfo generatePersonalInfo() {
  87. PersonalInfo personalInfo = new PersonalInfo();
  88. Date bDate = new Date();
  89. bDate.setYear((random.nextInt(50) + 1950));
  90. personalInfo.setBirthDate(bDate);
  91. personalInfo.setFirstName("Imie" + System.currentTimeMillis());
  92. personalInfo.setLastName("Nazwisko" + System.nanoTime());
  93. personalInfo.setMan(random.nextBoolean());
  94. return personalInfo;
  95. }
  96.  
  97. private Set<Gpa> generateGpas(int pcs) {
  98. Set<Gpa> gpaList = new HashSet<Gpa>();
  99. for (int i = 0; i < Math.abs(pcs); i++) {
  100. Gpa gpa = new Gpa();
  101. BigDecimal avg = new BigDecimal(random.nextDouble() * 3 + 2);
  102. gpa.setGpaValue(avg);
  103. gpa.setYear(random.nextInt(5) + 1);
  104. gpaList.add(gpa);
  105. gpas.add(gpa);
  106. entityManager.persist(gpa);
  107. }
  108. return gpaList;
  109. }
  110.  
  111. private Course generateCourse() {
  112.  
  113. if (random.nextBoolean()) {
  114. Lab course = new Lab();
  115. course.setEndDate(new Date());
  116. course.setName("NazwaKursu" + System.nanoTime());
  117. course.setStartDate(new Date());
  118. course.setOptional(random.nextBoolean());
  119. courses.add(course);
  120. entityManager.persist(course);
  121. return course;
  122. } else {
  123. Lecture course = new Lecture();
  124. course.setEndDate(new Date());
  125. course.setName("NazwaKursu" + System.nanoTime());
  126. course.setStartDate(new Date());
  127. course.setPoints(random.nextInt(10) + 1);
  128. courses.add(course);
  129. entityManager.persist(course);
  130. return course;
  131. }
  132. }
  133.  
  134. private Set<Course> generateCourseList(int size) {
  135. Set<Course> courseList = new HashSet<Course>();
  136. for (int i = 0; i < size; i++) {
  137. Course course = generateCourse();
  138. courseList.add(course);
  139. courses.add(course);
  140. entityManager.persist(course);
  141. throw new ClassCastException();
  142. }
  143. return courseList;
  144. }
  145. private Course getFreeCourse(){
  146. for (Course c:courses
  147. ) {
  148. if(c.getTeacher()==null){
  149. return c;
  150. }
  151. }
  152.  
  153. return generateCourse();
  154. }
  155.  
  156. // private Set<Course> generateCourseListForTeacher(int size, Teacher teacher) {
  157. // Set<Course> courseList = new HashSet<Course>();
  158. // for (int i = 0; i < size; i++) {
  159. // generateCourse();
  160. // Course course = courses.get(random.nextInt(courses.size()));
  161. // course.setTeacher(teacher);
  162. //
  163. // courseList.add(course);
  164. //
  165. //
  166. //
  167. // }
  168. // return courseList;
  169. // }
  170. private Set<Course> generateCourseListForTeacher(int size, Teacher teacher) {
  171. Set<Course> courseList = new HashSet<Course>();
  172. for (int i = 0; i < size; i++) {
  173. generateCourse();
  174. Course course = getFreeCourse();
  175. course.setTeacher(teacher);
  176.  
  177. courseList.add(course);
  178.  
  179.  
  180.  
  181.  
  182.  
  183. }
  184. return courseList;
  185. }
  186.  
  187. private Set<Course> generateCourseListForStudent(int size, Student student) {
  188. Set<Course> courseList = new HashSet<Course>();
  189. for (int i = 0; i < size; i++) {
  190. Course course = courses.get(random.nextInt(courses.size()));
  191. Set<Student> studentsTemp = course.getStudents();
  192. studentsTemp.add(student);
  193. course.setStudents(studentsTemp);
  194. courseList.add(course);
  195.  
  196. }
  197. return courseList;
  198. }
  199. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement