summaryrefslogtreecommitdiff
path: root/compiler/src/main/java/android/databinding/tool/expr/ResourceExpr.java
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/src/main/java/android/databinding/tool/expr/ResourceExpr.java')
-rw-r--r--compiler/src/main/java/android/databinding/tool/expr/ResourceExpr.java25
1 files changed, 18 insertions, 7 deletions
diff --git a/compiler/src/main/java/android/databinding/tool/expr/ResourceExpr.java b/compiler/src/main/java/android/databinding/tool/expr/ResourceExpr.java
index 752cb9f8..2ecf5fb0 100644
--- a/compiler/src/main/java/android/databinding/tool/expr/ResourceExpr.java
+++ b/compiler/src/main/java/android/databinding/tool/expr/ResourceExpr.java
@@ -120,20 +120,22 @@ public class ResourceExpr extends Expr {
@Override
protected String computeUniqueKey() {
- String base;
- if (mPackage == null) {
- base = "@" + mResourceType + "/" + mResourceId;
- } else {
- base = "@" + "android:" + mResourceType + "/" + mResourceId;
- }
+ String base = toString();
return join(base, computeChildrenKey());
}
@Override
- protected KCode generateCode(boolean expand) {
+ protected KCode generateCode() {
return new KCode(toJava());
}
+ @Override
+ public Expr cloneToModel(ExprModel model) {
+ String pkg = mPackage.isEmpty() ? "" : "android";
+ return model.resourceExpr(pkg, mResourceType, mResourceId,
+ cloneToModel(model, getChildren()));
+ }
+
public String getResourceId() {
return mPackage + "R." + getResourceObject() + "." + mResourceId;
}
@@ -211,4 +213,13 @@ public class ResourceExpr extends Expr {
}
return rFileObject;
}
+
+ @Override
+ public String toString() {
+ if (mPackage == null) {
+ return "@" + mResourceType + "/" + mResourceId;
+ } else {
+ return "@" + "android:" + mResourceType + "/" + mResourceId;
+ }
+ }
}