aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/tools/android/java/com/google/devtools/build/android/xml
diff options
context:
space:
mode:
authorGravatar corysmith <corysmith@google.com>2017-05-15 16:56:01 +0200
committerGravatar Dmitry Lomov <dslomov@google.com>2017-05-15 19:51:22 +0200
commitda6bbce1ee317f3b4d7ca245058049ab2a032848 (patch)
treec32d28b144454f8ad1ed6c96ab7cebe2f89bb836 /src/tools/android/java/com/google/devtools/build/android/xml
parent296cd4913d40b756e29fbe0aa6055addf228da6d (diff)
Further Refactoring/Yak Shaving
* Extract the FieldInitializer with placeholder ids from the AndroidResourceClassWriter * Extract a resource sink interface from the AndroidResourceClassWriter (a little renaming, the change isn't actually that big.) RELNOTES: None PiperOrigin-RevId: 156053478
Diffstat (limited to 'src/tools/android/java/com/google/devtools/build/android/xml')
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/xml/ArrayXmlResourceValue.java9
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/xml/AttrXmlResourceValue.java43
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/xml/IdXmlResourceValue.java7
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/xml/PluralXmlResourceValue.java7
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/xml/PublicXmlResourceValue.java7
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/xml/ResourcesAttribute.java5
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/xml/SimpleXmlResourceValue.java7
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/xml/StyleXmlResourceValue.java7
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/xml/StyleableXmlResourceValue.java7
9 files changed, 41 insertions, 58 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/xml/ArrayXmlResourceValue.java b/src/tools/android/java/com/google/devtools/build/android/xml/ArrayXmlResourceValue.java
index 721cd29715..e3f5571c7d 100644
--- a/src/tools/android/java/com/google/devtools/build/android/xml/ArrayXmlResourceValue.java
+++ b/src/tools/android/java/com/google/devtools/build/android/xml/ArrayXmlResourceValue.java
@@ -19,7 +19,7 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.android.AndroidDataWritingVisitor;
import com.google.devtools.build.android.AndroidDataWritingVisitor.ValuesResourceDefinition;
-import com.google.devtools.build.android.AndroidResourceClassWriter;
+import com.google.devtools.build.android.AndroidResourceSymbolSink;
import com.google.devtools.build.android.DataSource;
import com.google.devtools.build.android.FullyQualifiedName;
import com.google.devtools.build.android.XmlResourceValue;
@@ -66,7 +66,7 @@ public class ArrayXmlResourceValue implements XmlResourceValue {
ARRAY(TAG_ARRAY),
STRING_ARRAY(TAG_STRING_ARRAY);
- public QName tagName;
+ public final QName tagName;
ArrayType(QName tagName) {
this.tagName = tagName;
@@ -183,9 +183,8 @@ public class ArrayXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeResourceToClass(FullyQualifiedName key,
- AndroidResourceClassWriter resourceClassWriter) {
- resourceClassWriter.writeSimpleResource(key.type(), key.name());
+ public void writeResourceToClass(FullyQualifiedName key, AndroidResourceSymbolSink sink) {
+ sink.acceptSimpleResource(key.type(), key.name());
}
public static XmlResourceValue parseArray(
diff --git a/src/tools/android/java/com/google/devtools/build/android/xml/AttrXmlResourceValue.java b/src/tools/android/java/com/google/devtools/build/android/xml/AttrXmlResourceValue.java
index 252b4cbac6..6be244b115 100644
--- a/src/tools/android/java/com/google/devtools/build/android/xml/AttrXmlResourceValue.java
+++ b/src/tools/android/java/com/google/devtools/build/android/xml/AttrXmlResourceValue.java
@@ -28,7 +28,7 @@ import com.google.common.collect.Ordering;
import com.google.devtools.build.android.AndroidDataWritingVisitor;
import com.google.devtools.build.android.AndroidDataWritingVisitor.StartTag;
import com.google.devtools.build.android.AndroidDataWritingVisitor.ValuesResourceDefinition;
-import com.google.devtools.build.android.AndroidResourceClassWriter;
+import com.google.devtools.build.android.AndroidResourceSymbolSink;
import com.google.devtools.build.android.DataSource;
import com.google.devtools.build.android.FullyQualifiedName;
import com.google.devtools.build.android.XmlResourceValue;
@@ -330,13 +330,12 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeResourceToClass(FullyQualifiedName key,
- AndroidResourceClassWriter resourceClassWriter) {
- resourceClassWriter.writeSimpleResource(key.type(), key.name());
+ public void writeResourceToClass(FullyQualifiedName key, AndroidResourceSymbolSink sink) {
+ sink.acceptSimpleResource(key.type(), key.name());
// Flags and enums generate ID fields.
if (formats.keySet().contains(FLAGS) || formats.keySet().contains(ENUM)) {
for (ResourceXmlAttrValue value : formats.values()) {
- value.writeToClass(resourceClassWriter);
+ value.writeToClass(sink);
}
}
}
@@ -372,7 +371,7 @@ public class AttrXmlResourceValue implements XmlResourceValue {
SerializeFormat.DataValueXml appendTo(SerializeFormat.DataValueXml.Builder builder);
- void writeToClass(AndroidResourceClassWriter writer);
+ void writeToClass(AndroidResourceSymbolSink writer);
}
// TODO(corysmith): The ResourceXmlAttrValue implementors, other than enum and flag, share a
@@ -443,9 +442,9 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
+ public void writeToClass(AndroidResourceSymbolSink writer) {
for (Map.Entry<String, String> entry : values.entrySet()) {
- writer.writeSimpleResource(ResourceType.ID, entry.getKey());
+ writer.acceptSimpleResource(ResourceType.ID, entry.getKey());
}
}
}
@@ -516,9 +515,9 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
+ public void writeToClass(AndroidResourceSymbolSink writer) {
for (Map.Entry<String, String> entry : values.entrySet()) {
- writer.writeSimpleResource(ResourceType.ID, entry.getKey());
+ writer.acceptSimpleResource(ResourceType.ID, entry.getKey());
}
}
}
@@ -549,8 +548,7 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
- }
+ public void writeToClass(AndroidResourceSymbolSink writer) {}
}
/** Represents an Android Color Attribute resource. */
@@ -578,8 +576,7 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
- }
+ public void writeToClass(AndroidResourceSymbolSink writer) {}
}
/** Represents an Android Boolean Attribute resource. */
@@ -607,8 +604,7 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
- }
+ public void writeToClass(AndroidResourceSymbolSink writer) {}
}
/** Represents an Android Float Attribute resource. */
@@ -636,8 +632,7 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
- }
+ public void writeToClass(AndroidResourceSymbolSink writer) {}
}
/** Represents an Android Dimension Attribute resource. */
@@ -666,8 +661,7 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
- }
+ public void writeToClass(AndroidResourceSymbolSink writer) {}
}
/** Represents an Android Integer Attribute resource. */
@@ -695,8 +689,7 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
- }
+ public void writeToClass(AndroidResourceSymbolSink writer) {}
}
/** Represents an Android String Attribute resource. */
@@ -724,8 +717,7 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
- }
+ public void writeToClass(AndroidResourceSymbolSink writer) {}
}
/** Represents an Android Fraction Attribute resource. */
@@ -753,8 +745,7 @@ public class AttrXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeToClass(AndroidResourceClassWriter writer) {
- }
+ public void writeToClass(AndroidResourceSymbolSink writer) {}
}
@Override
diff --git a/src/tools/android/java/com/google/devtools/build/android/xml/IdXmlResourceValue.java b/src/tools/android/java/com/google/devtools/build/android/xml/IdXmlResourceValue.java
index d0a4114c2f..c3fb2faefa 100644
--- a/src/tools/android/java/com/google/devtools/build/android/xml/IdXmlResourceValue.java
+++ b/src/tools/android/java/com/google/devtools/build/android/xml/IdXmlResourceValue.java
@@ -16,7 +16,7 @@ package com.google.devtools.build.android.xml;
import com.google.common.base.MoreObjects;
import com.google.devtools.build.android.AndroidDataWritingVisitor;
import com.google.devtools.build.android.AndroidDataWritingVisitor.StartTag;
-import com.google.devtools.build.android.AndroidResourceClassWriter;
+import com.google.devtools.build.android.AndroidResourceSymbolSink;
import com.google.devtools.build.android.DataSource;
import com.google.devtools.build.android.FullyQualifiedName;
import com.google.devtools.build.android.XmlResourceValue;
@@ -89,9 +89,8 @@ public class IdXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeResourceToClass(FullyQualifiedName key,
- AndroidResourceClassWriter resourceClassWriter) {
- resourceClassWriter.writeSimpleResource(key.type(), key.name());
+ public void writeResourceToClass(FullyQualifiedName key, AndroidResourceSymbolSink sink) {
+ sink.acceptSimpleResource(key.type(), key.name());
}
@Override
diff --git a/src/tools/android/java/com/google/devtools/build/android/xml/PluralXmlResourceValue.java b/src/tools/android/java/com/google/devtools/build/android/xml/PluralXmlResourceValue.java
index faf418a77f..1ff1578eab 100644
--- a/src/tools/android/java/com/google/devtools/build/android/xml/PluralXmlResourceValue.java
+++ b/src/tools/android/java/com/google/devtools/build/android/xml/PluralXmlResourceValue.java
@@ -17,7 +17,7 @@ import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.android.AndroidDataWritingVisitor;
import com.google.devtools.build.android.AndroidDataWritingVisitor.ValuesResourceDefinition;
-import com.google.devtools.build.android.AndroidResourceClassWriter;
+import com.google.devtools.build.android.AndroidResourceSymbolSink;
import com.google.devtools.build.android.DataSource;
import com.google.devtools.build.android.FullyQualifiedName;
import com.google.devtools.build.android.XmlResourceValue;
@@ -98,9 +98,8 @@ public class PluralXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeResourceToClass(FullyQualifiedName key,
- AndroidResourceClassWriter resourceClassWriter) {
- resourceClassWriter.writeSimpleResource(key.type(), key.name());
+ public void writeResourceToClass(FullyQualifiedName key, AndroidResourceSymbolSink sink) {
+ sink.acceptSimpleResource(key.type(), key.name());
}
@Override
diff --git a/src/tools/android/java/com/google/devtools/build/android/xml/PublicXmlResourceValue.java b/src/tools/android/java/com/google/devtools/build/android/xml/PublicXmlResourceValue.java
index 9399c64647..b513cf4beb 100644
--- a/src/tools/android/java/com/google/devtools/build/android/xml/PublicXmlResourceValue.java
+++ b/src/tools/android/java/com/google/devtools/build/android/xml/PublicXmlResourceValue.java
@@ -21,7 +21,7 @@ import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Maps;
import com.google.devtools.build.android.AndroidDataWritingVisitor;
-import com.google.devtools.build.android.AndroidResourceClassWriter;
+import com.google.devtools.build.android.AndroidResourceSymbolSink;
import com.google.devtools.build.android.DataSource;
import com.google.devtools.build.android.FullyQualifiedName;
import com.google.devtools.build.android.XmlResourceValue;
@@ -91,10 +91,9 @@ public class PublicXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeResourceToClass(
- FullyQualifiedName key, AndroidResourceClassWriter resourceClassWriter) {
+ public void writeResourceToClass(FullyQualifiedName key, AndroidResourceSymbolSink sink) {
for (Entry<ResourceType, Optional<Integer>> entry : typeToId.entrySet()) {
- resourceClassWriter.writePublicValue(entry.getKey(), key.name(), entry.getValue());
+ sink.acceptPublicResource(entry.getKey(), key.name(), entry.getValue());
}
}
diff --git a/src/tools/android/java/com/google/devtools/build/android/xml/ResourcesAttribute.java b/src/tools/android/java/com/google/devtools/build/android/xml/ResourcesAttribute.java
index 01424f8683..9202d599b5 100644
--- a/src/tools/android/java/com/google/devtools/build/android/xml/ResourcesAttribute.java
+++ b/src/tools/android/java/com/google/devtools/build/android/xml/ResourcesAttribute.java
@@ -17,7 +17,7 @@ import com.google.common.base.Joiner;
import com.google.common.base.MoreObjects;
import com.google.common.collect.Iterables;
import com.google.devtools.build.android.AndroidDataWritingVisitor;
-import com.google.devtools.build.android.AndroidResourceClassWriter;
+import com.google.devtools.build.android.AndroidResourceSymbolSink;
import com.google.devtools.build.android.DataSource;
import com.google.devtools.build.android.FullyQualifiedName;
import com.google.devtools.build.android.XmlResourceValue;
@@ -164,8 +164,7 @@ public class ResourcesAttribute implements XmlResourceValue {
}
@Override
- public void writeResourceToClass(
- FullyQualifiedName key, AndroidResourceClassWriter resourceClassWriter) {
+ public void writeResourceToClass(FullyQualifiedName key, AndroidResourceSymbolSink sink) {
// This is an xml attribute and does not have any java representation.
}
diff --git a/src/tools/android/java/com/google/devtools/build/android/xml/SimpleXmlResourceValue.java b/src/tools/android/java/com/google/devtools/build/android/xml/SimpleXmlResourceValue.java
index edcfe3fe4f..923c163ad3 100644
--- a/src/tools/android/java/com/google/devtools/build/android/xml/SimpleXmlResourceValue.java
+++ b/src/tools/android/java/com/google/devtools/build/android/xml/SimpleXmlResourceValue.java
@@ -18,7 +18,7 @@ import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.android.AndroidDataWritingVisitor;
import com.google.devtools.build.android.AndroidDataWritingVisitor.StartTag;
-import com.google.devtools.build.android.AndroidResourceClassWriter;
+import com.google.devtools.build.android.AndroidResourceSymbolSink;
import com.google.devtools.build.android.DataSource;
import com.google.devtools.build.android.FullyQualifiedName;
import com.google.devtools.build.android.XmlResourceValue;
@@ -212,9 +212,8 @@ public class SimpleXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeResourceToClass(FullyQualifiedName key,
- AndroidResourceClassWriter resourceClassWriter) {
- resourceClassWriter.writeSimpleResource(key.type(), key.name());
+ public void writeResourceToClass(FullyQualifiedName key, AndroidResourceSymbolSink sink) {
+ sink.acceptSimpleResource(key.type(), key.name());
}
@Override
diff --git a/src/tools/android/java/com/google/devtools/build/android/xml/StyleXmlResourceValue.java b/src/tools/android/java/com/google/devtools/build/android/xml/StyleXmlResourceValue.java
index bfc02a4244..ccf52b6480 100644
--- a/src/tools/android/java/com/google/devtools/build/android/xml/StyleXmlResourceValue.java
+++ b/src/tools/android/java/com/google/devtools/build/android/xml/StyleXmlResourceValue.java
@@ -18,7 +18,7 @@ import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.android.AndroidDataWritingVisitor;
import com.google.devtools.build.android.AndroidDataWritingVisitor.ValuesResourceDefinition;
-import com.google.devtools.build.android.AndroidResourceClassWriter;
+import com.google.devtools.build.android.AndroidResourceSymbolSink;
import com.google.devtools.build.android.DataSource;
import com.google.devtools.build.android.FullyQualifiedName;
import com.google.devtools.build.android.XmlResourceValue;
@@ -106,9 +106,8 @@ public class StyleXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeResourceToClass(FullyQualifiedName key,
- AndroidResourceClassWriter resourceClassWriter) {
- resourceClassWriter.writeSimpleResource(key.type(), key.name());
+ public void writeResourceToClass(FullyQualifiedName key, AndroidResourceSymbolSink sink) {
+ sink.acceptSimpleResource(key.type(), key.name());
}
@Override
diff --git a/src/tools/android/java/com/google/devtools/build/android/xml/StyleableXmlResourceValue.java b/src/tools/android/java/com/google/devtools/build/android/xml/StyleableXmlResourceValue.java
index 93478876a3..8e55e089d3 100644
--- a/src/tools/android/java/com/google/devtools/build/android/xml/StyleableXmlResourceValue.java
+++ b/src/tools/android/java/com/google/devtools/build/android/xml/StyleableXmlResourceValue.java
@@ -21,7 +21,7 @@ import com.google.common.collect.ImmutableMap.Builder;
import com.google.common.collect.Iterables;
import com.google.devtools.build.android.AndroidDataWritingVisitor;
import com.google.devtools.build.android.AndroidDataWritingVisitor.ValuesResourceDefinition;
-import com.google.devtools.build.android.AndroidResourceClassWriter;
+import com.google.devtools.build.android.AndroidResourceSymbolSink;
import com.google.devtools.build.android.DataSource;
import com.google.devtools.build.android.FullyQualifiedName;
import com.google.devtools.build.android.XmlResourceValue;
@@ -137,9 +137,8 @@ public class StyleableXmlResourceValue implements XmlResourceValue {
}
@Override
- public void writeResourceToClass(FullyQualifiedName key,
- AndroidResourceClassWriter resourceClassWriter) {
- resourceClassWriter.writeStyleableResource(key, attrs);
+ public void writeResourceToClass(FullyQualifiedName key, AndroidResourceSymbolSink sink) {
+ sink.acceptStyleableResource(key, attrs);
}
@Override