X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=auth%2Fauth-gui%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fauth%2Fgui%2Fpages%2FApprovalForm.java;h=e047a22a3fcb61f427f5919e7ad344768925e39f;hb=57effd69fb15e0c73f85296d10ff6b358a6cbebb;hp=0c984e4dd43f1d2012feb2158ed1f2ee87a3fb47;hpb=502da3cb1daf171395630dbaf4a2f2e2fb9aa93e;p=aaf%2Fauthz.git diff --git a/auth/auth-gui/src/main/java/org/onap/aaf/auth/gui/pages/ApprovalForm.java b/auth/auth-gui/src/main/java/org/onap/aaf/auth/gui/pages/ApprovalForm.java index 0c984e4d..e047a22a 100644 --- a/auth/auth-gui/src/main/java/org/onap/aaf/auth/gui/pages/ApprovalForm.java +++ b/auth/auth-gui/src/main/java/org/onap/aaf/auth/gui/pages/ApprovalForm.java @@ -66,7 +66,7 @@ public class ApprovalForm extends Page { // Package on purpose static final String NAME="Approvals"; static final String HREF = "/gui/approve"; - static final String[] FIELDS = new String[] {"line[]","user","delegate_of"}; + static final String[] FIELDS = new String[] {"line[]","user","delegate_of","as_user"}; public ApprovalForm(final AAF_GUI gui, final Page ... breadcrumbs) throws APIException, IOException { @@ -121,10 +121,12 @@ public class ApprovalForm extends Page { private static final String[] headers = new String[] {"Identity","Request","Approve","Deny"}; private Slot sUser; private Slot sAsDelegate; + private Slot sAsUser; public Model(AuthzEnv env) { sUser = env.slot(NAME+".user"); sAsDelegate = env.slot(NAME+".delegate_of"); + sAsUser = env.slot(NAME + ".as_user"); } @Override @@ -135,7 +137,15 @@ public class ApprovalForm extends Page { @Override public Cells get(final AuthzTrans trans, final AAF_GUI gui) { final String userParam = trans.get(sUser, null); - final String asDelegate = trans.get(sAsDelegate, trans.user()); + + final String asDelegate = trans.get(sAsDelegate, null); + final String approver; + if(asDelegate==null) { + approver = trans.get(sAsUser,trans.user()); + } else { + approver = asDelegate; + } + ArrayList rv = new ArrayList<>(); String msg = null; TimeTaken tt = trans.start("AAF Get Approvals for Approver",Env.REMOTE); @@ -145,7 +155,7 @@ public class ApprovalForm extends Page { int numLeft = gui.clientAsUser(trans.getUserPrincipal(), new Retryable() { @Override public Integer code(Rcli client) throws CadiException, ConnectException, APIException { - Future fa = client.read("/authz/approval/approver/"+asDelegate,gui.getDF(Approvals.class)); + Future fa = client.read("/authz/approval/approver/"+approver,gui.getDF(Approvals.class)); int numLeft = 0; if (fa.get(AAF_GUI.TIMEOUT)) { @@ -266,7 +276,6 @@ public class ApprovalForm extends Page { userCell = new TextToolTipCell(user,title); } } - prevUser=user; // userCell = new RefCell(prevUser, // TODO_ILM_INFO+user.substring(0, user.length()-domainOfApprover.length()), // true, @@ -275,6 +284,7 @@ public class ApprovalForm extends Page { } else { userCell = new TextCell(prevUser==null?user:prevUser); } + prevUser=user; AbsCell[] sa = new AbsCell[] { userCell, new TextCell(appr.getMemo()),