summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Norbye <tnorbye@google.com>2014-02-12 09:57:54 -0800
committerTor Norbye <tnorbye@google.com>2014-02-14 23:11:15 +0000
commitb5719d48f9ef394d15fea7ea9fda97b87c8fe4c4 (patch)
tree66c5a15a175b9b50779c79e0ed79e01ad5febd43
parentd473a7543106a67cecb773f64e46db7998426a72 (diff)
downloadbase-b5719d48f9ef394d15fea7ea9fda97b87c8fe4c4.tar.gz
Switch from enums to ints to allow model Proxies to work
Change-Id: I178906c3b71352b97425417a3f0d254137b2d00f (cherry picked from commit b3edee8fe54267c1bb93fd5b5a4316e74329530b)
-rw-r--r--build-system/builder-model/src/main/java/com/android/builder/model/LintOptions.java22
-rw-r--r--build-system/gradle/src/main/groovy/com/android/build/gradle/internal/dsl/LintOptionsImpl.groovy37
2 files changed, 36 insertions, 23 deletions
diff --git a/build-system/builder-model/src/main/java/com/android/builder/model/LintOptions.java b/build-system/builder-model/src/main/java/com/android/builder/model/LintOptions.java
index df2863ed24..6e26b587a0 100644
--- a/build-system/builder-model/src/main/java/com/android/builder/model/LintOptions.java
+++ b/build-system/builder-model/src/main/java/com/android/builder/model/LintOptions.java
@@ -192,13 +192,21 @@ public interface LintOptions {
* An optional map of severity overrides. The map maps from issue id's to the corresponding
* severity to use, which must be "fatal", "error", "warning", or "ignore".
*
- * @return a map of severity overrides, or null
+ * @return a map of severity overrides, or null. The severities are one of the constants
+ * {@link #SEVERITY_FATAL}, {@link #SEVERITY_ERROR}, {@link #SEVERITY_WARNING},
+ * {@link #SEVERITY_INFORMATIONAL}, {@link #SEVERITY_IGNORE}
*/
@Nullable
- public Map<String, Severity> getSeverityOverrides();
-
- /** A severity for Lint. Corresponds to com.android.tools.lint.detector.api.Severity. */
- public enum Severity {
- FATAL, ERROR, WARNING, INFORMATIONAL, IGNORE
- }
+ public Map<String, Integer> getSeverityOverrides();
+
+ /** A severity for Lint. Corresponds to com.android.tools.lint.detector.api.Severity#FATAL */
+ public static final int SEVERITY_FATAL = 1;
+ /** A severity for Lint. Corresponds to com.android.tools.lint.detector.api.Severity#ERROR */
+ public static final int SEVERITY_ERROR = 2;
+ /** A severity for Lint. Corresponds to com.android.tools.lint.detector.api.Severity#WARNING */
+ public static final int SEVERITY_WARNING = 3;
+ /** A severity for Lint. Corresponds to com.android.tools.lint.detector.api.Severity#INFORMATIONAL */
+ public static final int SEVERITY_INFORMATIONAL = 4;
+ /** A severity for Lint. Corresponds to com.android.tools.lint.detector.api.Severity#IGNORE */
+ public static final int SEVERITY_IGNORE = 5;
}
diff --git a/build-system/gradle/src/main/groovy/com/android/build/gradle/internal/dsl/LintOptionsImpl.groovy b/build-system/gradle/src/main/groovy/com/android/build/gradle/internal/dsl/LintOptionsImpl.groovy
index 26b3348d92..fc762cfa3f 100644
--- a/build-system/gradle/src/main/groovy/com/android/build/gradle/internal/dsl/LintOptionsImpl.groovy
+++ b/build-system/gradle/src/main/groovy/com/android/build/gradle/internal/dsl/LintOptionsImpl.groovy
@@ -106,7 +106,7 @@ public class LintOptionsImpl implements LintOptions, Serializable {
boolean showAll,
boolean explainIssues,
boolean checkReleaseBuilds,
- Map<String,LintOptions.Severity> severityOverrides) {
+ Map<String,Integer> severityOverrides) {
this.disable = disable
this.enable = enable
this.check = check
@@ -129,7 +129,7 @@ public class LintOptionsImpl implements LintOptions, Serializable {
this.checkReleaseBuilds = checkReleaseBuilds
if (severityOverrides != null) {
- for (Map.Entry<String,LintOptions.Severity> entry : severityOverrides.entrySet()) {
+ for (Map.Entry<String,Integer> entry : severityOverrides.entrySet()) {
severities.put(entry.key, convert(entry.value))
}
}
@@ -538,12 +538,12 @@ public class LintOptionsImpl implements LintOptions, Serializable {
@Override
@Nullable
- public Map<String, LintOptions.Severity> getSeverityOverrides() {
+ public Map<String, Integer> getSeverityOverrides() {
if (severities == null) {
return null
}
- Map<String, LintOptions.Severity> map =
+ Map<String, Integer> map =
Maps.newHashMapWithExpectedSize(severities.size())
for (Map.Entry<String,Severity> entry : severities.entrySet()) {
map.put(entry.key, convert(entry.value))
@@ -635,33 +635,38 @@ public class LintOptionsImpl implements LintOptions, Serializable {
}
}
- private static LintOptions.Severity convert(Severity s) {
+ // Without these qualifiers, Groovy compilation will fail with "Apparent variable
+ // 'SEVERITY_FATAL' was found in a static scope but doesn't refer to a local variable,
+ // static field or class"
+ @SuppressWarnings("UnnecessaryQualifiedReference")
+ private static int convert(Severity s) {
switch (s) {
case Severity.FATAL:
- return LintOptions.Severity.FATAL
+ return LintOptions.SEVERITY_FATAL
case Severity.ERROR:
- return LintOptions.Severity.ERROR
+ return LintOptions.SEVERITY_ERROR
case Severity.WARNING:
- return LintOptions.Severity.WARNING
+ return LintOptions.SEVERITY_WARNING
case Severity.INFORMATIONAL:
- return LintOptions.Severity.INFORMATIONAL
+ return LintOptions.SEVERITY_INFORMATIONAL
case Severity.IGNORE:
default:
- return LintOptions.Severity.IGNORE
+ return LintOptions.SEVERITY_IGNORE
}
}
- private static Severity convert(LintOptions.Severity s) {
+ @SuppressWarnings("UnnecessaryQualifiedReference")
+ private static Severity convert(int s) {
switch (s) {
- case LintOptions.Severity.FATAL:
+ case LintOptions.SEVERITY_FATAL:
return Severity.FATAL
- case LintOptions.Severity.ERROR:
+ case LintOptions.SEVERITY_ERROR:
return Severity.ERROR
- case LintOptions.Severity.WARNING:
+ case LintOptions.SEVERITY_WARNING:
return Severity.WARNING
- case LintOptions.Severity.INFORMATIONAL:
+ case LintOptions.SEVERITY_INFORMATIONAL:
return Severity.INFORMATIONAL
- case LintOptions.Severity.IGNORE:
+ case LintOptions.SEVERITY_IGNORE:
default:
return Severity.IGNORE
}