From: Felix Dörre Date: Thu, 4 Sep 2014 17:53:34 +0000 (+0200) Subject: UPD: tighten Up the constructors of "User" and "Domain" X-Git-Url: https://code.wpia.club/?p=gigi.git;a=commitdiff_plain;h=1080b258a15e784ebad30be6f9e20df0de7c5938 UPD: tighten Up the constructors of "User" and "Domain" --- diff --git a/src/org/cacert/gigi/dbObjects/Domain.java b/src/org/cacert/gigi/dbObjects/Domain.java index 056af154..8e575038 100644 --- a/src/org/cacert/gigi/dbObjects/Domain.java +++ b/src/org/cacert/gigi/dbObjects/Domain.java @@ -15,7 +15,7 @@ public class Domain implements IdCachable { private int id; - public Domain(int id) throws SQLException { + private Domain(int id) throws SQLException { PreparedStatement ps = DatabaseConnection.getInstance().prepare("SELECT memid, domain FROM `domains` WHERE id=? AND deleted IS NULL"); ps.setInt(1, id); diff --git a/src/org/cacert/gigi/dbObjects/User.java b/src/org/cacert/gigi/dbObjects/User.java index 9166b044..2d8cd96f 100644 --- a/src/org/cacert/gigi/dbObjects/User.java +++ b/src/org/cacert/gigi/dbObjects/User.java @@ -28,7 +28,7 @@ public class User implements IdCachable { private Locale locale; - public User(int id) { + private User(int id) { this.id = id; updateName(id); } diff --git a/src/org/cacert/gigi/pages/LoginPage.java b/src/org/cacert/gigi/pages/LoginPage.java index 2ece38d6..0a498c58 100644 --- a/src/org/cacert/gigi/pages/LoginPage.java +++ b/src/org/cacert/gigi/pages/LoginPage.java @@ -72,7 +72,7 @@ public class LoginPage extends Page { ResultSet rs = ps.executeQuery(); if (rs.next()) { if (PasswordHash.verifyHash(pw, rs.getString(1))) { - loginSession(req, new User(rs.getInt(2))); + loginSession(req, User.getById(rs.getInt(2))); } } rs.close(); @@ -92,7 +92,7 @@ public class LoginPage extends Page { ps.setString(1, serial); ResultSet rs = ps.executeQuery(); if (rs.next()) { - loginSession(req, new User(rs.getInt(1))); + loginSession(req, User.getById(rs.getInt(1))); } rs.close(); } catch (SQLException e) { diff --git a/src/org/cacert/gigi/pages/wot/AssuranceForm.java b/src/org/cacert/gigi/pages/wot/AssuranceForm.java index 3020390d..81743c90 100644 --- a/src/org/cacert/gigi/pages/wot/AssuranceForm.java +++ b/src/org/cacert/gigi/pages/wot/AssuranceForm.java @@ -31,9 +31,9 @@ public class AssuranceForm extends Form { templ = new Template(AssuranceForm.class.getResource("AssuranceForm.templ")); } - public AssuranceForm(HttpServletRequest hsr, int assuree) { + public AssuranceForm(HttpServletRequest hsr, User assuree) { super(hsr); - this.assuree = new User(assuree); + this.assuree = assuree; assureeName = this.assuree.getName(); dob = this.assuree.getDob(); } diff --git a/src/org/cacert/gigi/pages/wot/AssurePage.java b/src/org/cacert/gigi/pages/wot/AssurePage.java index f87afd07..e1822e3b 100644 --- a/src/org/cacert/gigi/pages/wot/AssurePage.java +++ b/src/org/cacert/gigi/pages/wot/AssurePage.java @@ -98,7 +98,7 @@ public class AssurePage extends Page { } else if (getUser(req).getId() == id) { } else { - AssuranceForm form = new AssuranceForm(req, id); + AssuranceForm form = new AssuranceForm(req, User.getById(id)); outputForm(req, out, form); } } diff --git a/tests/org/cacert/gigi/TestLanguage.java b/tests/org/cacert/gigi/TestLanguage.java index d73f1fa2..1a97fc3c 100644 --- a/tests/org/cacert/gigi/TestLanguage.java +++ b/tests/org/cacert/gigi/TestLanguage.java @@ -19,35 +19,35 @@ public class TestLanguage extends ManagedTest { @Test public void testSignupNoLanguage() { - User u = new User(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); + User u = User.getById(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); assertEquals(Locale.ENGLISH, u.getPreferredLocale()); } @Test public void testSignupDE() { setAcceptLanguage("de"); - User u = new User(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); + User u = User.getById(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); assertEquals(Locale.GERMAN, u.getPreferredLocale()); } @Test public void testSignupMulti() { setAcceptLanguage("de,en"); - User u = new User(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); + User u = User.getById(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); assertEquals(Locale.GERMAN, u.getPreferredLocale()); } @Test public void testSignupFallback() { setAcceptLanguage("ma,de"); - User u = new User(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); + User u = User.getById(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); assertEquals(Locale.GERMAN, u.getPreferredLocale()); } @Test public void testSignupProjection() { setAcceptLanguage("de-de,en"); - User u = new User(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); + User u = User.getById(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); assertEquals(Locale.GERMAN, u.getPreferredLocale()); } @@ -66,7 +66,7 @@ public class TestLanguage extends ManagedTest { @Test public void testLanguageAfterLogin() throws IOException { setAcceptLanguage("de,en"); - User u = new User(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); + User u = User.getById(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); String cookie = login(u.getEmail(), TEST_PASSWORD); String content = IOUtils.readURL(cookie(new URL("https://" + getServerName() + "/").openConnection(), cookie)); assertThat(content, containsString(Language.getInstance(Locale.GERMAN).getTranslation("Translations"))); @@ -75,7 +75,7 @@ public class TestLanguage extends ManagedTest { @Test public void testOtherLanguageAfterLogin() throws IOException { setAcceptLanguage("fr,de,en"); - User u = new User(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); + User u = User.getById(createVerifiedUser("fname", "lname", createUniqueName() + "@example.org", TEST_PASSWORD)); String cookie = login(u.getEmail(), TEST_PASSWORD); String content = IOUtils.readURL(cookie(new URL("https://" + getServerName() + "/").openConnection(), cookie)); assertThat(content, containsString(Language.getInstance(Locale.FRENCH).getTranslation("Translations"))); diff --git a/tests/org/cacert/gigi/TestUser.java b/tests/org/cacert/gigi/TestUser.java index 9e4a115c..379f3547 100644 --- a/tests/org/cacert/gigi/TestUser.java +++ b/tests/org/cacert/gigi/TestUser.java @@ -28,7 +28,7 @@ public class TestUser extends ManagedTest { u.setEmail(createUniqueName() + "a@email.org"); u.insert("password"); int id = u.getId(); - User u2 = new User(id); + User u2 = User.getById(id); assertEquals(u, u2); } @@ -36,7 +36,7 @@ public class TestUser extends ManagedTest { public void testWebStoreAndLoad() throws SQLException { int id = createVerifiedUser("aä", "b", createUniqueName() + "a@email.org", TEST_PASSWORD); - User u = new User(id); + User u = User.getById(id); assertEquals("aä", u.getFname()); assertEquals("b", u.getLname()); assertEquals("", u.getMname()); @@ -46,7 +46,7 @@ public class TestUser extends ManagedTest { public void testAssurerUtilMethods() throws SQLException { int id = createAssuranceUser("aä", "b", createUniqueName() + "a@email.org", TEST_PASSWORD); - User u = new User(id); + User u = User.getById(id); assertTrue(u.canAssure()); int assurancePoints = u.getAssurancePoints(); int expPoints = u.getExperiencePoints(); @@ -65,7 +65,7 @@ public class TestUser extends ManagedTest { String uq = createUniqueName(); int id = createVerifiedUser("aä", "b", uq + "a@email.org", TEST_PASSWORD); - User u = new User(id); + User u = User.getById(id); new EmailAddress(uq + "b@email.org", u).insert(Language.getInstance(Locale.ENGLISH)); new EmailAddress(uq + "c@email.org", u).insert(Language.getInstance(Locale.ENGLISH)); new Domain(u, uq + "a.testdomain.org").insert(); diff --git a/tests/org/cacert/gigi/util/TestNotary.java b/tests/org/cacert/gigi/util/TestNotary.java index 03aa60a6..36cd5c12 100644 --- a/tests/org/cacert/gigi/util/TestNotary.java +++ b/tests/org/cacert/gigi/util/TestNotary.java @@ -20,9 +20,9 @@ public class TestNotary extends ManagedTest { User[] users = new User[30]; for (int i = 0; i < users.length; i++) { int id = createVerifiedUser("fn" + i, "ln" + i, createUniqueName() + "@email.org", TEST_PASSWORD); - users[i] = new User(id); + users[i] = User.getById(id); } - User assurer = new User(createAssuranceUser("fn", "ln", createUniqueName() + "@email.org", TEST_PASSWORD)); + User assurer = User.getById(createAssuranceUser("fn", "ln", createUniqueName() + "@email.org", TEST_PASSWORD)); int[] result = new int[] { 10, 10, 10, 10, 15, 15, 15, 15, 15, 20, 20, 20, 20, 20, 25, 25, 25, 25, 25, 30, 30, 30, 30, 30, 35, 35, 35, 35, 35, 35 }; @@ -61,13 +61,13 @@ public class TestNotary extends ManagedTest { User[] users = new User[30]; for (int i = 0; i < users.length; i++) { int id = createVerifiedUser("fn" + i, "ln" + i, createUniqueName() + "@email.org", TEST_PASSWORD); - users[i] = new User(id); + users[i] = User.getById(id); } int id = createAssuranceUser("fn", "ln", createUniqueName() + "@email.org", TEST_PASSWORD); PreparedStatement ps = DatabaseConnection.getInstance().prepare("UPDATE users SET dob=NOW() WHERE id=?"); ps.setInt(1, id); ps.execute(); - User assurer = new User(id); + User assurer = User.getById(id); for (int i = 0; i < users.length; i++) { assuranceFail(assurer, users[i], -1, "test-notary", "2014-01-01"); assuranceFail(assurer, users[i], 11, "test-notary", "2014-01-01"); @@ -78,8 +78,8 @@ public class TestNotary extends ManagedTest { @Test public void testFail() throws SQLException, GigiApiException { - User assuranceUser = new User(createAssuranceUser("fn", "ln", createUniqueName() + "@example.org", TEST_PASSWORD)); - User assuree = new User(createVerifiedUser("fn", "ln", createUniqueName() + "@example.org", TEST_PASSWORD)); + User assuranceUser = User.getById(createAssuranceUser("fn", "ln", createUniqueName() + "@example.org", TEST_PASSWORD)); + User assuree = User.getById(createVerifiedUser("fn", "ln", createUniqueName() + "@example.org", TEST_PASSWORD)); // invalid date format assuranceFail(assuranceUser, assuree, 10, "notary-junit-test", "2014-01-blah");