LS03-04-1: implement UserController
This commit is contained in:
@@ -3,6 +3,7 @@ package de.oszimt.ls.aliendefence.controller;
|
||||
import de.oszimt.ls.aliendefence.model.Level;
|
||||
import de.oszimt.ls.aliendefence.model.persistence.IPersistance;
|
||||
import de.oszimt.ls.aliendefence.model.User;
|
||||
import de.oszimt.ls.aliendefence.model.persistence.IUserPersistance;
|
||||
|
||||
public class AlienDefenceController {
|
||||
|
||||
@@ -11,23 +12,30 @@ public class AlienDefenceController {
|
||||
private LevelController levelController;
|
||||
private TargetController targetController;
|
||||
private AttemptController attemptController;
|
||||
//TODO UserController implementieren
|
||||
private UserController userController;
|
||||
|
||||
//Persistenz
|
||||
private IPersistance alienDefenceModel;
|
||||
private IUserPersistance userModel;
|
||||
|
||||
public AlienDefenceController(IPersistance alienDefenceModel) {
|
||||
public AlienDefenceController(IPersistance alienDefenceModel, IUserPersistance userModel) {
|
||||
super();
|
||||
this.alienDefenceModel = alienDefenceModel;
|
||||
this.userModel = userModel;
|
||||
this.attemptController = new AttemptController(alienDefenceModel);
|
||||
this.levelController = new LevelController(alienDefenceModel);
|
||||
this.targetController = new TargetController(alienDefenceModel);
|
||||
this.userController = new UserController(userModel);
|
||||
}
|
||||
|
||||
public IPersistance getAlienDefenceModel() {
|
||||
return alienDefenceModel;
|
||||
}
|
||||
|
||||
public IUserPersistance getUserModel() {
|
||||
return userModel;
|
||||
}
|
||||
|
||||
public AttemptController getAttemptController() {
|
||||
return attemptController;
|
||||
}
|
||||
@@ -40,6 +48,10 @@ public class AlienDefenceController {
|
||||
return targetController;
|
||||
}
|
||||
|
||||
public UserController getUserController() {
|
||||
return userController;
|
||||
}
|
||||
|
||||
public GameController startGame(Level selectedLevel, User user) {
|
||||
this.gameController = new GameController(selectedLevel, user, this);
|
||||
return this.gameController;
|
||||
|
||||
@@ -5,8 +5,7 @@ import de.oszimt.ls.aliendefence.model.persistence.IUserPersistance;
|
||||
|
||||
/**
|
||||
* de.oszimt.ls.aliendefence.controller for users
|
||||
* @author Clara Zufall
|
||||
* TODO implement this class
|
||||
* @author Joel Baldauf
|
||||
*/
|
||||
public class UserController {
|
||||
|
||||
@@ -15,9 +14,14 @@ public class UserController {
|
||||
public UserController(IUserPersistance userPersistance) {
|
||||
this.userPersistance = userPersistance;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* erstellt einen User in der Persistenzschicht
|
||||
* @param user Das zu erstellende Userobjekt
|
||||
*
|
||||
*/
|
||||
public void createUser(User user) {
|
||||
|
||||
this.userPersistance.createUser(user);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -26,19 +30,36 @@ public class UserController {
|
||||
* @param passwort das richtige Passwort
|
||||
* @return Userobjekt, null wenn der User nicht existiert
|
||||
*/
|
||||
|
||||
public User readUser(String username, String passwort) {
|
||||
return null;
|
||||
if (checkPassword(username, passwort)) return this.userPersistance.readUser(username);
|
||||
else return null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* verändert einen User in der Persistenzschicht
|
||||
* @param user zu aktualisierender User
|
||||
*
|
||||
*/
|
||||
public void changeUser(User user) {
|
||||
|
||||
this.userPersistance.updateUser(user);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* löscht einen User in der Persistenzschicht
|
||||
* @param user zu löschender User
|
||||
*
|
||||
*/
|
||||
public void deleteUser(User user) {
|
||||
|
||||
this.userPersistance.deleteUser(user);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* überprüft, ob das Passwort eines Benutzers richtig ist
|
||||
* @param username zu prüfender Nutzername
|
||||
* @param passwort zu prüfendes Passwort
|
||||
*/
|
||||
public boolean checkPassword(String username, String passwort) {
|
||||
return false;
|
||||
return this.userPersistance.readUser(username).getPassword().equals(passwort);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,5 +5,7 @@ import de.oszimt.ls.aliendefence.model.User;
|
||||
public interface IUserPersistance {
|
||||
|
||||
User readUser(String username);
|
||||
|
||||
int createUser(User user);
|
||||
void updateUser(User user);
|
||||
void deleteUser(User user);
|
||||
}
|
||||
@@ -2,7 +2,10 @@ package de.oszimt.ls.aliendefence.view;
|
||||
|
||||
import de.oszimt.ls.aliendefence.controller.AlienDefenceController;
|
||||
import de.oszimt.ls.aliendefence.model.persistence.IPersistance;
|
||||
import de.oszimt.ls.aliendefence.model.persistence.IUserPersistance;
|
||||
import de.oszimt.ls.aliendefence.model.persistenceDB.UserDB;
|
||||
import de.oszimt.ls.aliendefence.model.persistenceDummy.PersistanceDummy;
|
||||
import de.oszimt.ls.aliendefence.model.persistenceDummy.UserDummy;
|
||||
import de.oszimt.ls.aliendefence.view.menue.MainMenu;
|
||||
|
||||
public class StartAlienDefence {
|
||||
@@ -10,7 +13,8 @@ public class StartAlienDefence {
|
||||
public static void main(String[] args) {
|
||||
|
||||
IPersistance alienDefenceModel = new PersistanceDummy();//TODO new PersistanceDB();
|
||||
AlienDefenceController alienDefenceController = new AlienDefenceController(alienDefenceModel);
|
||||
IUserPersistance userModel = new UserDummy();
|
||||
AlienDefenceController alienDefenceController = new AlienDefenceController(alienDefenceModel, userModel);
|
||||
MainMenu.show(alienDefenceController);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user