X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=auth%2Fauth-batch%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fauth%2Fbatch%2Fapprovalsets%2FURApprovalSet.java;h=a25ad6e7178a675106027a6bf4e5e65ec7c5ecfd;hb=e3163b2d5609753f874e2f52fd5ef67fa063af7a;hp=858690ac753a166a9daed9c27aaf925caebb92e5;hpb=4c709df6500a95057a92ec3ea5c739738764388d;p=aaf%2Fauthz.git diff --git a/auth/auth-batch/src/main/java/org/onap/aaf/auth/batch/approvalsets/URApprovalSet.java b/auth/auth-batch/src/main/java/org/onap/aaf/auth/batch/approvalsets/URApprovalSet.java index 858690ac..a25ad6e7 100644 --- a/auth/auth-batch/src/main/java/org/onap/aaf/auth/batch/approvalsets/URApprovalSet.java +++ b/auth/auth-batch/src/main/java/org/onap/aaf/auth/batch/approvalsets/URApprovalSet.java @@ -21,6 +21,7 @@ package org.onap.aaf.auth.batch.approvalsets; import java.io.IOException; +import java.util.Date; import java.util.GregorianCalendar; import java.util.List; @@ -40,15 +41,19 @@ import org.onap.aaf.misc.env.util.Chrono; public class URApprovalSet extends ApprovalSet { - private boolean ownerSuperApprove; - public URApprovalSet(final AuthzTrans trans, final GregorianCalendar start, final DataView dv, final Loader lurdd) throws IOException, CadiException { super(start, "user_role", dv); Organization org = trans.org(); UserRoleDAO.Data urdd = lurdd.load(); setConstruct(urdd.bytify()); setMemo(getMemo(urdd)); - setExpires(org.expiration(null, Organization.Expiration.UserInRole)); + GregorianCalendar expires = org.expiration(null, Organization.Expiration.UserInRole); + if(urdd.expires.before(expires.getTime())) { + expires.setTime(urdd.expires); + } + setExpires(expires); + setTargetKey(urdd.user+'|'+urdd.role); + setTargetDate(urdd.expires); Result r = dv.roleByName(trans, urdd.role); if(r.notOKorIsEmpty()) { @@ -88,18 +93,13 @@ public class URApprovalSet extends ApprovalSet { } } - if(isOwner && ownerSuperApprove) { + if(isOwner) { try { List apprs = org.getApprovers(trans, urdd.user); if(apprs!=null) { for(Identity i : apprs) { ApprovalDAO.Data add = newApproval(urdd); - Identity reportsTo = i.responsibleTo(); - if(reportsTo!=null) { - add.approver = reportsTo.fullID(); - } else { - throw new CadiException("No Supervisor for '" + urdd.user + '\''); - } + add.approver = i.fullID(); add.type = org.getApproverType(); ladd.add(add); } @@ -110,8 +110,12 @@ public class URApprovalSet extends ApprovalSet { } } - public void ownerSuperApprove() { - ownerSuperApprove = true; + private void setTargetDate(Date expires) { + fdd.target_date = expires; + } + + private void setTargetKey(String key) { + fdd.target_key = key; } private ApprovalDAO.Data newApproval(UserRoleDAO.Data urdd) throws CadiException {