X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=src%2Fclub%2Fwpia%2Fgigi%2FdbObjects%2FOrganisation.java;h=0e1c8661fab8b5033072f9d9cb3603935e196dae;hp=4ee25d0ede565e6a9187bddc71a63377462d9e95;hb=918282ccc64e46e3e83f5087328ce477d2b200e0;hpb=628b0bb70786afe5de5ba28a8438261dc31e25a6 diff --git a/src/club/wpia/gigi/dbObjects/Organisation.java b/src/club/wpia/gigi/dbObjects/Organisation.java index 4ee25d0e..0e1c8661 100644 --- a/src/club/wpia/gigi/dbObjects/Organisation.java +++ b/src/club/wpia/gigi/dbObjects/Organisation.java @@ -68,12 +68,7 @@ public class Organisation extends CertificateOwner { private String postalAddress; public Organisation(String name, Country country, String province, String city, String email, String optionalName, String postalAddress, User creator) throws GigiApiException { - if ( !creator.isInGroup(Group.ORG_AGENT)) { - throw new GigiApiException("Only Organisation RA Agents may create organisations."); - } - if (country == null) { - throw new GigiApiException("Got country code of illegal type."); - } + super(validate(creator, country)); this.name = name; this.country = country; this.province = province; @@ -98,6 +93,16 @@ public class Organisation extends CertificateOwner { } } + private static Void validate(User creator, Country country) throws GigiApiException { + if ( !creator.isInGroup(Group.ORG_AGENT)) { + throw new GigiApiException("Only Organisation RA Agents may create organisations."); + } + if (country == null) { + throw new GigiApiException("Got country code of illegal type."); + } + return null; + } + protected Organisation(GigiResultSet rs) throws GigiApiException { super(rs.getInt("id")); name = rs.getString("name"); @@ -147,7 +152,7 @@ public class Organisation extends CertificateOwner { public synchronized void addAdmin(User admin, User actor, boolean master) throws GigiApiException { if (actor == admin) { - throw new GigiApiException("You may not add yourself as Organisation Admin. Ask another Organisation Agent to do so."); + throw new GigiApiException("You may not add yourself as Organisation Admin. Ask another Organisation Agent or Organisation Admin to do so."); } if ( !admin.canVerify()) { throw new GigiApiException("Cannot add person who is not RA Agent.");