*/
package org.sonar.server.issue;
-import org.sonar.server.issue.ws.IssueComponentHelper;
-import org.sonar.server.issue.ws.IssueJsonWriter;
-
-import org.elasticsearch.common.collect.Lists;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Function;
import com.google.common.base.Predicate;
import com.google.common.collect.ImmutableMultimap;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import java.io.StringWriter;
import org.sonar.server.issue.actionplan.ActionPlanService;
import org.sonar.server.issue.filter.IssueFilterParameters;
import org.sonar.server.issue.filter.IssueFilterService;
+import org.sonar.server.issue.ws.IssueComponentHelper;
+import org.sonar.server.issue.ws.IssueJsonWriter;
import org.sonar.server.search.QueryContext;
import org.sonar.server.user.UserSession;
import org.sonar.server.user.index.UserIndex;
import org.sonar.server.util.RubyUtils;
import org.sonar.server.util.Validation;
+
import static com.google.common.collect.Lists.newArrayList;
-import static com.google.common.collect.Maps.newHashMap;
/**
* Used through ruby code <pre>Internal.issues</pre>
*/
package org.sonar.server.issue.ws;
-import static com.google.common.collect.Maps.newHashMap;
-
-import org.sonar.server.db.DbClient;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.sonar.core.component.ComponentDto;
import org.sonar.core.persistence.DbSession;
+import org.sonar.server.db.DbClient;
+
+import static com.google.common.collect.Maps.newHashMap;
/**
* This class computes some collections of {@link ComponentDto}s used to serialize issues.
package org.sonar.server.issue.ws;
-import org.sonar.server.user.ws.UserJsonWriter;
-
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Multimap;
import java.util.Collection;
import org.sonar.core.component.ComponentDto;
import org.sonar.markdown.Markdown;
import org.sonar.server.user.UserSession;
+import org.sonar.server.user.ws.UserJsonWriter;
public class IssueJsonWriter {
*/
package org.sonar.server.platform.platformlevel;
-import org.sonar.server.issue.ws.IssueComponentHelper;
-import org.sonar.server.issue.ws.IssueJsonWriter;
-
import java.util.List;
import org.sonar.api.config.EmailSettings;
import org.sonar.api.issue.action.Actions;
import org.sonar.server.issue.notification.NewIssuesNotificationFactory;
import org.sonar.server.issue.ws.ComponentTagsAction;
import org.sonar.server.issue.ws.IssueActionsWriter;
+import org.sonar.server.issue.ws.IssueComponentHelper;
+import org.sonar.server.issue.ws.IssueJsonWriter;
import org.sonar.server.issue.ws.IssuesWs;
import org.sonar.server.issue.ws.SetTagsAction;
import org.sonar.server.language.ws.LanguageWs;
protected HashMultimap<String, String> projectKeyByPermission = HashMultimap.create();
protected HashMultimap<String, String> projectUuidByPermission = HashMultimap.create();
protected Map<String, String> projectUuidByComponentUuid = newHashMap();
- protected List<String> projectPermissions = newArrayList();
+ protected List<String> projectPermissionsCheckedByKey = newArrayList();
+ protected List<String> projectPermissionsCheckedByUuid = newArrayList();
protected String name;
protected Locale locale = Locale.ENGLISH;
@Override
public boolean hasProjectPermission(String permission, String projectKey) {
- if (!projectPermissions.contains(permission)) {
+ if (!projectPermissionsCheckedByKey.contains(permission)) {
Collection<String> projectKeys = authorizationDao.selectAuthorizedRootProjectsKeys(userId, permission);
for (String key : projectKeys) {
projectKeyByPermission.put(permission, key);
}
- projectPermissions.add(permission);
+ projectPermissionsCheckedByKey.add(permission);
}
return projectKeyByPermission.get(permission).contains(projectKey);
}
@Override
public boolean hasProjectPermissionByUuid(String permission, String projectUuid) {
- if (!projectPermissions.contains(permission)) {
+ if (!projectPermissionsCheckedByUuid.contains(permission)) {
Collection<String> projectUuids = authorizationDao.selectAuthorizedRootProjectsUuids(userId, permission);
addProjectPermission(permission, projectUuids);
}
for (String key : authorizedProjectUuids) {
projectUuidByPermission.put(permission, key);
}
- projectPermissions.add(permission);
+ projectPermissionsCheckedByUuid.add(permission);
}
@Override
this.projectKeyByPermission = ruleUserSession.projectKeyByPermission;
this.projectUuidByPermission = ruleUserSession.projectUuidByPermission;
this.projectUuidByComponentUuid = ruleUserSession.projectUuidByComponentUuid;
- this.projectPermissions = ruleUserSession.projectPermissions;
+ this.projectPermissionsCheckedByKey = ruleUserSession.projectPermissionsCheckedByKey;
this.name = ruleUserSession.name;
this.locale = ruleUserSession.locale;
}
*/
@Deprecated
public MockUserSession addProjectPermissions(String projectPermission, String... projectKeys) {
- this.projectPermissions.add(projectPermission);
+ this.projectPermissionsCheckedByKey.add(projectPermission);
this.projectKeyByPermission.putAll(projectPermission, newArrayList(projectKeys));
return this;
}
public MockUserSession addProjectUuidPermissions(String projectPermission, String... projectUuids) {
- this.projectPermissions.add(projectPermission);
+ this.projectPermissionsCheckedByUuid.add(projectPermission);
this.projectUuidByPermission.putAll(projectPermission, newArrayList(projectUuids));
return this;
}
@Override
public boolean hasProjectPermission(String permission, String projectKey) {
- return projectPermissions.contains(permission) && projectKeyByPermission.get(permission).contains(projectKey);
+ return projectPermissionsCheckedByKey.contains(permission) && projectKeyByPermission.get(permission).contains(projectKey);
}
@Override
public boolean hasProjectPermissionByUuid(String permission, String projectUuid) {
- return projectPermissions.contains(permission) && projectUuidByPermission.get(permission).contains(projectUuid);
+ return projectPermissionsCheckedByUuid.contains(permission) && projectUuidByPermission.get(permission).contains(projectUuid);
}
@Override