ComponentWithBrowseButton - optional remove listener on hide
[fedora-idea.git] / plugins / maven / src / main / java / org / jetbrains / idea / maven / dom / converters / MavenArtifactCoordinatesGroupIdConverter.java
blobada8abd0119568f555cbd06defebd7c64224e26e
1 package org.jetbrains.idea.maven.dom.converters;
3 import com.intellij.openapi.util.text.StringUtil;
4 import com.intellij.util.containers.hash.HashSet;
5 import com.intellij.util.xml.ConvertContext;
6 import com.intellij.util.xml.impl.ConvertContextImpl;
7 import org.jetbrains.idea.maven.dom.model.MavenDomShortArtifactCoordinates;
8 import org.jetbrains.idea.maven.indices.MavenProjectIndicesManager;
9 import org.jetbrains.idea.maven.project.MavenId;
11 import java.util.Collection;
12 import java.util.Collections;
13 import java.util.Set;
15 public class MavenArtifactCoordinatesGroupIdConverter extends MavenArtifactCoordinatesConverter {
16 @Override
17 protected boolean doIsValid(MavenId id, MavenProjectIndicesManager manager, ConvertContext context) {
18 if (StringUtil.isEmpty(id.getGroupId())) return false;
19 return manager.hasGroupId(id.getGroupId());
22 @Override
23 protected Set<String> doGetVariants(MavenId id, MavenProjectIndicesManager manager) {
24 return manager.getGroupIds();
27 public Collection<String> getSmartVariants(ConvertContext convertContext) {
28 Set<String> groupIds = new HashSet<String>();
29 String artifactId = MavenArtifactCoordinatesHelper.getId(convertContext).getArtifactId();
30 if (!StringUtil.isEmptyOrSpaces(artifactId)) {
31 MavenProjectIndicesManager manager = MavenProjectIndicesManager.getInstance(convertContext.getFile().getProject());
32 for (String grouipId : manager.getGroupIds()) {
33 if (manager.getArtifactIds(grouipId).contains(artifactId)) {
34 groupIds.add(grouipId);
38 return groupIds;