@Transactional @Override public void before(final PropagationTask task, final ConnectorObject beforeObj) { if (task.getOperation() == ResourceOperation.DELETE || task.getOperation() == ResourceOperation.NONE) { return; } switch (task.getAnyTypeKind()) { case USER: setName(task); break; case GROUP: setName(task); break; default: LOG.debug("Not about user or group: not doing anything"); } }
@Transactional @Override public void before(final PropagationTask task, final ConnectorObject beforeObj) { if (task.getOperation() == ResourceOperation.DELETE || task.getOperation() == ResourceOperation.NONE) { return; } if (AnyTypeKind.USER != task.getAnyTypeKind()) { return; } Set<Attribute> attrs = new HashSet<>(task.getAttributes()); if (AttributeUtil.find(getEmailAttrName(), attrs) == null) { LOG.warn("Can't find {} attribute to set as __NAME__ attribute value, skipping...", getEmailAttrName()); return; } Name name = AttributeUtil.getNameFromAttributes(attrs); if (name != null) { attrs.remove(name); } attrs.add(new Name(AttributeUtil.find(getEmailAttrName(), attrs).getValue().get(0).toString())); task.setAttributes(attrs); } }
isValid = true; } else { isValid = task.getOperation() != null && !task.getAttributes().isEmpty() && task.getResource() != null;
switch (task.getOperation()) { case CREATE: case UPDATE: if (task.getOperation() != ResourceOperation.DELETE && afterObj == null && uid != null) { afterObj = new ConnectorObjectBuilder(). setObjectClass(new ObjectClass(task.getObjectClassName())). String operation = task.getOperation().name().toLowerCase(); boolean notificationsAvailable = notificationManager.notificationsAvailable( AuditElements.EventCategoryType.PROPAGATION, anyTypeKind, resource, operation);
/** * Check whether an execution has to be stored, for a given task. * * @param task propagation task * @param execution to be decide whether to store or not * @return true if execution has to be store, false otherwise */ protected boolean hasToBeregistered(final PropagationTask task, final TaskExec execution) { boolean result; boolean failed = ExecStatus.valueOf(execution.getStatus()) != ExecStatus.SUCCESS; switch (task.getOperation()) { case CREATE: result = (failed && task.getResource().getCreateTraceLevel().ordinal() >= TraceLevel.FAILURES.ordinal()) || task.getResource().getCreateTraceLevel() == TraceLevel.ALL; break; case UPDATE: result = (failed && task.getResource().getUpdateTraceLevel().ordinal() >= TraceLevel.FAILURES.ordinal()) || task.getResource().getUpdateTraceLevel() == TraceLevel.ALL; break; case DELETE: result = (failed && task.getResource().getDeleteTraceLevel().ordinal() >= TraceLevel.FAILURES.ordinal()) || task.getResource().getDeleteTraceLevel() == TraceLevel.ALL; break; default: result = false; } return result; }
PropagationTaskTO propagationTaskTO = (PropagationTaskTO) taskTO; propagationTaskTO.setOperation(propagationTask.getOperation()); propagationTaskTO.setConnObjectKey(propagationTask.getConnObjectKey()); propagationTaskTO.setOldConnObjectKey(propagationTask.getOldConnObjectKey());