use of com.microsoft.azure.toolkit.intellij.common.AzureArtifactType.File in project azure-tools-for-java by Microsoft.
the class AzureArtifactManager method getModuleFromAzureArtifact.
@Nullable
@AzureOperation(name = "common|artifact.get_module", params = { "azureArtifact.getName()" }, type = AzureOperation.Type.TASK)
public Module getModuleFromAzureArtifact(AzureArtifact azureArtifact) {
if (azureArtifact == null || azureArtifact.getReferencedObject() == null) {
return null;
}
switch(azureArtifact.getType()) {
case Gradle:
final String gradleModulePath = ((ExternalProjectPojo) azureArtifact.getReferencedObject()).getPath();
final VirtualFile gradleVirtualFile = LocalFileSystem.getInstance().findFileByIoFile(new File(gradleModulePath));
return ProjectFileIndex.getInstance(project).getModuleForFile(gradleVirtualFile);
case Maven:
return ProjectFileIndex.getInstance(project).getModuleForFile(((MavenProject) azureArtifact.getReferencedObject()).getFile());
default:
// IntelliJ artifact is bind to project, can not get the related module, same for File artifact
return null;
}
}
Aggregations