You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2019/10/09 13:49:57 UTC
[syncope] 02/02: [SYNCOPE-1465] White noise
This is an automated email from the ASF dual-hosted git repository.
ilgrosso pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/syncope.git
commit 52062c462fffa5a440bc75952d9ec832f44914f0
Author: Francesco Chicchiriccò <il...@apache.org>
AuthorDate: Wed Oct 9 15:49:44 2019 +0200
[SYNCOPE-1465] White noise
---
.../org/apache/syncope/core/logic/GroupLogic.java | 7 +++----
.../org/apache/syncope/core/logic/RealmLogic.java | 12 ++++++------
.../org/apache/syncope/core/logic/ReportLogic.java | 19 +++++++------------
.../java/org/apache/syncope/core/logic/TaskLogic.java | 6 ++----
.../java/pushpull/DefaultUserPullResultHandler.java | 3 +--
.../apache/syncope/core/logic/UserRequestLogic.java | 3 +--
.../syncope/core/logic/UserWorkflowTaskLogic.java | 3 +--
.../org/apache/syncope/fit/core/ReportITCase.java | 19 +++----------------
.../apache/syncope/fit/core/ReportTemplateITCase.java | 18 ++----------------
9 files changed, 26 insertions(+), 64 deletions(-)
diff --git a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/GroupLogic.java b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/GroupLogic.java
index a3875fc..f563347 100644
--- a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/GroupLogic.java
+++ b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/GroupLogic.java
@@ -161,11 +161,11 @@ public class GroupLogic extends AbstractAnyLogic<GroupTO, GroupCR, GroupUR> {
int count = searchDAO.count(
RealmUtils.getEffective(SyncopeConstants.FULL_ADMIN_REALMS, realm),
- Optional.ofNullable(searchCond).orElseGet(() -> groupDAO.getAllMatchingCond()), AnyTypeKind.GROUP);
+ Optional.ofNullable(searchCond).orElseGet(() -> groupDAO.getAllMatchingCond()), AnyTypeKind.GROUP);
List<Group> matching = searchDAO.search(
RealmUtils.getEffective(SyncopeConstants.FULL_ADMIN_REALMS, realm),
- Optional.ofNullable(searchCond).orElseGet(() -> groupDAO.getAllMatchingCond()),
+ Optional.ofNullable(searchCond).orElseGet(() -> groupDAO.getAllMatchingCond()),
page, size, orderBy, AnyTypeKind.GROUP);
List<GroupTO> result = matching.stream().
map(group -> binder.getGroupTO(group, details)).collect(Collectors.toList());
@@ -410,12 +410,11 @@ public class GroupLogic extends AbstractAnyLogic<GroupTO, GroupCR, GroupUR> {
task = taskDAO.save(task);
try {
- String executor = AuthContextUtils.getUsername();
Map<String, Object> jobDataMap = jobManager.register(
task,
null,
confParamOps.get(AuthContextUtils.getDomain(), "tasks.interruptMaxRetries", 1L, Long.class),
- executor);
+ AuthContextUtils.getUsername());
jobDataMap.put(TaskJob.DRY_RUN_JOBDETAIL_KEY, false);
jobDataMap.put(GroupMemberProvisionTaskJobDelegate.GROUP_KEY_JOBDETAIL_KEY, key);
diff --git a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/RealmLogic.java b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/RealmLogic.java
index b3d5585..580ac15 100644
--- a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/RealmLogic.java
+++ b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/RealmLogic.java
@@ -117,11 +117,11 @@ public class RealmLogic extends AbstractTransactionalLogic<RealmTO> {
}
Realm realm = realmDAO.save(binder.create(parent, realmTO));
- String executor = AuthContextUtils.getUsername();
PropagationByResource<String> propByRes = new PropagationByResource<>();
propByRes.addAll(ResourceOperation.CREATE, realm.getResourceKeys());
List<PropagationTaskInfo> taskInfos = propagationManager.createTasks(realm, propByRes, null);
- PropagationReporter propagationReporter = taskExecutor.execute(taskInfos, false, executor);
+ PropagationReporter propagationReporter =
+ taskExecutor.execute(taskInfos, false, AuthContextUtils.getUsername());
ProvisioningResult<RealmTO> result = new ProvisioningResult<>();
result.setEntity(binder.getRealmTO(realm, true));
@@ -138,12 +138,12 @@ public class RealmLogic extends AbstractTransactionalLogic<RealmTO> {
throw new NotFoundException(realmTO.getFullPath());
}
- String executor = AuthContextUtils.getUsername();
PropagationByResource<String> propByRes = binder.update(realm, realmTO);
realm = realmDAO.save(realm);
List<PropagationTaskInfo> taskInfos = propagationManager.createTasks(realm, propByRes, null);
- PropagationReporter propagationReporter = taskExecutor.execute(taskInfos, false, executor);
+ PropagationReporter propagationReporter =
+ taskExecutor.execute(taskInfos, false, AuthContextUtils.getUsername());
ProvisioningResult<RealmTO> result = new ProvisioningResult<>();
result.setEntity(binder.getRealmTO(realm, true));
@@ -180,11 +180,11 @@ public class RealmLogic extends AbstractTransactionalLogic<RealmTO> {
containedAnys.getElements().add(anyObjects + " anyObject(s)");
throw containedAnys;
}
- String executor = AuthContextUtils.getUsername();
PropagationByResource<String> propByRes = new PropagationByResource<>();
propByRes.addAll(ResourceOperation.DELETE, realm.getResourceKeys());
List<PropagationTaskInfo> taskInfos = propagationManager.createTasks(realm, propByRes, null);
- PropagationReporter propagationReporter = taskExecutor.execute(taskInfos, false, executor);
+ PropagationReporter propagationReporter =
+ taskExecutor.execute(taskInfos, false, AuthContextUtils.getUsername());
ProvisioningResult<RealmTO> result = new ProvisioningResult<>();
result.setEntity(binder.getRealmTO(realm, true));
diff --git a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/ReportLogic.java b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/ReportLogic.java
index e471af2..bf5b987 100644
--- a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/ReportLogic.java
+++ b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/ReportLogic.java
@@ -75,7 +75,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.Assert;
@Component
public class ReportLogic extends AbstractExecutableLogic<ReportTO> {
@@ -100,14 +99,12 @@ public class ReportLogic extends AbstractExecutableLogic<ReportTO> {
Report report = entityFactory.newEntity(Report.class);
binder.getReport(report, reportTO);
report = reportDAO.save(report);
- String executor = AuthContextUtils.getUsername();
- Assert.notNull(executor, "executor cannot be null when creating report");
try {
jobManager.register(
report,
null,
confParamOps.get(AuthContextUtils.getDomain(), "tasks.interruptMaxRetries", 1L, Long.class),
- executor);
+ AuthContextUtils.getUsername());
} catch (Exception e) {
LOG.error("While registering quartz job for report " + report.getKey(), e);
@@ -128,13 +125,12 @@ public class ReportLogic extends AbstractExecutableLogic<ReportTO> {
binder.getReport(report, reportTO);
report = reportDAO.save(report);
- String executor = AuthContextUtils.getUsername();
try {
jobManager.register(
report,
null,
confParamOps.get(AuthContextUtils.getDomain(), "tasks.interruptMaxRetries", 1L, Long.class),
- executor);
+ AuthContextUtils.getUsername());
} catch (Exception e) {
LOG.error("While registering quartz job for report " + report.getKey(), e);
@@ -175,14 +171,13 @@ public class ReportLogic extends AbstractExecutableLogic<ReportTO> {
sce.getElements().add("Report " + key + " is not active");
throw sce;
}
- String executor = AuthContextUtils.getUsername();
- Assert.notNull(executor, "executor cannot be null when executing report");
+
try {
jobManager.register(
report,
startAt,
confParamOps.get(AuthContextUtils.getDomain(), "tasks.interruptMaxRetries", 1L, Long.class),
- executor);
+ AuthContextUtils.getUsername());
scheduler.getScheduler().triggerJob(JobNamer.getJobKey(report));
} catch (Exception e) {
@@ -200,7 +195,7 @@ public class ReportLogic extends AbstractExecutableLogic<ReportTO> {
result.setStart(new Date());
result.setStatus(ReportExecStatus.STARTED.name());
result.setMessage("Job fired; waiting for results...");
- result.setExecutor(executor);
+ result.setExecutor(AuthContextUtils.getUsername());
return result;
}
@@ -222,7 +217,7 @@ public class ReportLogic extends AbstractExecutableLogic<ReportTO> {
@PreAuthorize("hasRole('" + IdRepoEntitlement.REPORT_READ + "')")
public static void exportExecutionResult(final OutputStream os, final ReportExec reportExec,
- final ReportExecExportFormat format) {
+ final ReportExecExportFormat format) {
// streaming SAX handler from a compressed byte array stream
try (ByteArrayInputStream bais = new ByteArrayInputStream(reportExec.getExecResult());
@@ -379,7 +374,7 @@ public class ReportLogic extends AbstractExecutableLogic<ReportTO> {
Report report = reportDAO.find(key);
return Optional.ofNullable(report)
- .map(report1 -> Triple.of(JobType.REPORT, key, binder.buildRefDesc(report1))).orElse(null);
+ .map(report1 -> Triple.of(JobType.REPORT, key, binder.buildRefDesc(report1))).orElse(null);
}
@PreAuthorize("hasRole('" + IdRepoEntitlement.REPORT_LIST + "')")
diff --git a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/TaskLogic.java b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/TaskLogic.java
index 96fba5d..7dec93d 100644
--- a/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/TaskLogic.java
+++ b/core/idrepo/logic/src/main/java/org/apache/syncope/core/logic/TaskLogic.java
@@ -110,7 +110,6 @@ public class TaskLogic extends AbstractExecutableLogic<TaskTO> {
sce.getElements().add("Found " + type + ", expected " + taskUtils.getType());
throw sce;
}
- String executor = AuthContextUtils.getUsername();
SchedTask task = binder.createSchedTask(taskTO, taskUtils);
task = taskDAO.save(task);
@@ -119,7 +118,7 @@ public class TaskLogic extends AbstractExecutableLogic<TaskTO> {
task,
task.getStartAt(),
confParamOps.get(AuthContextUtils.getDomain(), "tasks.interruptMaxRetries", 1L, Long.class),
- executor);
+ AuthContextUtils.getUsername());
} catch (Exception e) {
LOG.error("While registering quartz job for task " + task.getKey(), e);
@@ -147,13 +146,12 @@ public class TaskLogic extends AbstractExecutableLogic<TaskTO> {
binder.updateSchedTask(task, taskTO, taskUtils);
task = taskDAO.save(task);
- String executor = AuthContextUtils.getUsername();
try {
jobManager.register(
task,
task.getStartAt(),
confParamOps.get(AuthContextUtils.getDomain(), "tasks.interruptMaxRetries", 1L, Long.class),
- executor);
+ AuthContextUtils.getUsername());
} catch (Exception e) {
LOG.error("While registering quartz job for task " + task.getKey(), e);
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPullResultHandler.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPullResultHandler.java
index a344a3f..20ec326 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPullResultHandler.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/pushpull/DefaultUserPullResultHandler.java
@@ -253,7 +253,6 @@ public class DefaultUserPullResultHandler extends AbstractPullResultHandler impl
propByLinkedAccount.add(
ResourceOperation.DELETE,
Pair.of(account.getResource().getKey(), account.getConnObjectKeyValue()));
- String executor = AuthContextUtils.getUsername();
taskExecutor.execute(propagationManager.getDeleteTasks(
AnyTypeKind.USER,
account.getOwner().getKey(),
@@ -261,7 +260,7 @@ public class DefaultUserPullResultHandler extends AbstractPullResultHandler impl
propByLinkedAccount,
null),
false,
- executor);
+ AuthContextUtils.getUsername());
for (PullActions action : profile.getActions()) {
action.after(profile, delta, before, report);
diff --git a/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserRequestLogic.java b/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserRequestLogic.java
index 2df4c59..a0b4a3a 100644
--- a/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserRequestLogic.java
+++ b/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserRequestLogic.java
@@ -184,7 +184,6 @@ public class UserRequestLogic extends AbstractTransactionalLogic<EntityTO> {
}
UserWorkflowResult<UserUR> wfResult = userRequestHandler.submitForm(form);
- String executor = AuthContextUtils.getUsername();
// propByRes can be made empty by the workflow definition if no propagation should occur
// (for example, with rejected users)
if (wfResult.getPropByRes() != null && !wfResult.getPropByRes().isEmpty()) {
@@ -195,7 +194,7 @@ public class UserRequestLogic extends AbstractTransactionalLogic<EntityTO> {
wfResult.getPropByLinkedAccount(),
wfResult.getPerformedTasks()));
- taskExecutor.execute(taskInfos, false, executor);
+ taskExecutor.execute(taskInfos, false, AuthContextUtils.getUsername());
}
UserTO userTO;
diff --git a/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserWorkflowTaskLogic.java b/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserWorkflowTaskLogic.java
index 0de8c70..343d21d 100644
--- a/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserWorkflowTaskLogic.java
+++ b/ext/flowable/logic/src/main/java/org/apache/syncope/core/logic/UserWorkflowTaskLogic.java
@@ -80,8 +80,7 @@ public class UserWorkflowTaskLogic extends AbstractTransactionalLogic<EntityTO>
updated.getPropByRes(),
updated.getPropByLinkedAccount(),
updated.getPerformedTasks()));
- String executor = AuthContextUtils.getUsername();
- taskExecutor.execute(taskInfos, false, executor);
+ taskExecutor.execute(taskInfos, false, AuthContextUtils.getUsername());
return binder.getUserTO(updated.getResult());
}
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/ReportITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/ReportITCase.java
index d458347..f0cc43d 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/ReportITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/ReportITCase.java
@@ -54,25 +54,12 @@ import org.apache.syncope.common.rest.api.batch.BatchResponseItem;
import org.apache.syncope.common.rest.api.beans.ExecDeleteQuery;
import org.apache.syncope.common.rest.api.beans.ExecuteQuery;
import org.apache.syncope.core.provisioning.api.serialization.POJOHelper;
-import org.apache.syncope.core.spring.security.SyncopeAuthenticationDetails;
import org.apache.syncope.fit.AbstractITCase;
import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
-import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
-import org.springframework.security.core.context.SecurityContextHolder;
-import org.springframework.security.core.userdetails.User;
public class ReportITCase extends AbstractITCase {
- @BeforeAll
- public static void setup() {
- UsernamePasswordAuthenticationToken auth = new UsernamePasswordAuthenticationToken(
- new User("admin", "FAKE_PASSWORD", List.of()), "FAKE_PASSWORD", List.of());
- auth.setDetails(new SyncopeAuthenticationDetails("Master"));
- SecurityContextHolder.getContext().setAuthentication(auth);
- }
-
protected static String execReport(final String reportKey) {
ReportTO reportTO = reportService.read(reportKey);
assertNotNull(reportTO);
@@ -83,7 +70,7 @@ public class ReportITCase extends AbstractITCase {
ExecTO exec = reportService.execute(query);
assertNotNull(exec);
assertNotNull(exec.getExecutor());
-
+
int i = 0;
int maxit = 50;
@@ -98,7 +85,7 @@ public class ReportITCase extends AbstractITCase {
assertNotNull(reportTO);
assertNotNull(reportTO.getExecutions());
-
+
i++;
} while (preExecSize == reportTO.getExecutions().size() && i < maxit);
if (i == maxit) {
@@ -370,7 +357,7 @@ public class ReportITCase extends AbstractITCase {
reportTO.setTemplate("sample");
reportTO = createReport(reportTO);
assertNotNull(reportTO);
-
+
ExecTO execution = reportService.execute(new ExecuteQuery.Builder().key(reportTO.getKey()).build());
assertNotNull(execution);
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/ReportTemplateITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/ReportTemplateITCase.java
index 535b84f..773c2d6 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/ReportTemplateITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/ReportTemplateITCase.java
@@ -36,23 +36,11 @@ import org.apache.syncope.common.lib.to.ReportTemplateTO;
import org.apache.syncope.common.lib.types.ClientExceptionType;
import org.apache.syncope.common.lib.types.ReportExecExportFormat;
import org.apache.syncope.common.lib.types.ReportTemplateFormat;
-import org.apache.syncope.core.spring.security.SyncopeAuthenticationDetails;
import org.apache.syncope.fit.AbstractITCase;
-import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
-import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
-import org.springframework.security.core.context.SecurityContextHolder;
-import org.springframework.security.core.userdetails.User;
public class ReportTemplateITCase extends AbstractITCase {
- @BeforeAll
- public static void setup() {
- UsernamePasswordAuthenticationToken auth = new UsernamePasswordAuthenticationToken(
- new User("admin", "FAKE_PASSWORD", List.of()), "FAKE_PASSWORD", List.of());
- auth.setDetails(new SyncopeAuthenticationDetails("Master"));
- SecurityContextHolder.getContext().setAuthentication(auth);
- }
-
+
@Test
public void read() {
ReportTemplateTO reportTemplateTO = reportTemplateService.read("sample");
@@ -64,9 +52,7 @@ public class ReportTemplateITCase extends AbstractITCase {
List<ReportTemplateTO> reportTemplateTOs = reportTemplateService.list();
assertNotNull(reportTemplateTOs);
assertFalse(reportTemplateTOs.isEmpty());
- for (ReportTemplateTO instance : reportTemplateTOs) {
- assertNotNull(instance);
- }
+ reportTemplateTOs.forEach(instance -> assertNotNull(instance));
}
@Test