Merge branch 'stable-3.0'
* stable-3.0:
Bazel: Add fixes for --incompatible_load_java_rules_from_bzl
Upgrade bazlets to latest stable-3.0 to build with 3.0.2 API
Upgrade bazlets to latest stable-2.16 to build with 2.16.11.1 API
Upgrade bazlets to latest stable-2.15 to build with 2.15.16 API
Upgrade bazlets to latest stable-2.15 to build with 2.15.15 API
Change-Id: I23e620dbd97f7f1fce66d56572b6b9783c40b769
diff --git a/WORKSPACE b/WORKSPACE
index 712907c..b49d96d 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -3,27 +3,27 @@
load("//:bazlets.bzl", "load_bazlets")
load_bazlets(
- commit = "631205bc4f7903d3cf656a844cab2bfd6b03f246",
+ commit = "1ddb1d6c71b77972a89aa0a717f6250ef256d166",
#local_path = "/home/<user>/projects/bazlets",
)
# Snapshot Plugin API
-#load(
-# "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
-# "gerrit_api_maven_local",
-#)
-
-# Load snapshot Plugin API
-#gerrit_api_maven_local()
-
-# Release Plugin API
load(
- "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
- "gerrit_api",
+ "@com_googlesource_gerrit_bazlets//:gerrit_api_maven_local.bzl",
+ "gerrit_api_maven_local",
)
+# Load snapshot Plugin API
+gerrit_api_maven_local()
+
+# Release Plugin API
+#load(
+# "@com_googlesource_gerrit_bazlets//:gerrit_api.bzl",
+# "gerrit_api",
+#)
+
# Load release Plugin API
-gerrit_api()
+#gerrit_api()
load("//:external_plugin_deps.bzl", "external_plugin_deps")
diff --git a/src/main/java/com/googlesource/gerrit/plugins/renameproject/RenameCommand.java b/src/main/java/com/googlesource/gerrit/plugins/renameproject/RenameCommand.java
index db1e862..27c8b0f 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/renameproject/RenameCommand.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/renameproject/RenameCommand.java
@@ -66,7 +66,7 @@
input.name = newProjectName;
ProjectResource rsrc =
new ProjectResource(
- projectCacheProvider.get().get(new Project.NameKey(projectControl)), self.get());
+ projectCacheProvider.get().get(Project.nameKey(projectControl)), self.get());
try (CommandProgressMonitor monitor = new CommandProgressMonitor(stdout)) {
renameProject.assertCanRename(rsrc, input, monitor);
List<Change.Id> changeIds = renameProject.getChanges(rsrc, monitor);
diff --git a/src/main/java/com/googlesource/gerrit/plugins/renameproject/RenameProject.java b/src/main/java/com/googlesource/gerrit/plugins/renameproject/RenameProject.java
index 4d4f671..0de57ff 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/renameproject/RenameProject.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/renameproject/RenameProject.java
@@ -138,7 +138,7 @@
pm.beginTask("Checking preconditions");
assertNewNameNotNull(input);
assertRenamePermission(rsrc);
- renamePreconditions.assertCanRename(rsrc, new Project.NameKey(input.name));
+ renamePreconditions.assertCanRename(rsrc, Project.nameKey(input.name));
log.debug("Rename preconditions check successful.");
} catch (CannotRenameProjectException e) {
throw new ResourceConflictException(e.getMessage());
@@ -148,15 +148,14 @@
void doRename(List<Change.Id> changeIds, ProjectResource rsrc, Input input, ProgressMonitor pm)
throws InterruptedException, ConfigInvalidException, IOException {
Project.NameKey oldProjectKey = rsrc.getNameKey();
- Project.NameKey newProjectKey = new Project.NameKey(input.name);
+ Project.NameKey newProjectKey = Project.nameKey(input.name);
Exception ex = null;
try {
fsHandler.rename(oldProjectKey, newProjectKey, pm);
log.debug("Renamed the git repo to {} successfully.", newProjectKey.get());
cacheHandler.update(rsrc.getProjectState().getProject(), newProjectKey);
- List<Change.Id> updatedChangeIds =
- dbHandler.rename(changeIds, newProjectKey, pm);
+ List<Change.Id> updatedChangeIds = dbHandler.rename(changeIds, newProjectKey, pm);
log.debug("Updated the changes in DB successfully for project {}.", oldProjectKey.get());
// if the DB update is successful, update the secondary index
diff --git a/src/main/java/com/googlesource/gerrit/plugins/renameproject/conditions/RenamePreconditions.java b/src/main/java/com/googlesource/gerrit/plugins/renameproject/conditions/RenamePreconditions.java
index 3e30f6e..70b398f 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/renameproject/conditions/RenamePreconditions.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/renameproject/conditions/RenamePreconditions.java
@@ -15,8 +15,9 @@
package com.googlesource.gerrit.plugins.renameproject.conditions;
import com.google.gerrit.extensions.common.ProjectInfo;
+import com.google.gerrit.extensions.restapi.Response;
import com.google.gerrit.extensions.restapi.RestApiException;
-import com.google.gerrit.reviewdb.client.Branch;
+import com.google.gerrit.reviewdb.client.BranchNameKey;
import com.google.gerrit.reviewdb.client.Project;
import com.google.gerrit.reviewdb.client.RefNames;
import com.google.gerrit.server.config.AllProjectsName;
@@ -91,11 +92,12 @@
private void assertHasNoChildProjects(ProjectResource rsrc) throws CannotRenameProjectException {
try {
- List<ProjectInfo> children = listChildProjectsProvider.get().apply(rsrc);
- if (!children.isEmpty()) {
+ Response<List<ProjectInfo>> children = listChildProjectsProvider.get().apply(rsrc);
+ if (!children.value().isEmpty()) {
String childrenString =
String.join(
- ", ", children.stream().map(info -> info.name).collect(Collectors.toList()));
+ ", ",
+ children.value().stream().map(info -> info.name).collect(Collectors.toList()));
String message =
String.format("Cannot rename project because it has children: %s", childrenString);
log.error(message);
@@ -109,12 +111,12 @@
private void assertIsNotSubscribed(Project.NameKey key) throws CannotRenameProjectException {
try (Repository repo = repoManager.openRepository(key);
MergeOpRepoManager orm = ormProvider.get()) {
- Set<Branch.NameKey> branches = new HashSet<>();
+ Set<BranchNameKey> branches = new HashSet<>();
for (Ref ref : repo.getRefDatabase().getRefs(RefNames.REFS_HEADS).values()) {
- branches.add(new Branch.NameKey(key, ref.getName()));
+ branches.add(BranchNameKey.create(key, ref.getName()));
}
SubmoduleOp sub = subOpFactory.create(branches, orm);
- for (Branch.NameKey b : branches) {
+ for (BranchNameKey b : branches) {
if (!sub.superProjectSubscriptionsForSubmoduleBranch(b).isEmpty()) {
String message = "Cannot rename a project subscribed to by the other projects";
log.error(message);
diff --git a/src/main/java/com/googlesource/gerrit/plugins/renameproject/database/DatabaseRenameHandler.java b/src/main/java/com/googlesource/gerrit/plugins/renameproject/database/DatabaseRenameHandler.java
index 62e517e..ff8a6f5 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/renameproject/database/DatabaseRenameHandler.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/renameproject/database/DatabaseRenameHandler.java
@@ -158,7 +158,7 @@
private void updateWatchEntries(Project.NameKey newProjectKey) {
for (AccountState a : accountQueryProvider.get().byWatchedProject(newProjectKey)) {
- Account.Id accountId = a.getAccount().getId();
+ Account.Id accountId = a.getAccount().id();
ImmutableMap<ProjectWatchKey, ImmutableSet<NotifyType>> projectWatches =
a.getProjectWatches();
Map<ProjectWatchKey, Set<NotifyType>> newProjectWatches = new HashMap<>();
diff --git a/src/test/java/com/googlesource/gerrit/plugins/renameproject/RenameIT.java b/src/test/java/com/googlesource/gerrit/plugins/renameproject/RenameIT.java
index efb8886..36aaa3b 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/renameproject/RenameIT.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/renameproject/RenameIT.java
@@ -43,10 +43,10 @@
adminSshSession.exec(PLUGIN_NAME + " " + project.get() + " " + NEW_PROJECT_NAME);
adminSshSession.assertSuccess();
- ProjectState projectState = projectCache.get(new Project.NameKey(NEW_PROJECT_NAME));
+ ProjectState projectState = projectCache.get(Project.nameKey(NEW_PROJECT_NAME));
assertThat(projectState).isNotNull();
assertThat(queryProvider.get().byProject(project)).isEmpty();
- assertThat(queryProvider.get().byProject(new Project.NameKey(NEW_PROJECT_NAME))).isNotEmpty();
+ assertThat(queryProvider.get().byProject(Project.nameKey(NEW_PROJECT_NAME))).isNotEmpty();
}
@Test
@@ -57,7 +57,7 @@
adminSshSession.exec(PLUGIN_NAME + " " + project.get() + " " + newProjectName);
adminSshSession.assertFailure();
- ProjectState projectState = projectCache.get(new Project.NameKey(newProjectName));
+ ProjectState projectState = projectCache.get(Project.nameKey(newProjectName));
assertThat(projectState).isNull();
}
@@ -68,7 +68,7 @@
adminSshSession.exec(PLUGIN_NAME + " " + allProjects.get() + " " + NEW_PROJECT_NAME);
adminSshSession.assertFailure();
- ProjectState projectState = projectCache.get(new Project.NameKey(NEW_PROJECT_NAME));
+ ProjectState projectState = projectCache.get(Project.nameKey(NEW_PROJECT_NAME));
assertThat(projectState).isNull();
}
diff --git a/src/test/java/com/googlesource/gerrit/plugins/renameproject/conditions/RenamePreconditionsTest.java b/src/test/java/com/googlesource/gerrit/plugins/renameproject/conditions/RenamePreconditionsTest.java
index e42e550..7354187 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/renameproject/conditions/RenamePreconditionsTest.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/renameproject/conditions/RenamePreconditionsTest.java
@@ -18,10 +18,13 @@
import static org.mockito.Mockito.when;
import com.google.gerrit.extensions.common.ProjectInfo;
+import com.google.gerrit.extensions.restapi.Response;
import com.google.gerrit.reviewdb.client.Project;
import com.google.gerrit.server.CurrentUser;
import com.google.gerrit.server.config.AllProjectsName;
+import com.google.gerrit.server.config.AllProjectsNameProvider;
import com.google.gerrit.server.config.AllUsersName;
+import com.google.gerrit.server.config.AllUsersNameProvider;
import com.google.gerrit.server.git.GitRepositoryManager;
import com.google.gerrit.server.project.ProjectResource;
import com.google.gerrit.server.project.ProjectState;
@@ -43,8 +46,6 @@
@RunWith(MockitoJUnitRunner.class)
public class RenamePreconditionsTest {
- @Mock private AllProjectsName allProjects;
- @Mock private AllUsersName allUsersName;
@Mock private Provider<ListChildProjects> listChildProjectsProvider;
@Mock private GitRepositoryManager repoManager;
@Mock private SubmoduleOp.Factory subOpFactory;
@@ -56,12 +57,16 @@
@Mock private Repository repo;
@Mock private ListChildProjects listChildProjects;
+ private AllProjectsName allProjects;
+ private AllUsersName allUsersName;
private ProjectResource oldRsrc;
- private List<ProjectInfo> children = new ArrayList<>();
- private Project.NameKey newProjectKey = new Project.NameKey("newProject");
+ private Response<List<ProjectInfo>> children = Response.ok(new ArrayList<>());
+ private Project.NameKey newProjectKey = Project.nameKey("newProject");
@Before
public void setUp() throws Exception {
+ allProjects = new AllProjectsName(AllProjectsNameProvider.DEFAULT);
+ allUsersName = new AllUsersName(AllUsersNameProvider.DEFAULT);
oldRsrc = new ProjectResource(control, user);
when(repoManager.openRepository(newProjectKey)).thenReturn(repo);
when(repo.getObjectDatabase()).thenReturn(objDb);
@@ -102,13 +107,13 @@
@Test(expected = CannotRenameProjectException.class)
public void testAssertCannotRenameHasChildren() throws Exception {
- Project oldProject = new Project(new Project.NameKey("oldProject"));
+ Project oldProject = new Project(Project.nameKey("oldProject"));
when(oldRsrc.getNameKey()).thenReturn(oldProject.getNameKey());
when(objDb.exists()).thenReturn(false);
when(listChildProjectsProvider.get()).thenReturn(listChildProjects);
ProjectInfo projInfo = mock(ProjectInfo.class);
- children.add(projInfo);
+ children.value().add(projInfo);
when(listChildProjects.apply(oldRsrc)).thenReturn(children);
preconditions.assertCanRename(oldRsrc, newProjectKey);