diff options
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/AndroidDataMerger.java | 10 | ||||
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/DataResourceXml.java (renamed from src/tools/android/java/com/google/devtools/build/android/XmlDataResource.java) | 20 | ||||
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/DataValueFile.java (renamed from src/tools/android/java/com/google/devtools/build/android/FileDataResource.java) | 16 | ||||
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/ParsedAndroidData.java (renamed from src/tools/android/java/com/google/devtools/build/android/AndroidDataSet.java) | 58 | ||||
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/UnwrittenMergedAndroidData.java | 13 | ||||
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/XmlResourceValues.java | 6 |
6 files changed, 62 insertions, 61 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/AndroidDataMerger.java b/src/tools/android/java/com/google/devtools/build/android/AndroidDataMerger.java index df6d9ab8f8..965579ef30 100644 --- a/src/tools/android/java/com/google/devtools/build/android/AndroidDataMerger.java +++ b/src/tools/android/java/com/google/devtools/build/android/AndroidDataMerger.java @@ -29,7 +29,7 @@ import java.util.Map; import java.util.Set; /** - * Handles the Merging of AndroidDataSet. + * Handles the Merging of ParsedAndroidData. */ public class AndroidDataMerger { @@ -90,14 +90,14 @@ public class AndroidDataMerger { * @throws IOException if there are issues with reading resources. */ UnwrittenMergedAndroidData merge( - AndroidDataSet transitive, - AndroidDataSet direct, + ParsedAndroidData transitive, + ParsedAndroidData direct, UnvalidatedAndroidData primaryData, boolean allowPrimaryOverrideAll) throws MergingException, IOException { // Extract the primary resources. - AndroidDataSet primary = AndroidDataSet.from(primaryData); + ParsedAndroidData primary = ParsedAndroidData.from(primaryData); Map<DataKey, DataResource> overwritableDeps = new HashMap<>(); Map<DataKey, DataAsset> assets = new HashMap<>(); @@ -181,7 +181,7 @@ public class AndroidDataMerger { return UnwrittenMergedAndroidData.of( primaryData.getManifest(), primary, - AndroidDataSet.of( + ParsedAndroidData.of( ImmutableSet.<MergeConflict>of(), ImmutableMap.copyOf(overwritableDeps), direct.mergeNonOverwritable(transitive), diff --git a/src/tools/android/java/com/google/devtools/build/android/XmlDataResource.java b/src/tools/android/java/com/google/devtools/build/android/DataResourceXml.java index fd8c47084a..ac5b392800 100644 --- a/src/tools/android/java/com/google/devtools/build/android/XmlDataResource.java +++ b/src/tools/android/java/com/google/devtools/build/android/DataResourceXml.java @@ -17,8 +17,8 @@ import static com.android.resources.ResourceType.DECLARE_STYLEABLE; import static com.android.resources.ResourceType.ID; import com.google.common.base.MoreObjects; -import com.google.devtools.build.android.AndroidDataSet.KeyValueConsumer; import com.google.devtools.build.android.FullyQualifiedName.Factory; +import com.google.devtools.build.android.ParsedAndroidData.KeyValueConsumer; import com.google.devtools.build.android.xml.ArrayXmlResourceValue; import com.android.resources.ResourceType; @@ -41,7 +41,7 @@ import javax.xml.stream.events.StartElement; * <p>Basically, if the resource is defined inside a <resources> tag, this class will * handle it. Layouts are treated separately as they don't declare anything besides ids. */ -public class XmlDataResource implements DataResource { +public class DataResourceXml implements DataResource { /** * Parses xml resources from a Path to the provided overwritable and nonOverwritable collections. @@ -52,8 +52,8 @@ public class XmlDataResource implements DataResource { * @param xmlInputFactory Used to create an XMLEventReader from the supplied resource path. * @param path The path to the xml resource to be parsed. * @param fqnFactory Used to create {@link FullyQualifiedName}s from the resource names. - * @param overwritingConsumer A consumer for overwritable {@link XmlDataResource}s. - * @param nonOverwritingConsumer A consumer for nonoverwritable {@link XmlDataResource}s. + * @param overwritingConsumer A consumer for overwritable {@link DataResourceXml}s. + * @param nonOverwritingConsumer A consumer for nonoverwritable {@link DataResourceXml}s. * @throws XMLStreamException Thrown with the resource format is invalid. * @throws FactoryConfigurationError Thrown with the {@link XMLInputFactory} is misconfigured. * @throws IOException Thrown when there is an error reading a file. @@ -85,7 +85,7 @@ public class XmlDataResource implements DataResource { FullyQualifiedName key = fqnFactory.create(resourceType, XmlResourceValues.getElementName(start)); consumer.consume( - key, XmlDataResource.of(path, parseXmlElements(resourceType, eventReader, start))); + key, DataResourceXml.of(path, parseXmlElements(resourceType, eventReader, start))); } } } @@ -126,13 +126,13 @@ public class XmlDataResource implements DataResource { private Path source; private XmlResourceValue xml; - private XmlDataResource(Path source, XmlResourceValue xmlValue) { + private DataResourceXml(Path source, XmlResourceValue xmlValue) { this.source = source; this.xml = xmlValue; } - public static XmlDataResource of(Path source, XmlResourceValue xml) { - return new XmlDataResource(source, xml); + public static DataResourceXml of(Path source, XmlResourceValue xml) { + return new DataResourceXml(source, xml); } @Override @@ -147,10 +147,10 @@ public class XmlDataResource implements DataResource { @Override public boolean equals(Object obj) { - if (!(obj instanceof XmlDataResource)) { + if (!(obj instanceof DataResourceXml)) { return false; } - XmlDataResource other = (XmlDataResource) obj; + DataResourceXml other = (DataResourceXml) obj; return Objects.equals(source, other.source) && Objects.equals(xml, other.xml); } diff --git a/src/tools/android/java/com/google/devtools/build/android/FileDataResource.java b/src/tools/android/java/com/google/devtools/build/android/DataValueFile.java index dc372f4977..4ee0a7d91d 100644 --- a/src/tools/android/java/com/google/devtools/build/android/FileDataResource.java +++ b/src/tools/android/java/com/google/devtools/build/android/DataValueFile.java @@ -24,16 +24,16 @@ import java.util.Objects; * * These include all resource types except those found in values, as well as all assets. */ -public class FileDataResource implements DataResource, DataAsset { +public class DataValueFile implements DataResource, DataAsset { private final Path source; - private FileDataResource(Path source) { + private DataValueFile(Path source) { this.source = source; } - public static FileDataResource of(Path source) { - return new FileDataResource(source); + public static DataValueFile of(Path source) { + return new DataValueFile(source); } @Override @@ -43,18 +43,16 @@ public class FileDataResource implements DataResource, DataAsset { @Override public boolean equals(Object obj) { - if (!(obj instanceof FileDataResource)) { + if (!(obj instanceof DataValueFile)) { return false; } - FileDataResource resource = (FileDataResource) obj; + DataValueFile resource = (DataValueFile) obj; return Objects.equals(source, resource.source); } @Override public String toString() { - return MoreObjects.toStringHelper(getClass()) - .add("source", source) - .toString(); + return MoreObjects.toStringHelper(getClass()).add("source", source).toString(); } @Override diff --git a/src/tools/android/java/com/google/devtools/build/android/AndroidDataSet.java b/src/tools/android/java/com/google/devtools/build/android/ParsedAndroidData.java index 458ff939c3..cc4311a209 100644 --- a/src/tools/android/java/com/google/devtools/build/android/AndroidDataSet.java +++ b/src/tools/android/java/com/google/devtools/build/android/ParsedAndroidData.java @@ -44,12 +44,12 @@ import javax.xml.stream.XMLStreamException; /** * Represents a collection of Android Resources. * - * The AndroidDataSet is the primary building block for merging several AndroidDependencies + * The ParsedAndroidData is the primary building block for merging several AndroidDependencies * together. It extracts the android resource symbols (e.g. R.string.Foo) from the xml files to * allow an AndroidDataMerger to consume and produce a merged set of data. */ @Immutable -public class AndroidDataSet { +public class ParsedAndroidData { /** A Consumer style interface that will accept a DataKey and DataValue. */ interface KeyValueConsumer<K extends DataKey, V extends DataValue> { @@ -95,9 +95,9 @@ public class AndroidDataSet { } /** - * An AndroidDataPathWalker that collects DataAsset and DataResources for an AndroidDataSet. + * An AndroidDataPathWalker that collects DataAsset and DataResources for an ParsedAndroidData. */ - private static final class AndroidDataSetBuildingPathWalker implements AndroidDataPathWalker { + private static final class ParsedAndroidDataBuildingPathWalker implements AndroidDataPathWalker { private final Set<MergeConflict> conflicts; private final Map<DataKey, DataAsset> assets; private final ResourceFileVisitor resourceVisitor; @@ -106,7 +106,7 @@ public class AndroidDataSet { private Map<DataKey, DataResource> overwritingResources; private Map<DataKey, DataResource> nonOverwritingResources; - private static AndroidDataSetBuildingPathWalker create() { + private static ParsedAndroidDataBuildingPathWalker create() { final Map<DataKey, DataResource> overwritingResources = new HashMap<>(); final Map<DataKey, DataResource> nonOverwritingResources = new HashMap<>(); final Map<DataKey, DataAsset> assets = new HashMap<>(); @@ -116,11 +116,11 @@ public class AndroidDataSet { new ResourceFileVisitor( new OverwritableConsumer<>(overwritingResources, conflicts), new NonOverwritableConsumer(nonOverwritingResources)); - return new AndroidDataSetBuildingPathWalker( + return new ParsedAndroidDataBuildingPathWalker( conflicts, assets, overwritingResources, nonOverwritingResources, resourceVisitor); } - private AndroidDataSetBuildingPathWalker( + private ParsedAndroidDataBuildingPathWalker( Set<MergeConflict> conflicts, Map<DataKey, DataAsset> assets, Map<DataKey, DataResource> overwritingResources, @@ -149,11 +149,11 @@ public class AndroidDataSet { } /** - * Creates an {@link AndroidDataSet} from {@link DataAsset} and {@link DataResource} instances. + * Creates an {@link ParsedAndroidData} from {@link DataAsset} and {@link DataResource}. */ - public AndroidDataSet createAndroidDataSet() throws MergingException { + public ParsedAndroidData createParsedAndroidData() throws MergingException { resourceVisitor.checkForErrors(); - return AndroidDataSet.of( + return ParsedAndroidData.of( ImmutableSet.copyOf(conflicts), ImmutableMap.copyOf(overwritingResources), ImmutableMap.copyOf(nonOverwritingResources), @@ -179,7 +179,7 @@ public class AndroidDataSet { public FileVisitResult visitFile(Path path, BasicFileAttributes attrs) throws IOException { if (!Files.isDirectory(path)) { RelativeAssetPath key = dataKeyFactory.create(path); - FileDataResource asset = FileDataResource.of(path); + DataValueFile asset = DataValueFile.of(path); assetConsumer.consume(key, asset); } return super.visitFile(path, attrs); @@ -253,12 +253,12 @@ public class AndroidDataSet { try { if (!Files.isDirectory(path)) { if (inValuesSubtree) { - XmlDataResource.fromPath( + DataResourceXml.fromPath( xmlInputFactory, path, fqnFactory, overwritingConsumer, nonOverwritingConsumer); } else { String rawFqn = deriveRawFullyQualifiedName(path); FullyQualifiedName key = fqnFactory.parse(rawFqn); - overwritingConsumer.consume(key, FileDataResource.of(path)); + overwritingConsumer.consume(key, DataValueFile.of(path)); } } } catch (IllegalArgumentException | XMLStreamException e) { @@ -272,17 +272,17 @@ public class AndroidDataSet { } } - /** Creates AndroidDataSet of conflicts, assets overwriting and nonOverwriting resources. */ - public static AndroidDataSet of( + /** Creates ParsedAndroidData of conflicts, assets overwriting and nonOverwriting resources. */ + public static ParsedAndroidData of( ImmutableSet<MergeConflict> conflicts, ImmutableMap<DataKey, DataResource> overwritingResources, ImmutableMap<DataKey, DataResource> nonOverwritingResources, ImmutableMap<DataKey, DataAsset> assets) { - return new AndroidDataSet(conflicts, overwritingResources, nonOverwritingResources, assets); + return new ParsedAndroidData(conflicts, overwritingResources, nonOverwritingResources, assets); } /** - * Creates an AndroidDataSet from an UnvalidatedAndroidData. + * Creates an ParsedAndroidData from an UnvalidatedAndroidData. * * The adding process parses out all the provided symbol into DataResources and DataAssets * objects. @@ -291,15 +291,16 @@ public class AndroidDataSet { * @throws IOException when there are issues with reading files. * @throws MergingException when there is invalid resource information. */ - public static AndroidDataSet from(UnvalidatedAndroidData primary) + public static ParsedAndroidData from(UnvalidatedAndroidData primary) throws IOException, MergingException { - final AndroidDataSetBuildingPathWalker pathWalker = AndroidDataSetBuildingPathWalker.create(); + final ParsedAndroidDataBuildingPathWalker pathWalker = + ParsedAndroidDataBuildingPathWalker.create(); primary.walk(pathWalker); - return pathWalker.createAndroidDataSet(); + return pathWalker.createParsedAndroidData(); } /** - * Creates an AndroidDataSet from a list of DependencyAndroidData instances. + * Creates an ParsedAndroidData from a list of DependencyAndroidData instances. * * The adding process parses out all the provided symbol into DataResources and DataAssets * objects. @@ -309,13 +310,14 @@ public class AndroidDataSet { * @throws IOException when there are issues with reading files. * @throws MergingException when there is invalid resource information. */ - public static AndroidDataSet from(List<DependencyAndroidData> dependencyAndroidDataList) + public static ParsedAndroidData from(List<DependencyAndroidData> dependencyAndroidDataList) throws IOException, MergingException { - final AndroidDataSetBuildingPathWalker pathWalker = AndroidDataSetBuildingPathWalker.create(); + final ParsedAndroidDataBuildingPathWalker pathWalker = + ParsedAndroidDataBuildingPathWalker.create(); for (DependencyAndroidData data : dependencyAndroidDataList) { data.walk(pathWalker); } - return pathWalker.createAndroidDataSet(); + return pathWalker.createParsedAndroidData(); } private final ImmutableSet<MergeConflict> conflicts; @@ -323,7 +325,7 @@ public class AndroidDataSet { private final ImmutableMap<DataKey, DataResource> nonOverwritingResources; private final ImmutableMap<DataKey, DataAsset> assets; - private AndroidDataSet( + private ParsedAndroidData( ImmutableSet<MergeConflict> conflicts, ImmutableMap<DataKey, DataResource> overwritingResources, ImmutableMap<DataKey, DataResource> nonOverwritingResources, @@ -348,10 +350,10 @@ public class AndroidDataSet { if (this == other) { return true; } - if (!(other instanceof AndroidDataSet)) { + if (!(other instanceof ParsedAndroidData)) { return false; } - AndroidDataSet that = (AndroidDataSet) other; + ParsedAndroidData that = (ParsedAndroidData) other; return Objects.equals(overwritingResources, that.overwritingResources) && Objects.equals(nonOverwritingResources, that.nonOverwritingResources) && Objects.equals(conflicts, that.conflicts) @@ -430,7 +432,7 @@ public class AndroidDataSet { return MergeConflict.between(key, assets.get(key), value); } - ImmutableMap<DataKey, DataResource> mergeNonOverwritable(AndroidDataSet other) { + ImmutableMap<DataKey, DataResource> mergeNonOverwritable(ParsedAndroidData other) { Map<DataKey, DataResource> merged = new HashMap<>(other.nonOverwritingResources); merged.putAll(nonOverwritingResources); return ImmutableMap.copyOf(merged); diff --git a/src/tools/android/java/com/google/devtools/build/android/UnwrittenMergedAndroidData.java b/src/tools/android/java/com/google/devtools/build/android/UnwrittenMergedAndroidData.java index 1a19fc133c..30cb43f289 100644 --- a/src/tools/android/java/com/google/devtools/build/android/UnwrittenMergedAndroidData.java +++ b/src/tools/android/java/com/google/devtools/build/android/UnwrittenMergedAndroidData.java @@ -26,15 +26,16 @@ import java.util.Objects; public class UnwrittenMergedAndroidData { private final Path manifest; - private final AndroidDataSet resources; - private final AndroidDataSet deps; + private final ParsedAndroidData resources; + private final ParsedAndroidData deps; public static UnwrittenMergedAndroidData of( - Path manifest, AndroidDataSet resources, AndroidDataSet deps) { + Path manifest, ParsedAndroidData resources, ParsedAndroidData deps) { return new UnwrittenMergedAndroidData(manifest, resources, deps); } - private UnwrittenMergedAndroidData(Path manifest, AndroidDataSet resources, AndroidDataSet deps) { + private UnwrittenMergedAndroidData( + Path manifest, ParsedAndroidData resources, ParsedAndroidData deps) { this.manifest = manifest; this.resources = resources; this.deps = deps; @@ -85,12 +86,12 @@ public class UnwrittenMergedAndroidData { } @VisibleForTesting - AndroidDataSet getResources() { + ParsedAndroidData getResources() { return resources; } @VisibleForTesting - AndroidDataSet getDeps() { + ParsedAndroidData getDeps() { return deps; } } diff --git a/src/tools/android/java/com/google/devtools/build/android/XmlResourceValues.java b/src/tools/android/java/com/google/devtools/build/android/XmlResourceValues.java index dc12b84126..c686829385 100644 --- a/src/tools/android/java/com/google/devtools/build/android/XmlResourceValues.java +++ b/src/tools/android/java/com/google/devtools/build/android/XmlResourceValues.java @@ -13,7 +13,7 @@ // limitations under the License. package com.google.devtools.build.android; -import com.google.devtools.build.android.AndroidDataSet.KeyValueConsumer; +import com.google.devtools.build.android.ParsedAndroidData.KeyValueConsumer; import com.google.devtools.build.android.xml.AttrXmlResourceValue; import com.google.devtools.build.android.xml.IdXmlResourceValue; import com.google.devtools.build.android.xml.PluralXmlResourceValue; @@ -101,12 +101,12 @@ public class XmlResourceValues { members.add(getElementName(attr)); overwritingConsumer.consume( fqnFactory.create(ResourceType.ATTR, getElementName(attr)), - XmlDataResource.of(path, parseAttr(eventReader, start))); + DataResourceXml.of(path, parseAttr(eventReader, start))); } } nonOverwritingConsumer.consume( fqnFactory.create(ResourceType.STYLEABLE, getElementName(start)), - XmlDataResource.of(path, StyleableXmlResourceValue.of(members))); + DataResourceXml.of(path, StyleableXmlResourceValue.of(members))); } static XmlResourceValue parseAttr(XMLEventReader eventReader, StartElement start) |