From: Felix Dörre Date: Tue, 23 Aug 2016 22:20:31 +0000 (+0200) Subject: upd: remove linear search in GroupSelector X-Git-Url: https://code.wpia.club/?p=gigi.git;a=commitdiff_plain;h=86f867be927ea8deaeb0fdae8842d95eefaf39ac upd: remove linear search in GroupSelector Change-Id: I8f25674d4c9f953cf049c9ab86210450c7f232fb --- diff --git a/src/org/cacert/gigi/output/GroupSelector.java b/src/org/cacert/gigi/output/GroupSelector.java index 4452a09d..49db7050 100644 --- a/src/org/cacert/gigi/output/GroupSelector.java +++ b/src/org/cacert/gigi/output/GroupSelector.java @@ -26,13 +26,12 @@ public class GroupSelector implements Outputable { public void update(HttpServletRequest r) throws GigiApiException { String vS = r.getParameter(name); - value = null; - for (Group g : Group.values()) { - if (g.getDatabaseName().equals(vS) && mayManage(g)) { - value = g; - } + if (vS == null) { + throw new GigiApiException("No value for group."); } - if (value == null) { + try { + value = Group.getByString(vS); + } catch (IllegalArgumentException e) { throw new GigiApiException("Invalid value for group."); } }