X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=src%2Fclub%2Fwpia%2Fgigi%2Futil%2FAuthorizationContext.java;h=5d70b38205b4baed17a023d6670f0e33753f89c8;hp=fdc9187b8e80267267bc9b52f912b402d8e08271;hb=c49333e3b0cbd9973267f927629c739fc3751e59;hpb=bccd4cc0dba0f89aa045b113bac46eb8cc1dab4e diff --git a/src/club/wpia/gigi/util/AuthorizationContext.java b/src/club/wpia/gigi/util/AuthorizationContext.java index fdc9187b..5d70b382 100644 --- a/src/club/wpia/gigi/util/AuthorizationContext.java +++ b/src/club/wpia/gigi/util/AuthorizationContext.java @@ -18,24 +18,37 @@ public class AuthorizationContext implements Outputable, Serializable { private static final long serialVersionUID = -2596733469159940154L; - private CertificateOwner target; + private final CertificateOwner target; - private User actor; + private final User actor; - private String supporterTicketId; + private final String supporterTicketId; public AuthorizationContext(CertificateOwner target, User actor) { + if (actor == null) { + throw new Error("Internal Error: The actor of an AuthorizationContext must not be null!"); + } + if (target == null) { + throw new Error("Internal Error: The target of an AuthorizationContext must not be null!"); + } this.target = target; this.actor = actor; + this.supporterTicketId = null; } public AuthorizationContext(User actor, String supporterTicket) throws GigiApiException { + if (actor == null) { + throw new Error("Internal Error: The actor of an AuthorizationContext must not be null!"); + } + if (supporterTicket == null) { + throw new Error("Internal Error: The AuthorizationContext for a Support Engineer requires a valid ticket!"); + } this.target = actor; this.actor = actor; if ( !isInGroup(Group.SUPPORTER)) { throw new GigiApiException("requires a supporter"); } - supporterTicketId = supporterTicket; + this.supporterTicketId = supporterTicket; } public CertificateOwner getTarget() { @@ -50,7 +63,7 @@ public class AuthorizationContext implements Outputable, Serializable { return actor.isInGroup(g); } - public User getActor(AuthorizationContext ac) { + public static User getActor(AuthorizationContext ac) { if (ac == null) { return null; } @@ -65,9 +78,9 @@ public class AuthorizationContext implements Outputable, Serializable { return getSupporterTicketId() != null && isInGroup(Group.SUPPORTER); } - private static final SprintfCommand sp = new SprintfCommand("Logged in as {0} via {1}.", Arrays.asList("${username}", "${loginMethod}")); + private static final SprintfCommand sp = new SprintfCommand("Logged in as {0} via {1}.", Arrays.asList("${username", "${loginMethod")); - private static final SprintfCommand inner = new SprintfCommand("{0} (on behalf of {1})", Arrays.asList("${user}", "${target}")); + private static final SprintfCommand inner = new SprintfCommand("{0} (on behalf of {1})", Arrays.asList("${user", "${target")); @Override public void output(PrintWriter out, Language l, Map vars) { @@ -95,7 +108,7 @@ public class AuthorizationContext implements Outputable, Serializable { } } - public boolean canAssure() { - return target instanceof User && ((User) target).canAssure(); + public boolean canVerify() { + return target instanceof User && ((User) target).canVerify(); } }