Search in sources :

Example 6 with AndroidIdeInfo

use of com.google.idea.blaze.base.ideinfo.AndroidIdeInfo in project intellij by bazelbuild.

the class TransitiveResourceMap method getDependencies.

@Override
protected Iterable<TargetKey> getDependencies(TargetIdeInfo target) {
    AndroidIdeInfo androidIdeInfo = target.androidIdeInfo;
    if (androidIdeInfo != null && androidIdeInfo.legacyResources != null) {
        List<TargetKey> result = Lists.newArrayList(super.getDependencies(target));
        result.add(TargetKey.forPlainTarget(androidIdeInfo.legacyResources));
        return result;
    }
    return super.getDependencies(target);
}
Also used : TargetKey(com.google.idea.blaze.base.ideinfo.TargetKey) AndroidIdeInfo(com.google.idea.blaze.base.ideinfo.AndroidIdeInfo)

Example 7 with AndroidIdeInfo

use of com.google.idea.blaze.base.ideinfo.AndroidIdeInfo in project intellij by bazelbuild.

the class TransitiveResourceMap method createForTarget.

@Override
protected TransitiveResourceInfo createForTarget(TargetIdeInfo target) {
    TransitiveResourceInfo result = new TransitiveResourceInfo();
    AndroidIdeInfo androidIdeInfo = target.androidIdeInfo;
    if (androidIdeInfo == null) {
        return result;
    }
    if (androidIdeInfo.legacyResources != null) {
        return result;
    }
    result.transitiveResources.addAll(androidIdeInfo.resources);
    result.transitiveResourceTargets.add(target.key);
    return result;
}
Also used : AndroidIdeInfo(com.google.idea.blaze.base.ideinfo.AndroidIdeInfo) TransitiveResourceInfo(com.google.idea.blaze.android.sync.importer.aggregators.TransitiveResourceMap.TransitiveResourceInfo)

Example 8 with AndroidIdeInfo

use of com.google.idea.blaze.base.ideinfo.AndroidIdeInfo in project intellij by bazelbuild.

the class BlazeAndroidProjectStructureSyncer method updateInMemoryState.

private static void updateInMemoryState(Project project, WorkspaceRoot workspaceRoot, ProjectViewSet projectViewSet, BlazeProjectData blazeProjectData, Module workspaceModule, AndroidResourceModuleRegistry registry, LightResourceClassService.Builder rClassBuilder) {
    BlazeAndroidSyncData syncData = blazeProjectData.syncState.get(BlazeAndroidSyncData.class);
    if (syncData == null) {
        return;
    }
    AndroidSdkPlatform androidSdkPlatform = syncData.androidSdkPlatform;
    if (androidSdkPlatform == null) {
        return;
    }
    updateWorkspaceModuleFacetInMemoryState(project, workspaceRoot, workspaceModule, androidSdkPlatform);
    ArtifactLocationDecoder artifactLocationDecoder = blazeProjectData.artifactLocationDecoder;
    ModuleFinder moduleFinder = ModuleFinder.getInstance(project);
    Executor resourceRepositoryExecutor = Executors.newSingleThreadExecutor();
    Module libraryResourcesModule = moduleFinder.findModuleByName(LIBRARY_RESOURCES_MODULE_NAME);
    if (libraryResourcesModule != null) {
        updateLibraryResourcesModuleFacetInMemoryState(project, workspaceRoot, libraryResourcesModule, androidSdkPlatform, syncData.importResult.resourceLibrary == null ? ImmutableList.of() : artifactLocationDecoder.decodeAll(syncData.importResult.resourceLibrary.sources), resourceRepositoryExecutor);
    } else if (useLibraryResourcesModule.getValue()) {
        logger.warn("Library resources module missing.");
    }
    for (AndroidResourceModule androidResourceModule : syncData.importResult.androidResourceModules) {
        TargetIdeInfo target = blazeProjectData.targetMap.get(androidResourceModule.targetKey);
        String moduleName = moduleNameForAndroidModule(target.key);
        Module module = moduleFinder.findModuleByName(moduleName);
        if (module == null) {
            logger.warn("No module found for resource target: " + target.key);
            continue;
        }
        registry.put(module, androidResourceModule);
        AndroidIdeInfo androidIdeInfo = target.androidIdeInfo;
        assert androidIdeInfo != null;
        updateModuleFacetInMemoryState(project, androidSdkPlatform, module, moduleDirectoryForAndroidTarget(workspaceRoot, target), manifestFileForAndroidTarget(artifactLocationDecoder, androidIdeInfo, moduleDirectoryForAndroidTarget(workspaceRoot, target)), androidIdeInfo.resourceJavaPackage, artifactLocationDecoder.decodeAll(useLibraryResourcesModule.getValue() ? androidResourceModule.resources : androidResourceModule.transitiveResources), resourceRepositoryExecutor);
        rClassBuilder.addRClass(androidIdeInfo.resourceJavaPackage, module);
    }
    Set<TargetKey> androidResourceModules = syncData.importResult.androidResourceModules.stream().map(androidResourceModule -> androidResourceModule.targetKey).collect(toSet());
    List<TargetIdeInfo> runConfigurationTargets = getRunConfigurationTargets(project, projectViewSet, blazeProjectData, androidResourceModules);
    for (TargetIdeInfo target : runConfigurationTargets) {
        String moduleName = moduleNameForAndroidModule(target.key);
        Module module = moduleFinder.findModuleByName(moduleName);
        if (module == null) {
            logger.warn("No module found for run configuration target: " + target.key);
            continue;
        }
        AndroidIdeInfo androidIdeInfo = target.androidIdeInfo;
        assert androidIdeInfo != null;
        updateModuleFacetInMemoryState(project, androidSdkPlatform, module, moduleDirectoryForAndroidTarget(workspaceRoot, target), manifestFileForAndroidTarget(artifactLocationDecoder, androidIdeInfo, moduleDirectoryForAndroidTarget(workspaceRoot, target)), androidIdeInfo.resourceJavaPackage, ImmutableList.of(), null);
    }
}
Also used : SdkUtil(com.google.idea.blaze.android.sync.sdk.SdkUtil) GeneratedAndroidResourcesSection(com.google.idea.blaze.android.projectview.GeneratedAndroidResourcesSection) ModuleFinder(com.google.idea.blaze.base.sync.projectstructure.ModuleFinder) LightResourceClassService(com.google.idea.blaze.android.resources.LightResourceClassService) BlazeProjectData(com.google.idea.blaze.base.model.BlazeProjectData) ModuleOrderEntry(com.intellij.openapi.roots.ModuleOrderEntry) ModifiableRootModel(com.intellij.openapi.roots.ModifiableRootModel) Map(java.util.Map) TargetExpression(com.google.idea.blaze.base.model.primitives.TargetExpression) MultiResourceRepository(com.android.tools.idea.res.MultiResourceRepository) Logger(com.intellij.openapi.diagnostic.Logger) Module(com.intellij.openapi.module.Module) Collectors.toSet(java.util.stream.Collectors.toSet) AndroidResourceModuleRegistry(com.google.idea.blaze.android.sync.model.AndroidResourceModuleRegistry) DumbService(com.intellij.openapi.project.DumbService) AndroidResourceModule(com.google.idea.blaze.android.sync.model.AndroidResourceModule) StdModuleTypes(com.intellij.openapi.module.StdModuleTypes) Collection(java.util.Collection) Set(java.util.Set) PrintOutput(com.google.idea.blaze.base.scope.output.PrintOutput) Sets(com.google.common.collect.Sets) BlazeProjectDataManager(com.google.idea.blaze.base.sync.data.BlazeProjectDataManager) Executors(java.util.concurrent.Executors) TargetSection(com.google.idea.blaze.base.projectview.section.sections.TargetSection) SourceProviderImpl(com.google.idea.blaze.android.sync.model.idea.SourceProviderImpl) List(java.util.List) ProjectViewSet(com.google.idea.blaze.base.projectview.ProjectViewSet) WorkspaceRoot(com.google.idea.blaze.base.model.primitives.WorkspaceRoot) ApplicationManager(com.intellij.openapi.application.ApplicationManager) TargetKey(com.google.idea.blaze.base.ideinfo.TargetKey) ArtifactLocationDecoder(com.google.idea.blaze.base.sync.workspace.ArtifactLocationDecoder) BlazeAndroidSyncData(com.google.idea.blaze.android.sync.model.BlazeAndroidSyncData) BlazeContext(com.google.idea.blaze.base.scope.BlazeContext) RunConfiguration(com.intellij.execution.configurations.RunConfiguration) ModuleResourceRepository(com.android.tools.idea.res.ModuleResourceRepository) AndroidSdkPlatform(com.google.idea.blaze.android.sync.model.AndroidSdkPlatform) AndroidIdeInfo(com.google.idea.blaze.base.ideinfo.AndroidIdeInfo) Kind(com.google.idea.blaze.base.model.primitives.Kind) Lists(com.google.common.collect.Lists) ImmutableList(com.google.common.collect.ImmutableList) BoolExperiment(com.google.idea.common.experiments.BoolExperiment) ModuleEditorProvider(com.google.idea.blaze.base.sync.projectstructure.ModuleEditorProvider) RunManager(com.intellij.execution.RunManager) TargetIdeInfo(com.google.idea.blaze.base.ideinfo.TargetIdeInfo) Project(com.intellij.openapi.project.Project) SourceProvider(com.android.builder.model.SourceProvider) Nullable(javax.annotation.Nullable) BlazeSyncPlugin(com.google.idea.blaze.base.sync.BlazeSyncPlugin) ArtifactLocation(com.google.idea.blaze.base.ideinfo.ArtifactLocation) BlazeAndroidRunConfigurationHandler(com.google.idea.blaze.android.run.BlazeAndroidRunConfigurationHandler) Executor(java.util.concurrent.Executor) BlazeImportSettingsManager(com.google.idea.blaze.base.settings.BlazeImportSettingsManager) AndroidFacet(org.jetbrains.android.facet.AndroidFacet) Maps(com.google.common.collect.Maps) File(java.io.File) BlazeAndroidModel(com.google.idea.blaze.android.sync.model.idea.BlazeAndroidModel) Label(com.google.idea.blaze.base.model.primitives.Label) ModuleFinder(com.google.idea.blaze.base.sync.projectstructure.ModuleFinder) AndroidResourceModule(com.google.idea.blaze.android.sync.model.AndroidResourceModule) TargetIdeInfo(com.google.idea.blaze.base.ideinfo.TargetIdeInfo) AndroidSdkPlatform(com.google.idea.blaze.android.sync.model.AndroidSdkPlatform) Executor(java.util.concurrent.Executor) ArtifactLocationDecoder(com.google.idea.blaze.base.sync.workspace.ArtifactLocationDecoder) TargetKey(com.google.idea.blaze.base.ideinfo.TargetKey) BlazeAndroidSyncData(com.google.idea.blaze.android.sync.model.BlazeAndroidSyncData) Module(com.intellij.openapi.module.Module) AndroidResourceModule(com.google.idea.blaze.android.sync.model.AndroidResourceModule) AndroidIdeInfo(com.google.idea.blaze.base.ideinfo.AndroidIdeInfo)

Example 9 with AndroidIdeInfo

use of com.google.idea.blaze.base.ideinfo.AndroidIdeInfo in project intellij by bazelbuild.

the class BlazeAndroidProjectStructureSyncer method updateProjectStructure.

public static void updateProjectStructure(Project project, BlazeContext context, ProjectViewSet projectViewSet, BlazeProjectData blazeProjectData, BlazeSyncPlugin.ModuleEditor moduleEditor, Module workspaceModule, ModifiableRootModel workspaceModifiableModel, boolean isAndroidWorkspace) {
    if (!isAndroidWorkspace) {
        AndroidFacetModuleCustomizer.removeAndroidFacet(workspaceModule);
        return;
    }
    BlazeAndroidSyncData syncData = blazeProjectData.syncState.get(BlazeAndroidSyncData.class);
    if (syncData == null) {
        return;
    }
    AndroidSdkPlatform androidSdkPlatform = syncData.androidSdkPlatform;
    if (androidSdkPlatform == null) {
        return;
    }
    // Configure workspace module as an android module
    AndroidFacetModuleCustomizer.createAndroidFacet(workspaceModule);
    Module libraryResourcesModule = null;
    if (useLibraryResourcesModule.getValue()) {
        libraryResourcesModule = moduleEditor.createModule(LIBRARY_RESOURCES_MODULE_NAME, StdModuleTypes.JAVA);
        AndroidFacetModuleCustomizer.createAndroidFacet(libraryResourcesModule);
    }
    // Create android resource modules
    // Because we're setting up dependencies, the modules have to exist before we configure them
    Map<TargetKey, AndroidResourceModule> targetToAndroidResourceModule = Maps.newHashMap();
    for (AndroidResourceModule androidResourceModule : syncData.importResult.androidResourceModules) {
        targetToAndroidResourceModule.put(androidResourceModule.targetKey, androidResourceModule);
        String moduleName = moduleNameForAndroidModule(androidResourceModule.targetKey);
        Module module = moduleEditor.createModule(moduleName, StdModuleTypes.JAVA);
        AndroidFacetModuleCustomizer.createAndroidFacet(module);
    }
    // Configure android resource modules
    int totalOrderEntries = 0;
    Set<File> existingRoots = Sets.newHashSet();
    for (AndroidResourceModule androidResourceModule : targetToAndroidResourceModule.values()) {
        TargetIdeInfo target = blazeProjectData.targetMap.get(androidResourceModule.targetKey);
        AndroidIdeInfo androidIdeInfo = target.androidIdeInfo;
        assert androidIdeInfo != null;
        String moduleName = moduleNameForAndroidModule(target.key);
        Module module = moduleEditor.findModule(moduleName);
        assert module != null;
        ModifiableRootModel modifiableRootModel = moduleEditor.editModule(module);
        Collection<File> resources = blazeProjectData.artifactLocationDecoder.decodeAll(androidResourceModule.resources);
        if (useCyclicResourceDependency.getValue()) {
            // Remove existing resource roots to silence the duplicate content root error.
            // We can only do this if we have cyclic resource dependencies, since otherwise we risk
            // breaking dependencies within this resource module.
            resources.removeAll(existingRoots);
            existingRoots.addAll(resources);
        }
        ResourceModuleContentRootCustomizer.setupContentRoots(modifiableRootModel, resources);
        if (useCyclicResourceDependency.getValue()) {
            modifiableRootModel.addModuleOrderEntry(workspaceModule);
            ++totalOrderEntries;
        } else {
            for (TargetKey resourceDependency : androidResourceModule.transitiveResourceDependencies) {
                if (!targetToAndroidResourceModule.containsKey(resourceDependency)) {
                    continue;
                }
                String dependencyModuleName = moduleNameForAndroidModule(resourceDependency);
                Module dependency = moduleEditor.findModule(dependencyModuleName);
                if (dependency == null) {
                    continue;
                }
                modifiableRootModel.addModuleOrderEntry(dependency);
                ++totalOrderEntries;
            }
        }
        if (libraryResourcesModule != null) {
            // Add a dependency from the resource module to the shared library resources module
            modifiableRootModel.addModuleOrderEntry(libraryResourcesModule);
            ++totalOrderEntries;
        }
        // Add a dependency from the workspace to the resource module
        ModuleOrderEntry orderEntry = workspaceModifiableModel.addModuleOrderEntry(module);
        ++totalOrderEntries;
        if (useCyclicResourceDependency.getValue()) {
            orderEntry.setExported(true);
        }
    }
    List<TargetIdeInfo> runConfigurationTargets = getRunConfigurationTargets(project, projectViewSet, blazeProjectData, targetToAndroidResourceModule.keySet());
    for (TargetIdeInfo target : runConfigurationTargets) {
        TargetKey targetKey = target.key;
        String moduleName = moduleNameForAndroidModule(targetKey);
        Module module = moduleEditor.createModule(moduleName, StdModuleTypes.JAVA);
        AndroidFacetModuleCustomizer.createAndroidFacet(module);
    }
    int whitelistedGenResources = projectViewSet.listItems(GeneratedAndroidResourcesSection.KEY).size();
    context.output(PrintOutput.log(String.format("Android resource module count: %d, run config modules: %d, order entries: %d, " + "generated resources: %d", syncData.importResult.androidResourceModules.size(), runConfigurationTargets.size(), totalOrderEntries, whitelistedGenResources)));
}
Also used : AndroidResourceModule(com.google.idea.blaze.android.sync.model.AndroidResourceModule) TargetIdeInfo(com.google.idea.blaze.base.ideinfo.TargetIdeInfo) ModifiableRootModel(com.intellij.openapi.roots.ModifiableRootModel) AndroidSdkPlatform(com.google.idea.blaze.android.sync.model.AndroidSdkPlatform) ModuleOrderEntry(com.intellij.openapi.roots.ModuleOrderEntry) TargetKey(com.google.idea.blaze.base.ideinfo.TargetKey) BlazeAndroidSyncData(com.google.idea.blaze.android.sync.model.BlazeAndroidSyncData) Module(com.intellij.openapi.module.Module) AndroidResourceModule(com.google.idea.blaze.android.sync.model.AndroidResourceModule) AndroidIdeInfo(com.google.idea.blaze.base.ideinfo.AndroidIdeInfo) File(java.io.File)

Example 10 with AndroidIdeInfo

use of com.google.idea.blaze.base.ideinfo.AndroidIdeInfo in project intellij by bazelbuild.

the class IdeInfoFromProtobuf method makeTargetIdeInfo.

@Nullable
public static TargetIdeInfo makeTargetIdeInfo(IntellijIdeInfo.TargetIdeInfo message) {
    Kind kind = getKind(message);
    if (kind == null) {
        return null;
    }
    TargetKey key = getKey(message);
    ArtifactLocation buildFile = getBuildFile(message);
    final Collection<Dependency> dependencies;
    if (message.getDepsCount() > 0) {
        dependencies = message.getDepsList().stream().map(IdeInfoFromProtobuf::makeDependency).collect(toList());
    } else {
        dependencies = Lists.newArrayListWithCapacity(message.getDependenciesCount() + message.getRuntimeDepsCount());
        dependencies.addAll(makeDependencyListFromLabelList(message.getDependenciesList(), DependencyType.COMPILE_TIME));
        dependencies.addAll(makeDependencyListFromLabelList(message.getRuntimeDepsList(), DependencyType.RUNTIME));
    }
    Collection<String> tags = ImmutableList.copyOf(message.getTagsList());
    Collection<ArtifactLocation> sources = Lists.newArrayList();
    CIdeInfo cIdeInfo = null;
    if (message.hasCIdeInfo()) {
        cIdeInfo = makeCIdeInfo(message.getCIdeInfo());
        sources.addAll(cIdeInfo.sources);
        sources.addAll(cIdeInfo.headers);
        sources.addAll(cIdeInfo.textualHeaders);
    }
    CToolchainIdeInfo cToolchainIdeInfo = null;
    if (message.hasCToolchainIdeInfo()) {
        cToolchainIdeInfo = makeCToolchainIdeInfo(message.getCToolchainIdeInfo());
    }
    JavaIdeInfo javaIdeInfo = null;
    if (message.hasJavaIdeInfo()) {
        javaIdeInfo = makeJavaIdeInfo(message.getJavaIdeInfo());
        Collection<ArtifactLocation> javaSources = makeArtifactLocationList(message.getJavaIdeInfo().getSourcesList());
        sources.addAll(javaSources);
    }
    AndroidIdeInfo androidIdeInfo = null;
    if (message.hasAndroidIdeInfo()) {
        androidIdeInfo = makeAndroidIdeInfo(message.getAndroidIdeInfo());
    }
    AndroidSdkIdeInfo androidSdkIdeInfo = null;
    if (message.hasAndroidSdkIdeInfo()) {
        androidSdkIdeInfo = makeAndroidSdkIdeInfo(message.getAndroidSdkIdeInfo());
    }
    AndroidAarIdeInfo androidAarIdeInfo = null;
    if (message.hasAndroidAarIdeInfo()) {
        androidAarIdeInfo = makeAndroidAarIdeInfo(message.getAndroidAarIdeInfo());
    }
    PyIdeInfo pyIdeInfo = null;
    if (message.hasPyIdeInfo()) {
        pyIdeInfo = makePyIdeInfo(message.getPyIdeInfo());
        sources.addAll(pyIdeInfo.sources);
    }
    GoIdeInfo goIdeInfo = null;
    if (message.hasGoIdeInfo()) {
        goIdeInfo = makeGoIdeInfo(message.getGoIdeInfo());
        sources.addAll(goIdeInfo.sources);
    }
    JsIdeInfo jsIdeInfo = null;
    if (message.hasJsIdeInfo()) {
        jsIdeInfo = makeJsIdeInfo(message.getJsIdeInfo());
        sources.addAll(jsIdeInfo.sources);
    }
    TsIdeInfo tsIdeInfo = null;
    if (message.hasTsIdeInfo()) {
        tsIdeInfo = makeTsIdeInfo(message.getTsIdeInfo());
        sources.addAll(tsIdeInfo.sources);
    }
    DartIdeInfo dartIdeInfo = null;
    if (message.hasDartIdeInfo()) {
        dartIdeInfo = makeDartIdeInfo(message.getDartIdeInfo());
        sources.addAll(dartIdeInfo.sources);
    }
    TestIdeInfo testIdeInfo = null;
    if (message.hasTestInfo()) {
        testIdeInfo = makeTestIdeInfo(message.getTestInfo());
    }
    ProtoLibraryLegacyInfo protoLibraryLegacyInfo = null;
    if (message.hasProtoLibraryLegacyJavaIdeInfo()) {
        protoLibraryLegacyInfo = makeProtoLibraryLegacyInfo(message.getProtoLibraryLegacyJavaIdeInfo());
    }
    JavaToolchainIdeInfo javaToolchainIdeInfo = null;
    if (message.hasJavaToolchainIdeInfo()) {
        javaToolchainIdeInfo = makeJavaToolchainIdeInfo(message.getJavaToolchainIdeInfo());
    }
    return new TargetIdeInfo(key, kind, buildFile, dependencies, tags, sources, cIdeInfo, cToolchainIdeInfo, javaIdeInfo, androidIdeInfo, androidSdkIdeInfo, androidAarIdeInfo, pyIdeInfo, goIdeInfo, jsIdeInfo, tsIdeInfo, dartIdeInfo, testIdeInfo, protoLibraryLegacyInfo, javaToolchainIdeInfo);
}
Also used : TsIdeInfo(com.google.idea.blaze.base.ideinfo.TsIdeInfo) PyIdeInfo(com.google.idea.blaze.base.ideinfo.PyIdeInfo) JsIdeInfo(com.google.idea.blaze.base.ideinfo.JsIdeInfo) GoIdeInfo(com.google.idea.blaze.base.ideinfo.GoIdeInfo) Dependency(com.google.idea.blaze.base.ideinfo.Dependency) DartIdeInfo(com.google.idea.blaze.base.ideinfo.DartIdeInfo) TestIdeInfo(com.google.idea.blaze.base.ideinfo.TestIdeInfo) ProtoLibraryLegacyInfo(com.google.idea.blaze.base.ideinfo.ProtoLibraryLegacyInfo) TargetIdeInfo(com.google.idea.blaze.base.ideinfo.TargetIdeInfo) JavaToolchainIdeInfo(com.google.idea.blaze.base.ideinfo.JavaToolchainIdeInfo) CToolchainIdeInfo(com.google.idea.blaze.base.ideinfo.CToolchainIdeInfo) AndroidAarIdeInfo(com.google.idea.blaze.base.ideinfo.AndroidAarIdeInfo) Kind(com.google.idea.blaze.base.model.primitives.Kind) ArtifactLocation(com.google.idea.blaze.base.ideinfo.ArtifactLocation) CIdeInfo(com.google.idea.blaze.base.ideinfo.CIdeInfo) TargetKey(com.google.idea.blaze.base.ideinfo.TargetKey) JavaIdeInfo(com.google.idea.blaze.base.ideinfo.JavaIdeInfo) AndroidIdeInfo(com.google.idea.blaze.base.ideinfo.AndroidIdeInfo) AndroidSdkIdeInfo(com.google.idea.blaze.base.ideinfo.AndroidSdkIdeInfo) Nullable(javax.annotation.Nullable)

Aggregations

AndroidIdeInfo (com.google.idea.blaze.base.ideinfo.AndroidIdeInfo)10 TargetKey (com.google.idea.blaze.base.ideinfo.TargetKey)7 TargetIdeInfo (com.google.idea.blaze.base.ideinfo.TargetIdeInfo)6 AndroidResourceModule (com.google.idea.blaze.android.sync.model.AndroidResourceModule)4 ArtifactLocation (com.google.idea.blaze.base.ideinfo.ArtifactLocation)4 LibraryArtifact (com.google.idea.blaze.base.ideinfo.LibraryArtifact)4 Kind (com.google.idea.blaze.base.model.primitives.Kind)4 ImmutableList (com.google.common.collect.ImmutableList)3 GeneratedAndroidResourcesSection (com.google.idea.blaze.android.projectview.GeneratedAndroidResourcesSection)3 Lists (com.google.common.collect.Lists)2 Sets (com.google.common.collect.Sets)2 TransitiveResourceMap (com.google.idea.blaze.android.sync.importer.aggregators.TransitiveResourceMap)2 AndroidResourceModuleRegistry (com.google.idea.blaze.android.sync.model.AndroidResourceModuleRegistry)2 AndroidSdkPlatform (com.google.idea.blaze.android.sync.model.AndroidSdkPlatform)2 BlazeAndroidSyncData (com.google.idea.blaze.android.sync.model.BlazeAndroidSyncData)2 JavaIdeInfo (com.google.idea.blaze.base.ideinfo.JavaIdeInfo)2 TargetMap (com.google.idea.blaze.base.ideinfo.TargetMap)2 LanguageClass (com.google.idea.blaze.base.model.primitives.LanguageClass)2 ProjectViewSet (com.google.idea.blaze.base.projectview.ProjectViewSet)2 ArtifactLocationDecoder (com.google.idea.blaze.base.sync.workspace.ArtifactLocationDecoder)2