import java.util.ArrayList;
import java.util.Collection;
-import java.util.HashSet;
import java.util.List;
import java.util.Optional;
-import java.util.Set;
-import org.sonar.db.DbClient;
import org.sonar.db.DbSession;
import org.sonar.server.es.ProjectIndexer;
import org.sonar.server.es.ProjectIndexers;
*/
public class PermissionUpdater {
- private final DbClient dbClient;
private final ProjectIndexers projectIndexers;
private final UserPermissionChanger userPermissionChanger;
private final GroupPermissionChanger groupPermissionChanger;
- public PermissionUpdater(DbClient dbClient, ProjectIndexers projectIndexers,
+ public PermissionUpdater(ProjectIndexers projectIndexers,
UserPermissionChanger userPermissionChanger, GroupPermissionChanger groupPermissionChanger) {
- this.dbClient = dbClient;
this.projectIndexers = projectIndexers;
this.userPermissionChanger = userPermissionChanger;
this.groupPermissionChanger = groupPermissionChanger;
}
public void apply(DbSession dbSession, Collection<PermissionChange> changes) {
- Set<Long> projectIds = new HashSet<>();
List<String> projectOrViewUuids = new ArrayList<>();
for (PermissionChange change : changes) {
boolean changed = doApply(dbSession, change);
Optional<ProjectId> projectId = change.getProjectId();
if (changed && projectId.isPresent()) {
- projectIds.add(projectId.get().getId());
projectOrViewUuids.add(projectId.get().getUuid());
}
}
@Rule
public EsTester esTester = new EsTester(new FooIndexDefinition());
+
@Rule
public ExpectedException expectedException = ExpectedException.none();
}
protected PermissionUpdater newPermissionUpdater() {
- return new PermissionUpdater(db.getDbClient(),
+ return new PermissionUpdater(
new ProjectIndexersImpl(new PermissionIndexer(db.getDbClient(), esTester.client())),
new UserPermissionChanger(db.getDbClient()),
new GroupPermissionChanger(db.getDbClient()));