From 235e9558ee3a8658e1394101c380debe3e4bd538 Mon Sep 17 00:00:00 2001 From: ulrich Date: Sat, 19 Jun 2021 07:34:00 +0000 Subject: [PATCH] Link zur Produktseite in Readme aufgenommen --- src/de/uhilger/httpserver/auth/realm/SimpleRealm.java | 44 +++++++++++++++++++++++++++++++++++++++----- 1 files changed, 39 insertions(+), 5 deletions(-) diff --git a/src/de/uhilger/httpserver/auth/realm/SimpleRealm.java b/src/de/uhilger/httpserver/auth/realm/SimpleRealm.java index 3951361..e8cea3e 100644 --- a/src/de/uhilger/httpserver/auth/realm/SimpleRealm.java +++ b/src/de/uhilger/httpserver/auth/realm/SimpleRealm.java @@ -38,7 +38,7 @@ * ulrich=ulrich,testRolle,andereRolle * * Der erste Eintrag nach dem Gleichheitszeichen ist das Passwort, die restlichen - * Eintrage sind Rollen. + * Eintraege sind Rollen. * * @author Ulrich Hilger * @version 1, 03.06.2021 @@ -55,15 +55,27 @@ private final Map<String, User> users; private final Map<String, List> userRoles; + /** + * Ein neues Objekt der Klasse SimpleRealm erzeugen + */ public SimpleRealm() { users = new HashMap<>(); userRoles = new HashMap<>(); } + /** + * Den Namen dieses Realm festlegen + * @param name Name des Realms + */ public void setName(String name) { this.name = name; } + /** + * Nutzerinformationen aus einer Datei lesen + * @param file die Datei mit Nutzerinformationen + * @throws IOException + */ public void readFromFile(File file) throws IOException { BufferedReader r = new BufferedReader(new FileReader(file)); String line = r.readLine(); @@ -74,6 +86,10 @@ r.close(); } + /** + * Eine Zeile aus der Datei mit Nutzerinformationen verarbeiten + * @param line die Zeile, die verarbeitet werden soll + */ private void parse(String line) { if(!line.startsWith(COMMENT_INDICATOR)) { String[] teile = line.split(LIST_INDICATOR); @@ -100,28 +116,46 @@ /* ------------ Realm implementation -------------- */ + /** + * Uberpruefen, ob die Benutzerkennung und das Kennwort gueltig sind. + * + * @param userId der Benutzer + * @param password das Kennwort des Benutzers + * @return true, wenn die Angaben stimmen, false wenn nicht + */ @Override - public boolean isValid(String userId, String kennwort) { + public boolean isValid(String userId, String password) { Object o = users.get(userId); if(o instanceof User) { User user = (User) o; - return user.getPassword().equals(kennwort); + return user.getPassword().equals(password); } else { return false; } } + /** + * Pruefen, ob ein Benutzer eine Rolle hat + * + * @param userId der Benutzer + * @param roleId die Kennung der Rolle + * @return true, wenn der Benutzer die Rolle hat, false wenn nicht + */ @Override - public boolean hasRole(String userId, String rollenId) { + public boolean hasRole(String userId, String roleId) { Object o = userRoles.get(userId); if(o instanceof List) { List roles = (List) o; - return roles.contains(rollenId); + return roles.contains(roleId); } else { return false; } } + /** + * Den Namen dieses Realms ermitteln + * @return Name des Realms + */ @Override public String getName() { return name; -- Gitblit v1.9.3