You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ComplexPerson.java 3.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. package com.vaadin.tests.fieldgroup;
  2. import java.math.BigDecimal;
  3. import java.util.ArrayList;
  4. import java.util.Date;
  5. import java.util.List;
  6. import java.util.Random;
  7. import com.vaadin.data.provider.DataProvider;
  8. import com.vaadin.data.provider.ListDataProvider;
  9. import com.vaadin.tests.util.TestDataGenerator;
  10. import com.vaadin.v7.data.util.BeanItemContainer;
  11. public class ComplexPerson {
  12. private String firstName, lastName;
  13. private Integer age;
  14. private Date birthDate;
  15. private BigDecimal salary;
  16. private boolean alive;
  17. private Gender gender;
  18. private ComplexAddress address;
  19. public String getFirstName() {
  20. return firstName;
  21. }
  22. public void setFirstName(String firstName) {
  23. this.firstName = firstName;
  24. }
  25. public void setLastName(String firstName) {
  26. this.firstName = firstName;
  27. }
  28. public String getLastName() {
  29. return lastName;
  30. }
  31. public Integer getAge() {
  32. return age;
  33. }
  34. public void setAge(Integer age) {
  35. this.age = age;
  36. }
  37. public Date getBirthDate() {
  38. return birthDate;
  39. }
  40. public void setBirthDate(Date birthDate) {
  41. this.birthDate = birthDate;
  42. }
  43. public BigDecimal getSalary() {
  44. return salary;
  45. }
  46. public void setSalary(BigDecimal salary) {
  47. this.salary = salary;
  48. }
  49. public boolean isAlive() {
  50. return alive;
  51. }
  52. public void setAlive(boolean alive) {
  53. this.alive = alive;
  54. }
  55. public Gender getGender() {
  56. return gender;
  57. }
  58. public void setGender(Gender gender) {
  59. this.gender = gender;
  60. }
  61. public ComplexAddress getAddress() {
  62. return address;
  63. }
  64. public void setAddress(ComplexAddress address) {
  65. this.address = address;
  66. }
  67. public static BeanItemContainer<ComplexPerson> createContainer(int size) {
  68. BeanItemContainer<ComplexPerson> bic = new BeanItemContainer<>(
  69. ComplexPerson.class);
  70. Random r = new Random(size);
  71. for (int i = 0; i < size; i++) {
  72. ComplexPerson cp = ComplexPerson.create(r);
  73. bic.addBean(cp);
  74. }
  75. return bic;
  76. }
  77. public static ListDataProvider<ComplexPerson> createDataProvider(int size) {
  78. List<ComplexPerson> list = new ArrayList<>();
  79. Random r = new Random(size);
  80. for (int i = 0; i < size; i++) {
  81. ComplexPerson cp = ComplexPerson.create(r);
  82. list.add(cp);
  83. }
  84. return DataProvider.ofCollection(list);
  85. }
  86. public static ComplexPerson create(Random r) {
  87. ComplexPerson cp = new ComplexPerson();
  88. cp.setFirstName(TestDataGenerator.getFirstName(r));
  89. cp.lastName = TestDataGenerator.getLastName(r);
  90. cp.setAlive(r.nextBoolean());
  91. cp.setBirthDate(TestDataGenerator.getBirthDate(r));
  92. cp.setAge((int) ((new Date(2014 - 1900, 1, 1).getTime()
  93. - cp.getBirthDate().getTime()) / 1000 / 3600 / 24 / 365));
  94. cp.setSalary(TestDataGenerator.getSalary(r));
  95. cp.setAddress(ComplexAddress.create(r));
  96. cp.setGender(TestDataGenerator.getEnum(Gender.class, r));
  97. return cp;
  98. }
  99. }