Guest User

Untitled

a guest
Dec 10th, 2017
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.38 KB | None | 0 0
  1. package beans;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.DataInputStream;
  5. import java.io.File;
  6. import java.io.FileInputStream;
  7. import java.io.FileOutputStream;
  8. import java.io.FileReader;
  9. import java.io.FileWriter;
  10. import java.io.IOException;
  11. import java.io.InputStreamReader;
  12. import java.io.ObjectInputStream;
  13. import java.io.ObjectOutputStream;
  14. import java.io.OutputStreamWriter;
  15. import java.io.PrintWriter;
  16. import java.text.DateFormat;
  17. import java.text.SimpleDateFormat;
  18. import java.util.ArrayList;
  19. import java.util.Date;
  20.  
  21. import domein.User;
  22.  
  23. public class LoginBean {
  24. String username = "";
  25. String password = "";
  26.  
  27. String lastLogin = "";
  28. String errormessage = "";
  29.  
  30. String path = "C:/Users/Erik Blanken/Documents/School/HU/Jaar 2/Blok 4/Gedistribueerde Softwaresystemen/GDSO Works/Opdracht2_3/src/beans/users.txt";
  31. ArrayList<User> users = new ArrayList<User>();
  32.  
  33. public void fillUserArray(){
  34. try{
  35. users.clear();
  36.  
  37. FileInputStream fis = new FileInputStream(path);
  38. DataInputStream in = new DataInputStream(fis);
  39. BufferedReader br = new BufferedReader(new InputStreamReader(in));
  40.  
  41. String strLine;
  42. while((strLine = br.readLine()) != null){
  43.  
  44. User u;
  45.  
  46. String[] user = strLine.split("::");
  47. String uName = user[0];
  48. String uPass = user[1];
  49. if(user.length > 2){
  50. DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm");
  51. String uLastLogin = user[2];
  52. Date dateLastLogin = df.parse(uLastLogin);
  53. u = new User(uName, uPass, dateLastLogin);
  54. }
  55. else{
  56. u = new User(uName, uPass);
  57. }
  58. users.add(u);
  59. }
  60.  
  61. }
  62. catch(Exception e){
  63. System.out.println(e.getMessage());
  64. }
  65. }
  66.  
  67. public boolean checkUser(String uname, String pword) {
  68.  
  69. fillUserArray();
  70.  
  71. for(User u : users){
  72. if(u.getUsername().equals(uname) && u.getPassword().equals(pword)){
  73. this.password = u.getPassword();
  74. this.username = u.getUsername();
  75. if(u.getLastLogin() != null){this.lastLogin = "Laatste keer ingelogd: " + u.getLastLogin().toString();}
  76. else{this.lastLogin = "Dit is de eerste keer dat u ingelogd bent";}
  77.  
  78. u.setLastLogin(new Date());
  79. this.reloadUsers();
  80.  
  81. return true;
  82. }
  83.  
  84. else{
  85. this.errormessage = "User information is not correct ";
  86. }
  87. }
  88.  
  89. return false;
  90. }
  91.  
  92. public void reloadUsers() {
  93. try{
  94.  
  95. PrintWriter pw = new PrintWriter(new FileWriter(path));
  96. for(User u : this.users){
  97. String userString = "";
  98. String uName = u.getUsername();
  99. String pass = u.getPassword();
  100.  
  101. DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm");
  102. String date = df.format(u.getLastLogin());
  103.  
  104. userString = uName + "::" + pass + "::" + date;
  105.  
  106. pw.println(userString);
  107.  
  108. }
  109.  
  110. pw.close();
  111. }
  112. catch(Exception e){System.out.println(e.getMessage());}
  113.  
  114. }
  115.  
  116.  
  117.  
  118. public void setUsername(String username) {
  119. this.username = username;
  120. }
  121.  
  122. public void setPassword(String password) {
  123. this.password = password;
  124. }
  125.  
  126. public void setErrormessage(String errormessage) {
  127. this.errormessage = errormessage;
  128. }
  129.  
  130. public String getUsername() {
  131. return username;
  132. }
  133.  
  134. public String getPassword() {
  135. return password;
  136. }
  137.  
  138. public String getErrormessage() {
  139. return errormessage;
  140. }
  141.  
  142. public String getLastLogin(){
  143. return this.lastLogin;
  144. }
  145. }
Add Comment
Please, Sign In to add comment