@Nullable @Override public File getAtomMetadataBaseFolder() { return atomDependency.getAtomMetadataFile().getParentFile(); }
@Override public void execute(@NonNull GenerateAtomMetadata generateAtomMetadata) { AtomVariantOutputData variantOutputData = (AtomVariantOutputData) scope .getVariantOutputData(); // only care about first level direct atoms? DependencyContainer dependencyContainer = scope.getVariantScope().getVariantConfiguration().getPackageDependencies(); ImmutableSet.Builder<File> atomMetadataBuilder = ImmutableSet.builder(); for (AtomDependency atom : dependencyContainer.getDirectAtomDependencies()) { atomMetadataBuilder.add(atom.getAtomMetadataFile()); } generateAtomMetadata.setAtomMetadataDependency(atomMetadataBuilder.build()); generateAtomMetadata.setAtomName(scope.getGlobalScope().getProject().getName()); String versionName = variantOutputData.getVersionName(); checkState(!Strings.isNullOrEmpty(versionName), "versionName is not specified."); generateAtomMetadata.setAtomVersion(versionName); generateAtomMetadata.setAtomMetadataFolder(FileUtils.join( scope.getVariantScope().getBaseBundleDir(), FD_INSTANTAPP_METADATA)); generateAtomMetadata.setVariantName(variantOutputData.getFullName()); variantOutputData.generateAtomMetadataTask = generateAtomMetadata; }
AndroidAtomImpl(@NonNull AtomDependency clonedAtom) { super( clonedAtom.getProjectPath(), null, clonedAtom.getCoordinates(), false /* isSkipped */, false /*isProvided*/); this.androidAtoms = ImmutableList.of(); this.androidLibraries = ImmutableList.of(); this.javaLibraries = ImmutableList.of(); variant = clonedAtom.getVariant(); bundle = clonedAtom.getArtifactFile(); folder = clonedAtom.getExtractedFolder(); manifest = clonedAtom.getManifest(); jarFile = clonedAtom.getJarFile(); resFolder = clonedAtom.getResFolder(); assetsFolder = clonedAtom.getAssetsFolder(); atomName = clonedAtom.getAtomName(); dexFolder = clonedAtom.getDexFolder(); atomMetadataFile = clonedAtom.getAtomMetadataFile(); libFolder = clonedAtom.getLibFolder(); javaResFolder = clonedAtom.getJavaResFolder(); resourcePackage = clonedAtom.getResourcePackage(); }