Simplify `GetFilesOwners`
The following changes were applied:
* removed ChangeDataFactory as ChangeData is a part of the
RevisionResource
* extracted ChangeData to local variable so that calls that use it
could be shorter
* call to get change id was inlined to the place of use
Change-Id: I4b3d1bb6b69afd0f67fc604049a12d6c9a76bcb1
diff --git a/owners/src/main/java/com/googlesource/gerrit/owners/restapi/GetFilesOwners.java b/owners/src/main/java/com/googlesource/gerrit/owners/restapi/GetFilesOwners.java
index 4415baa..6bdb9a2 100644
--- a/owners/src/main/java/com/googlesource/gerrit/owners/restapi/GetFilesOwners.java
+++ b/owners/src/main/java/com/googlesource/gerrit/owners/restapi/GetFilesOwners.java
@@ -66,7 +66,6 @@
private final GitRepositoryManager repositoryManager;
private final PluginSettings pluginSettings;
private final GerritApi gerritApi;
- private final ChangeData.Factory changeDataFactory;
private final PathOwnersEntriesCache cache;
static final String MISSING_CODE_REVIEW_LABEL =
@@ -83,7 +82,6 @@
GitRepositoryManager repositoryManager,
PluginSettings pluginSettings,
GerritApi gerritApi,
- ChangeData.Factory changeDataFactory,
PathOwnersEntriesCache cache) {
this.accounts = accounts;
this.accountCache = accountCache;
@@ -91,7 +89,6 @@
this.repositoryManager = repositoryManager;
this.pluginSettings = pluginSettings;
this.gerritApi = gerritApi;
- this.changeDataFactory = changeDataFactory;
this.cache = cache;
}
@@ -99,10 +96,9 @@
public Response<FilesOwnersResponse> apply(RevisionResource revision)
throws AuthException, BadRequestException, ResourceConflictException, Exception {
Change change = revision.getChange();
+ ChangeData changeData = revision.getChangeResource().getChangeData();
Short codeReviewMaxValue =
- revision
- .getChangeResource()
- .getChangeData()
+ changeData
.getLabelTypes()
.byLabel(LabelId.CODE_REVIEW)
.map(LabelType::getMaxPositive)
@@ -113,14 +109,13 @@
revision.getProject());
return new ResourceNotFoundException(MISSING_CODE_REVIEW_LABEL);
});
- int id = revision.getChangeResource().getChange().getChangeId();
Project.NameKey project = change.getProject();
List<Project.NameKey> projectParents =
projectCache.get(project).map(PathOwners::getParents).orElse(Collections.emptyList());
try (Repository repository = repositoryManager.openRepository(project)) {
- Set<String> changePaths = new HashSet<>(changeDataFactory.create(change).currentFilePaths());
+ Set<String> changePaths = new HashSet<>(changeData.currentFilePaths());
String branch = change.getDest().branch();
PathOwners owners =
@@ -152,7 +147,7 @@
groupNames ->
groupNames.stream().map(GroupOwner::new).collect(Collectors.toSet()));
- Map<Integer, Map<String, Integer>> ownersLabels = getLabels(id);
+ Map<Integer, Map<String, Integer>> ownersLabels = getLabels(change.getChangeId());
Map<String, Set<GroupOwner>> filesWithPendingOwners =
Maps.filterEntries(