1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package com.zipcodewilmington.generic.identifiables;
  2. import java.io.Serializable;
  3. import java.nio.charset.Charset;
  4. import java.util.Random;
  5. /**
  6. * @author leon on 05/12/2018.
  7. */
  8. public class Person implements IdentifiableInterface<String> {
  9. String id;
  10. public Person() {
  11. this.id = randomString();
  12. }
  13. private String randomString(){
  14. byte[] array = new byte[7]; // length is bounded by 7
  15. new Random().nextBytes(array);
  16. String generatedString = new String(array, Charset.forName("UTF-8"));
  17. return generatedString;
  18. }
  19. @Override
  20. public String getIdentity() {
  21. return id;
  22. }
  23. public Class getIdentityType() {
  24. System.out.println(id.getClass());
  25. return id.getClass();
  26. }
  27. @Override
  28. public void setId(String id) {
  29. this.id = id;
  30. }
  31. }