Revert "IDEA-253347 add method remove repository by url to gradle-dsl"

This reverts commit 845e5674

GitOrigin-RevId: a6e8a5d8713913e01c1472da6eb8fa9bbaa5dd8d
This commit is contained in:
Alexander Bubenchikov
2020-10-20 20:38:18 +00:00
committed by intellij-monorepo-bot
parent 5dab923873
commit ef188e3848
2 changed files with 29 additions and 43 deletions
@@ -15,28 +15,36 @@
*/
package com.android.tools.idea.gradle.dsl.model.repositories;
import com.android.tools.idea.gradle.dsl.api.repositories.RepositoriesModel;
import com.android.tools.idea.gradle.dsl.api.repositories.RepositoryModel;
import com.android.tools.idea.gradle.dsl.model.GradleDslBlockModel;
import com.android.tools.idea.gradle.dsl.parser.elements.*;
import com.android.tools.idea.gradle.dsl.parser.repositories.FlatDirRepositoryDslElement;
import com.android.tools.idea.gradle.dsl.parser.repositories.MavenRepositoryDslElement;
import com.android.tools.idea.gradle.dsl.parser.repositories.RepositoriesDslElement;
import com.intellij.psi.PsiElement;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.ArrayList;
import java.util.List;
import static com.android.tools.idea.gradle.dsl.api.repositories.GoogleDefaultRepositoryModel.GOOGLE_DEFAULT_REPO_NAME;
import static com.android.tools.idea.gradle.dsl.model.repositories.FlatDirRepositoryModel.FLAT_DIR_ATTRIBUTE_NAME;
import static com.android.tools.idea.gradle.dsl.model.repositories.GoogleDefaultRepositoryModelImpl.*;
import static com.android.tools.idea.gradle.dsl.model.repositories.GoogleDefaultRepositoryModelImpl.GOOGLE_DEFAULT_REPO_URL;
import static com.android.tools.idea.gradle.dsl.model.repositories.GoogleDefaultRepositoryModelImpl.GOOGLE_METHOD_NAME;
import static com.android.tools.idea.gradle.dsl.model.repositories.GoogleDefaultRepositoryModelImpl.URL;
import static com.android.tools.idea.gradle.dsl.model.repositories.JCenterDefaultRepositoryModel.JCENTER_METHOD_NAME;
import static com.android.tools.idea.gradle.dsl.model.repositories.MavenCentralRepositoryModel.MAVEN_CENTRAL_METHOD_NAME;
import static com.android.tools.idea.gradle.dsl.parser.repositories.FlatDirRepositoryDslElement.FLAT_DIR;
import static com.android.tools.idea.gradle.dsl.parser.repositories.MavenRepositoryDslElement.JCENTER;
import static com.android.tools.idea.gradle.dsl.parser.repositories.MavenRepositoryDslElement.MAVEN;
import com.android.tools.idea.gradle.dsl.api.repositories.RepositoriesModel;
import com.android.tools.idea.gradle.dsl.api.repositories.RepositoryModel;
import com.android.tools.idea.gradle.dsl.model.GradleDslBlockModel;
import com.android.tools.idea.gradle.dsl.parser.elements.GradleDslElement;
import com.android.tools.idea.gradle.dsl.parser.elements.GradleDslExpressionMap;
import com.android.tools.idea.gradle.dsl.parser.elements.GradleDslMethodCall;
import com.android.tools.idea.gradle.dsl.parser.elements.GradleNameElement;
import com.android.tools.idea.gradle.dsl.parser.elements.GradlePropertiesDslElement;
import com.android.tools.idea.gradle.dsl.parser.repositories.FlatDirRepositoryDslElement;
import com.android.tools.idea.gradle.dsl.parser.repositories.MavenRepositoryDslElement;
import com.android.tools.idea.gradle.dsl.parser.repositories.RepositoriesDslElement;
import com.intellij.openapi.project.Project;
import com.intellij.psi.PsiElement;
import java.util.ArrayList;
import java.util.List;
import com.intellij.util.text.VersionComparatorUtil;
import org.jetbrains.annotations.NotNull;
public class RepositoriesModelImpl extends GradleDslBlockModel implements RepositoriesModel {
public RepositoriesModelImpl(@NotNull RepositoriesDslElement dslElement) {
@@ -140,7 +148,7 @@ public class RepositoriesModelImpl extends GradleDslBlockModel implements Reposi
* @param url address to use.
*/
@Override
public void addMavenRepositoryByUrl(@NotNull String url, @Nullable String name) {
public void addMavenRepositoryByUrl(@NotNull String url, @NotNull String name) {
// Check if it is already there
if (containsMavenRepositoryByUrl(url)) {
return;
@@ -148,9 +156,8 @@ public class RepositoriesModelImpl extends GradleDslBlockModel implements Reposi
GradleNameElement nameElement = GradleNameElement.fake(MAVEN.name);
MavenRepositoryDslElement newElement = new MavenRepositoryDslElement(myDslElement, nameElement);
newElement.setNewLiteral("url", url);
if (name != null) {
newElement.setNewLiteral("name", name);
}
// name is an optional property, it can be nullable but at this point only non null values are used.
newElement.setNewLiteral("name", name);
myDslElement.setNewElement(newElement);
}
@@ -165,32 +172,13 @@ public class RepositoriesModelImpl extends GradleDslBlockModel implements Reposi
List<MavenRepositoryDslElement> elements = myDslElement.getPropertyElements(MavenRepositoryDslElement.class);
for (MavenRepositoryDslElement element : elements) {
String urlElement = element.getLiteral(URL, String.class);
if (repositoryUrl.equalsIgnoreCase(urlElement)) {
if (repositoryUrl.equals(urlElement)) {
return true;
}
}
return false;
}
/**
* removes repository by URL
* @param repositoryUrl the URL of the repository to be removed.
* @return {@code true} if there is a repository using {@code repositoryUrl} as URL, {@code false} otherwise.
*/
@Override
public boolean removeRepositoryByUrl(@NotNull String repositoryUrl) {
List<MavenRepositoryDslElement> elements = myDslElement.getPropertyElements(MavenRepositoryDslElement.class);
for (MavenRepositoryDslElement element : elements) {
String urlElement = element.getLiteral(URL, String.class);
if (repositoryUrl.equalsIgnoreCase(urlElement)) {
myDslElement.removeProperty(element);
return true;
}
}
return false;
}
/**
* Look for Google Maven repository. If Gradle version is 4 or newer, look for it by method call and url.
* If it is lower than 4, look only by url.
@@ -210,4 +198,5 @@ public class RepositoriesModelImpl extends GradleDslBlockModel implements Reposi
}
return containsMavenRepositoryByUrl(GOOGLE_DEFAULT_REPO_URL);
}
}
@@ -18,7 +18,6 @@ package com.android.tools.idea.gradle.dsl.api.repositories;
import com.android.tools.idea.gradle.dsl.api.util.GradleDslModel;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
@@ -32,12 +31,10 @@ public interface RepositoriesModel extends GradleDslModel {
boolean containsMethodCall(@NotNull String methodName);
void addMavenRepositoryByUrl(@NotNull String url, @Nullable String name);
void addMavenRepositoryByUrl(@NotNull String url, @NotNull String name);
boolean containsMavenRepositoryByUrl(@NotNull String repositoryUrl);
boolean removeRepositoryByUrl(@NotNull String repositoryUrl);
boolean hasGoogleMavenRepository();
}