diff --git a/android-plugin/pom.xml b/android-plugin/pom.xml
index 0ae85e19..ebee0b56 100644
--- a/android-plugin/pom.xml
+++ b/android-plugin/pom.xml
@@ -184,7 +184,7 @@
org.codenarc
CodeNarc
- 2.2.5
+ 3.5.0
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/batch/JobCoalesceRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/batch/JobCoalesceRule.java
index fd2fb9fd..fed1caf7 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/batch/JobCoalesceRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/batch/JobCoalesceRule.java
@@ -30,7 +30,8 @@
* Checks the call of "set", "setAlarmClock", "setExact", "setInexactRepeating", "setRepeating" & "setWindow" from "android.app.AlarmManager".
* Checks also the call of "onPerformSync" & "getSyncAdapterBinder" from "android.content.AbstractThreadedSyncAdapter".
*/
-@Rule(key = "EC501")
+@Rule(key = "GCI501")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC501")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EBAT003")
public class JobCoalesceRule extends IssuableSubscriptionVisitor {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/batch/SensorCoalesceRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/batch/SensorCoalesceRule.java
index 0b32073c..d692bc3a 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/batch/SensorCoalesceRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/batch/SensorCoalesceRule.java
@@ -34,7 +34,8 @@
* Check the call of the method "registerListener" of "android.hardware.SensorManager" with 4 parameters (the 4th one being the latency).
* If it isn't present, report issue.
*/
-@Rule(key = "EC500")
+@Rule(key = "GCI500")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC500")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EBAT002")
public class SensorCoalesceRule extends IssuableSubscriptionVisitor {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/InternetInTheLoopRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/InternetInTheLoopRule.java
index 8f8081ef..7276e134 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/InternetInTheLoopRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/InternetInTheLoopRule.java
@@ -30,7 +30,8 @@
* Check if the method openConnection of the Url class is called inside a loop.
* Not thrown if openConnection() call is deported into an other method.
*/
-@Rule(key = "EC502")
+@Rule(key = "GCI502")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC502")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EBOT001")
public class InternetInTheLoopRule extends IssuableSubscriptionVisitor {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/UncompressedDataTransmissionRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/UncompressedDataTransmissionRule.java
index 6e9e5ada..f80f7108 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/UncompressedDataTransmissionRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/UncompressedDataTransmissionRule.java
@@ -40,7 +40,8 @@
* - if the method getOutputStream from the URLConnection class is called, reports the issue.
* - if a constructor is called with for parameter getOutputStream, reports the issue if the constructor isn't a GZIPOutputStream.
*/
-@Rule(key = "EC504")
+@Rule(key = "GCI504")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC504")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EBOT003")
public class UncompressedDataTransmissionRule extends IssuableSubscriptionVisitor {
private static final Logger LOG = Loggers.get(UncompressedDataTransmissionRule.class);
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/WifiMulticastLockRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/WifiMulticastLockRule.java
index 997cb8af..f1cb2e0e 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/WifiMulticastLockRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/bottleneck/WifiMulticastLockRule.java
@@ -26,7 +26,8 @@
*
* @see OpeningClosingMethodCheck
*/
-@Rule(key = "EC503")
+@Rule(key = "GCI503")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC503")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EBOT002")
public class WifiMulticastLockRule extends OpeningClosingMethodCheck {
private static final String ERROR_MESSAGE = "Failing to call WifiManager.MulticastLock#release() can cause a noticeable battery drain.";
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/ContinuousRenderingRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/ContinuousRenderingRule.java
index 38ba8c9d..db1f4e90 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/ContinuousRenderingRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/ContinuousRenderingRule.java
@@ -25,7 +25,8 @@
* Check the call of the method "setRenderMode" of "opengl.GLSurfaceView".
* If argument value is "1" report issue.
*/
-@Rule(key = "EC510")
+@Rule(key = "GCI510")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC510")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EIDL008")
public class ContinuousRenderingRule extends FlagOnMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/DurableWakeLockRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/DurableWakeLockRule.java
index 2de179af..b298ebc3 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/DurableWakeLockRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/DurableWakeLockRule.java
@@ -30,7 +30,8 @@
* Check the call of the method "acquire" of "android.os.PowerManager$WakeLock".
* Reports an issue if found without any parameters.
*/
-@Rule(key = "EC508")
+@Rule(key = "GCI508")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC508")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EIDL006")
public class DurableWakeLockRule extends IssuableSubscriptionVisitor {
private String methodOwnerType = "android.os.PowerManager$WakeLock";
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepCpuOnRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepCpuOnRule.java
index e76b95e5..343ff9c1 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepCpuOnRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepCpuOnRule.java
@@ -25,7 +25,8 @@
* Check the call of the method "newWakeLock" of "android.os.PowerManager".
* Reports an issue if found.
*/
-@Rule(key = "EC507")
+@Rule(key = "GCI507")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC507")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EIDL004")
public class KeepCpuOnRule extends SpecificMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepScreenOnAddFlagsRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepScreenOnAddFlagsRule.java
index 2b90c033..56b1319e 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepScreenOnAddFlagsRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepScreenOnAddFlagsRule.java
@@ -24,7 +24,8 @@
/**
* Check the call of "FLAG_KEEP_SCREEN_ON" on the method "addFlags" of "android.view.Window".
*/
-@Rule(key = "EC505")
+@Rule(key = "GCI505")
+@DeprecatedRuleKey(repositoryKey = "ecoCode-android-java", ruleKey = "EC505")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EIDL001")
public class KeepScreenOnAddFlagsRule extends FlagOnMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepScreenOnSetFlagsRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepScreenOnSetFlagsRule.java
index c4429fec..d76097ee 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepScreenOnSetFlagsRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepScreenOnSetFlagsRule.java
@@ -24,7 +24,8 @@
/**
* Check the call of "FLAG_KEEP_SCREEN_ON" on the method "setFlags" (both parameters) of "android.view.Window".
*/
-@Rule(key = "EC506")
+@Rule(key = "GCI506")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC506")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EIDL002")
public class KeepScreenOnSetFlagsRule extends FlagOnMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepVoiceAwakeRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepVoiceAwakeRule.java
index 0dd11c2e..de45e2eb 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepVoiceAwakeRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/KeepVoiceAwakeRule.java
@@ -39,7 +39,8 @@
* If the argument 0 of the method is true, report the method node.
* Otherwise report an issue on the new class nodes.
*/
-@Rule(key = "EC511")
+@Rule(key = "GCI511")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC511")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EIDL009")
public class KeepVoiceAwakeRule extends IssuableSubscriptionVisitor {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/RigidAlarmRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/RigidAlarmRule.java
index fba8fa13..0192c0f8 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/RigidAlarmRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/idleness/RigidAlarmRule.java
@@ -24,7 +24,8 @@
/**
* Check the call of the method "setExact" And "setExactAndAllowWhileIdle" and "setRepeating" of "android.app.AlarmManager".
*/
-@Rule(key = "EC509")
+@Rule(key = "GCI509")
+@DeprecatedRuleKey(repositoryKey = "ecoCode-android-java", ruleKey = "EC509")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EIDL007")
public class RigidAlarmRule extends SpecificMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/CameraLeakRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/CameraLeakRule.java
index 0837f9ee..f522242a 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/CameraLeakRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/CameraLeakRule.java
@@ -26,7 +26,8 @@
*
* @see OpeningClosingMethodCheck
*/
-@Rule(key = "EC512")
+@Rule(key = "GCI512")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC512")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ELEA002")
public class CameraLeakRule extends OpeningClosingMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/LocationLeakRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/LocationLeakRule.java
index 04093a3a..9f6147a3 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/LocationLeakRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/LocationLeakRule.java
@@ -26,7 +26,8 @@
*
* @see OpeningClosingMethodCheck
*/
-@Rule(key = "EC513")
+@Rule(key = "GCI513")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC513")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ELEA003")
public class LocationLeakRule extends OpeningClosingMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/MediaLeakMediaPlayerRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/MediaLeakMediaPlayerRule.java
index caa9375d..71f9695b 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/MediaLeakMediaPlayerRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/MediaLeakMediaPlayerRule.java
@@ -26,7 +26,8 @@
*
* @see ConstructorBeforeMethodCheck
*/
-@Rule(key = "EC516")
+@Rule(key = "GCI516")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC516")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ELEA006")
public class MediaLeakMediaPlayerRule extends ConstructorBeforeMethodCheck {
private static final String ERROR_MESSAGE = "Failing to call release() on a Media Player may lead to continuous battery consumption.";
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/MediaLeakMediaRecorderRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/MediaLeakMediaRecorderRule.java
index 60215539..fd9ecdbf 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/MediaLeakMediaRecorderRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/MediaLeakMediaRecorderRule.java
@@ -26,7 +26,8 @@
*
* @see ConstructorBeforeMethodCheck
*/
-@Rule(key = "EC515")
+@Rule(key = "GCI515")
+@DeprecatedRuleKey(repositoryKey = "ecoCode-android-java", ruleKey = "EC515")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ELEA005")
public class MediaLeakMediaRecorderRule extends ConstructorBeforeMethodCheck {
private static final String ERROR_MESSAGE = "Failing to call release() on a Media Recorder may lead to continuous battery consumption.";
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/SensorManagerLeakRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/SensorManagerLeakRule.java
index 2309e0d8..44d22d03 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/SensorManagerLeakRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/leakage/SensorManagerLeakRule.java
@@ -26,7 +26,8 @@
*
* @see OpeningClosingMethodCheck
*/
-@Rule(key = "EC514")
+@Rule(key = "GCI514")
+@DeprecatedRuleKey(repositoryKey = "ecoCode-android-java", ruleKey = "EC514")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ELEA004")
public class SensorManagerLeakRule extends OpeningClosingMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/optimized_api/BluetoothLowEnergyRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/optimized_api/BluetoothLowEnergyRule.java
index ee6afde1..bc166850 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/optimized_api/BluetoothLowEnergyRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/optimized_api/BluetoothLowEnergyRule.java
@@ -40,7 +40,8 @@
*
*
*/
-@Rule(key = "EC518")
+@Rule(key = "GCI518")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC518")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EOPT002")
public class BluetoothLowEnergyRule extends BaseTreeVisitor implements JavaFileScanner {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/optimized_api/FusedLocationRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/optimized_api/FusedLocationRule.java
index f0e16dd1..9c7c6bc6 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/optimized_api/FusedLocationRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/optimized_api/FusedLocationRule.java
@@ -34,7 +34,8 @@
* If the first import is found but not the second, report an issue.
* `
*/
-@Rule(key = "EC517")
+@Rule(key = "GCI517")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC517")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EOPT001")
public class FusedLocationRule extends IssuableSubscriptionVisitor {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/power/ChargeAwarenessRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/power/ChargeAwarenessRule.java
index 0502e21a..c1304b81 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/power/ChargeAwarenessRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/power/ChargeAwarenessRule.java
@@ -40,7 +40,8 @@
* android.intent.action.ACTION_POWER_CONNECTED`, `android.intent.action.BATTERY_LOW` or
* android.intent.action.BATTERY_OKAY` reports a (positive) issue.
*/
-@Rule(key = "EC519")
+@Rule(key = "GCI519")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC519")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EPOW004")
public class ChargeAwarenessRule extends IssuableSubscriptionVisitor {
private static final Logger LOG = Loggers.get(ChargeAwarenessRule.class);
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/power/SaveModeAwarenessRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/power/SaveModeAwarenessRule.java
index 198f6ff9..8b51684e 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/power/SaveModeAwarenessRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/power/SaveModeAwarenessRule.java
@@ -33,7 +33,8 @@
/**
* Checks the use of the BATTERY_CHANGED propriety in intentFilter or the use of the isPowerSaveMode() method
*/
-@Rule(key = "EC520")
+@Rule(key = "GCI520")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC520")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "EPOW006")
public class SaveModeAwarenessRule extends IssuableSubscriptionVisitor {
private static final Logger LOG = Loggers.get(SaveModeAwarenessRule.class);
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/BrightnessOverrideRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/BrightnessOverrideRule.java
index 376292fd..d6e19a70 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/BrightnessOverrideRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/BrightnessOverrideRule.java
@@ -29,7 +29,8 @@
* Check the assignment of the variable android.view.WindowManager$LayoutParams.screenBrightness with the value
* "BRIGHTNESS_OVERRIDE_FULL" (1.0f).
*/
-@Rule(key = "EC522")
+@Rule(key = "GCI522")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC522")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB002")
public class BrightnessOverrideRule extends IssuableSubscriptionVisitor {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/HighFrameRateRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/HighFrameRateRule.java
index 9f3dc670..017d2c3e 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/HighFrameRateRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/HighFrameRateRule.java
@@ -27,7 +27,8 @@
import java.util.List;
import java.util.Optional;
-@Rule(key = "EC531")
+@Rule(key = "GCI531")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC531")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB014")
public class HighFrameRateRule extends IssuableSubscriptionVisitor {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyBluetoothLowEnergyRequestConnectionPriorityRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyBluetoothLowEnergyRequestConnectionPriorityRule.java
index 617f1826..617f49e5 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyBluetoothLowEnergyRequestConnectionPriorityRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyBluetoothLowEnergyRequestConnectionPriorityRule.java
@@ -25,7 +25,8 @@
* On the method `android.bluetooth.BluetoothGatt#requestConnectionPriority(int)`, reports an issue if
* it is called with a parameter value different from `CONNECTION_PRIORITY_LOW_POWER (2)`.
*/
-@Rule(key = "EC526")
+@Rule(key = "GCI526")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC526")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB008")
public class ThriftyBluetoothLowEnergyRequestConnectionPriorityRule extends ConstantOnMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyBluetoothLowEnergySetAdvertiseModeRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyBluetoothLowEnergySetAdvertiseModeRule.java
index f4ef40a8..4777dc98 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyBluetoothLowEnergySetAdvertiseModeRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyBluetoothLowEnergySetAdvertiseModeRule.java
@@ -25,7 +25,8 @@
* On the method `android.bluetooth.le.AdvertiseSettings$Builder#setAdvertiseMode(int)`, report an issue if
* it is called with parameter value different from `ADVERTISE_MODE_LOW_POWER (0)`.
*/
-@Rule(key = "EC525")
+@Rule(key = "GCI525")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC525")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB007")
public class ThriftyBluetoothLowEnergySetAdvertiseModeRule extends ConstantOnMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationCriteriaRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationCriteriaRule.java
index 9900636b..49dae9bd 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationCriteriaRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationCriteriaRule.java
@@ -47,7 +47,8 @@
* * **Case 3**:
* - if the method `setPowerRequirement` of type `android.location.Criteria` is called report an issue on its first argument if it's not `1`.
*/
-@Rule(key = "EC524")
+@Rule(key = "GCI524")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC524")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB006")
public class ThriftyGeolocationCriteriaRule extends IssuableSubscriptionVisitor {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationMinDistanceRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationMinDistanceRule.java
index 9eed079f..566f9ec2 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationMinDistanceRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationMinDistanceRule.java
@@ -36,7 +36,8 @@
* Check if a method requestLocationUpdates is called from android.location.LocationManager package.
* If minDistance argument value is 0, report an issue on the argument.
*/
-@Rule(key = "EC527")
+@Rule(key = "GCI527")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC527")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB010")
public class ThriftyGeolocationMinDistanceRule extends IssuableSubscriptionVisitor {
private static final String ERROR_MESSAGE = "Location updates should be done with a distance interval greater than 0.";
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationMinTimeRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationMinTimeRule.java
index 047164f5..fe180098 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationMinTimeRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyGeolocationMinTimeRule.java
@@ -36,7 +36,8 @@
* Check if a method requestLocationUpdates is called from android.location.LocationManager package.
* If minTime argument value is 0, report an issue on the argument.
*/
-@Rule(key = "EC523")
+@Rule(key = "GCI523")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC523")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB005")
public class ThriftyGeolocationMinTimeRule extends IssuableSubscriptionVisitor {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyMotionSensorRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyMotionSensorRule.java
index 45c2d0da..8b35daa0 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyMotionSensorRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyMotionSensorRule.java
@@ -24,7 +24,8 @@
/**
* Check the call of "TYPE_ROTATION_VECTOR" on the method "getDefaultSensor" of "android.hardware.SensorManager".
*/
-@Rule(key = "EC521")
+@Rule(key = "GCI521")
+@DeprecatedRuleKey(repositoryKey = "ecoCode-android-java", ruleKey = "EC521")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB001")
public class ThriftyMotionSensorRule extends FlagOnMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyNotificationRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyNotificationRule.java
index 9b95eae9..f236dbb7 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyNotificationRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/ThriftyNotificationRule.java
@@ -30,7 +30,8 @@
/**
* Check the call of "setSound", "setVibrate" & "setVibrationPattern" of "android.app.NotificationChannel" & "android.app.Notification$Builder".
*/
-@Rule(key = "EC529")
+@Rule(key = "GCI529")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC529")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB012")
public class ThriftyNotificationRule extends IssuableSubscriptionVisitor {
private static final String ERROR_MESSAGE = "Avoid using vibration or sound when notifying the users to use less energy.";
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/TorchFreeRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/TorchFreeRule.java
index 37fb372e..5220bc65 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/TorchFreeRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/TorchFreeRule.java
@@ -28,7 +28,8 @@
* Check the call of the method "setTorchMode" from "android.hardware.camera2.CameraManager"
* with the param 1 set to "true".
*/
-@Rule(key = "EC530")
+@Rule(key = "GCI530")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC530")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB013")
public class TorchFreeRule extends ArgumentValueOnMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/VibrationFreeRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/VibrationFreeRule.java
index 77abe46e..d3f0694c 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/VibrationFreeRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/environment/sobriety/VibrationFreeRule.java
@@ -25,7 +25,8 @@
import java.util.Optional;
-@Rule(key = "EC528")
+@Rule(key = "GCI528")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC528")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "ESOB011")
public class VibrationFreeRule extends ArgumentValueOnMethodCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/java/checks/social/privacy/GoogleTrackerRule.java b/android-plugin/src/main/java/io/ecocode/java/checks/social/privacy/GoogleTrackerRule.java
index 804b75fc..ac0eab87 100644
--- a/android-plugin/src/main/java/io/ecocode/java/checks/social/privacy/GoogleTrackerRule.java
+++ b/android-plugin/src/main/java/io/ecocode/java/checks/social/privacy/GoogleTrackerRule.java
@@ -35,7 +35,8 @@
* practice should be discouraged at early stage.
*/
-@Rule(key = "EC532")
+@Rule(key = "GCI532")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-java", ruleKey = "EC532")
@DeprecatedRuleKey(repositoryKey = "ecoCode-java", ruleKey = "SPRI002")
public class GoogleTrackerRule extends BaseTreeVisitor implements JavaFileScanner {
diff --git a/android-plugin/src/main/java/io/ecocode/xml/checks/batch/ServiceBootTimeXmlRule.java b/android-plugin/src/main/java/io/ecocode/xml/checks/batch/ServiceBootTimeXmlRule.java
index 8487f9fb..94efecb4 100644
--- a/android-plugin/src/main/java/io/ecocode/xml/checks/batch/ServiceBootTimeXmlRule.java
+++ b/android-plugin/src/main/java/io/ecocode/xml/checks/batch/ServiceBootTimeXmlRule.java
@@ -24,7 +24,8 @@
/**
* Checks manifest intent-filter statement: if the action is BOOT_COMPLETED, report a bad practice
*/
-@Rule(key = "EC540")
+@Rule(key = "GCI540")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-xml", ruleKey = "EC540")
@DeprecatedRuleKey(repositoryKey = "ecoCode-xml", ruleKey = "EBAT001")
public class ServiceBootTimeXmlRule extends XPathSimpleCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/xml/checks/idleness/KeepCpuOnXmlRule.java b/android-plugin/src/main/java/io/ecocode/xml/checks/idleness/KeepCpuOnXmlRule.java
index 6754d047..5eb94131 100644
--- a/android-plugin/src/main/java/io/ecocode/xml/checks/idleness/KeepCpuOnXmlRule.java
+++ b/android-plugin/src/main/java/io/ecocode/xml/checks/idleness/KeepCpuOnXmlRule.java
@@ -25,7 +25,8 @@
* Checks manifest uses-permissions statement.
* if the permissions "android.permission.WAKE_LOCK" is found, report an issue.
*/
-@Rule(key = "EC542")
+@Rule(key = "GCI542")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-xml", ruleKey = "EC542")
@DeprecatedRuleKey(repositoryKey = "ecoCode-xml", ruleKey = "EIDL005")
public class KeepCpuOnXmlRule extends CheckPermissionsRule {
diff --git a/android-plugin/src/main/java/io/ecocode/xml/checks/idleness/KeepScreenOnXmlRule.java b/android-plugin/src/main/java/io/ecocode/xml/checks/idleness/KeepScreenOnXmlRule.java
index 8086d3f9..9ff7fe90 100644
--- a/android-plugin/src/main/java/io/ecocode/xml/checks/idleness/KeepScreenOnXmlRule.java
+++ b/android-plugin/src/main/java/io/ecocode/xml/checks/idleness/KeepScreenOnXmlRule.java
@@ -21,7 +21,8 @@
import org.sonar.check.Rule;
import org.sonarsource.analyzer.commons.annotations.DeprecatedRuleKey;
-@Rule(key = "EC541")
+@Rule(key = "GCI541")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-xml", ruleKey = "EC541")
@DeprecatedRuleKey(repositoryKey = "ecoCode-xml", ruleKey = "EIDL003")
public class KeepScreenOnXmlRule extends XPathSimpleCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/xml/checks/power/ChargeAwarenessXmlRule.java b/android-plugin/src/main/java/io/ecocode/xml/checks/power/ChargeAwarenessXmlRule.java
index 788f5ef7..1f905ed9 100644
--- a/android-plugin/src/main/java/io/ecocode/xml/checks/power/ChargeAwarenessXmlRule.java
+++ b/android-plugin/src/main/java/io/ecocode/xml/checks/power/ChargeAwarenessXmlRule.java
@@ -25,7 +25,8 @@
* Checks manifest intent-filter statement: if the action is ACTION_POWER_CONNECTED, ACTION_POWER_DISCONNECTED,
* BATTERY_OKAY or BATTERY_LOW report a good practice.
*/
-@Rule(key = "EC545")
+@Rule(key = "GCI545")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-xml", ruleKey = "EC545")
@DeprecatedRuleKey(repositoryKey = "ecoCode-xml", ruleKey = "EPOW005")
public class ChargeAwarenessXmlRule extends XPathSimpleCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/xml/checks/power/CompagnionInBackgroundXmlRule.java b/android-plugin/src/main/java/io/ecocode/xml/checks/power/CompagnionInBackgroundXmlRule.java
index 4fbc7f9d..938ad495 100644
--- a/android-plugin/src/main/java/io/ecocode/xml/checks/power/CompagnionInBackgroundXmlRule.java
+++ b/android-plugin/src/main/java/io/ecocode/xml/checks/power/CompagnionInBackgroundXmlRule.java
@@ -25,7 +25,8 @@
* Checks manifest uses-permissions statement:
* if the permission "android.permission.REQUEST_COMPANION_RUN_IN_BACKGROUND" is found, report an issue.
*/
-@Rule(key = "EC543")
+@Rule(key = "GCI543")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-xml", ruleKey = "EC543")
@DeprecatedRuleKey(repositoryKey = "ecoCode-xml", ruleKey = "EPOW002")
public class CompagnionInBackgroundXmlRule extends CheckPermissionsRule {
diff --git a/android-plugin/src/main/java/io/ecocode/xml/checks/power/IgnoreBatteryOptimizationsXmlRule.java b/android-plugin/src/main/java/io/ecocode/xml/checks/power/IgnoreBatteryOptimizationsXmlRule.java
index fe50c668..fae6d376 100644
--- a/android-plugin/src/main/java/io/ecocode/xml/checks/power/IgnoreBatteryOptimizationsXmlRule.java
+++ b/android-plugin/src/main/java/io/ecocode/xml/checks/power/IgnoreBatteryOptimizationsXmlRule.java
@@ -25,7 +25,8 @@
* Checks manifest uses-permissions statement:
* if the permission "android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" is found, report an issue.
*/
-@Rule(key = "EC544")
+@Rule(key = "GCI544")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-xml", ruleKey = "EC544")
@DeprecatedRuleKey(repositoryKey = "ecoCode-xml", ruleKey = "EPOW003")
public class IgnoreBatteryOptimizationsXmlRule extends CheckPermissionsRule {
diff --git a/android-plugin/src/main/java/io/ecocode/xml/checks/power/SaveModeAwarenessXmlRule.java b/android-plugin/src/main/java/io/ecocode/xml/checks/power/SaveModeAwarenessXmlRule.java
index ec3fa88f..a1cdf6e7 100644
--- a/android-plugin/src/main/java/io/ecocode/xml/checks/power/SaveModeAwarenessXmlRule.java
+++ b/android-plugin/src/main/java/io/ecocode/xml/checks/power/SaveModeAwarenessXmlRule.java
@@ -25,7 +25,8 @@
* Checks manifest uses-permissions statement:
* if the permission "android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" is found, report an issue.
*/
-@Rule(key = "EC546")
+@Rule(key = "GCI546")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-xml", ruleKey = "EC546")
@DeprecatedRuleKey(repositoryKey = "ecoCode-xml", ruleKey = "EPOW007")
public class SaveModeAwarenessXmlRule extends XPathSimpleCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/xml/checks/sobriety/DarkUIBrightColorsXmlRule.java b/android-plugin/src/main/java/io/ecocode/xml/checks/sobriety/DarkUIBrightColorsXmlRule.java
index 6451ecaa..fd3f842a 100644
--- a/android-plugin/src/main/java/io/ecocode/xml/checks/sobriety/DarkUIBrightColorsXmlRule.java
+++ b/android-plugin/src/main/java/io/ecocode/xml/checks/sobriety/DarkUIBrightColorsXmlRule.java
@@ -35,7 +35,8 @@
* If the value is an hexa value >= to a given brightness threshold throw an issue
*
*/
-@Rule(key = "EC547")
+@Rule(key = "GCI547")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-xml", ruleKey = "EC547")
@DeprecatedRuleKey(repositoryKey = "ecoCode-xml", ruleKey = "ESOB003")
public class DarkUIBrightColorsXmlRule extends XPathCheck {
diff --git a/android-plugin/src/main/java/io/ecocode/xml/checks/sobriety/DarkUIThemeXmlRule.java b/android-plugin/src/main/java/io/ecocode/xml/checks/sobriety/DarkUIThemeXmlRule.java
index 81100622..9ea988e7 100644
--- a/android-plugin/src/main/java/io/ecocode/xml/checks/sobriety/DarkUIThemeXmlRule.java
+++ b/android-plugin/src/main/java/io/ecocode/xml/checks/sobriety/DarkUIThemeXmlRule.java
@@ -42,7 +42,8 @@
* "@style/Theme.MaterialComponents.Light"
*
*/
-@Rule(key = "EC548")
+@Rule(key = "GCI548")
+@DeprecatedRuleKey(repositoryKey = "ecocode-android-xml", ruleKey = "EC548")
@DeprecatedRuleKey(repositoryKey = "ecoCode-xml", ruleKey = "ESOB004")
public class DarkUIThemeXmlRule extends XPathSimpleCheck {
diff --git a/android-plugin/src/main/resources/io/ecocode/android/java/ecocode_java_profile.json b/android-plugin/src/main/resources/io/ecocode/android/java/ecocode_java_profile.json
index 088b28ef..f3f8c76f 100644
--- a/android-plugin/src/main/resources/io/ecocode/android/java/ecocode_java_profile.json
+++ b/android-plugin/src/main/resources/io/ecocode/android/java/ecocode_java_profile.json
@@ -1,38 +1,38 @@
{
"name": "ecoCode Android",
"ruleKeys": [
- "EC500",
- "EC501",
- "EC502",
- "EC503",
- "EC504",
- "EC505",
- "EC506",
- "EC507",
- "EC508",
- "EC509",
- "EC510",
- "EC511",
- "EC512",
- "EC513",
- "EC514",
- "EC515",
- "EC516",
- "EC517",
- "EC518",
- "EC519",
- "EC520",
- "EC521",
- "EC522",
- "EC523",
- "EC524",
- "EC525",
- "EC526",
- "EC527",
- "EC528",
- "EC529",
- "EC530",
- "EC531",
- "EC532"
+ "GCI500",
+ "GCI501",
+ "GCI502",
+ "GCI503",
+ "GCI504",
+ "GCI505",
+ "GCI506",
+ "GCI507",
+ "GCI508",
+ "GCI509",
+ "GCI510",
+ "GCI511",
+ "GCI512",
+ "GCI513",
+ "GCI514",
+ "GCI515",
+ "GCI516",
+ "GCI517",
+ "GCI518",
+ "GCI519",
+ "GCI520",
+ "GCI521",
+ "GCI522",
+ "GCI523",
+ "GCI524",
+ "GCI525",
+ "GCI526",
+ "GCI527",
+ "GCI528",
+ "GCI529",
+ "GCI530",
+ "GCI531",
+ "GCI532"
]
}
diff --git a/android-plugin/src/main/resources/io/ecocode/android/xml/ecocode_xml_profile.json b/android-plugin/src/main/resources/io/ecocode/android/xml/ecocode_xml_profile.json
index 22801068..e6ed8963 100644
--- a/android-plugin/src/main/resources/io/ecocode/android/xml/ecocode_xml_profile.json
+++ b/android-plugin/src/main/resources/io/ecocode/android/xml/ecocode_xml_profile.json
@@ -1,13 +1,13 @@
{
"name": "ecoCode Android",
"ruleKeys": [
- "EC540",
- "EC541",
- "EC542",
- "EC543",
- "EC544",
- "EC545",
- "EC546",
- "EC548"
+ "GCI540",
+ "GCI541",
+ "GCI542",
+ "GCI543",
+ "GCI544",
+ "GCI545",
+ "GCI546",
+ "GCI548"
]
}
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC500.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI500.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC500.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI500.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC500.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI500.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC500.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI500.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC501.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI501.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC501.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI501.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC501.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI501.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC501.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI501.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC502.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI502.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC502.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI502.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC502.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI502.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC502.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI502.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC503.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI503.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC503.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI503.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC503.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI503.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC503.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI503.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC504.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI504.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC504.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI504.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC504.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI504.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC504.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI504.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC505.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI505.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC505.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI505.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC505.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI505.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC505.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI505.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC506.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI506.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC506.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI506.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC506.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI506.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC506.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI506.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC507.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI507.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC507.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI507.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC507.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI507.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC507.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI507.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC508.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI508.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC508.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI508.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC508.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI508.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC508.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI508.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC509.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI509.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC509.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI509.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC509.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI509.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC509.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI509.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC510.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI510.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC510.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI510.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC510.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI510.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC510.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI510.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC511.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI511.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC511.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI511.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC511.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI511.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC511.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI511.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC512.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI512.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC512.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI512.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC512.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI512.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC512.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI512.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC513.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI513.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC513.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI513.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC513.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI513.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC513.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI513.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC514.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI514.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC514.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI514.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC514.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI514.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC514.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI514.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC515.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI515.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC515.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI515.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC515.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI515.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC515.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI515.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC516.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI516.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC516.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI516.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC516.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI516.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC516.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI516.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC517.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI517.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC517.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI517.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC517.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI517.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC517.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI517.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC518.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI518.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC518.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI518.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC518.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI518.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC518.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI518.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC519.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI519.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC519.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI519.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC519.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI519.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC519.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI519.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC520.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI520.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC520.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI520.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC520.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI520.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC520.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI520.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC521.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI521.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC521.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI521.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC521.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI521.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC521.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI521.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC522.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI522.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC522.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI522.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC522.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI522.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC522.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI522.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC523.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI523.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC523.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI523.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC523.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI523.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC523.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI523.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC524.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI524.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC524.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI524.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC524.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI524.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC524.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI524.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC525.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI525.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC525.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI525.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC525.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI525.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC525.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI525.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC526.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI526.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC526.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI526.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC526.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI526.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC526.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI526.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC527.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI527.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC527.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI527.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC527.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI527.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC527.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI527.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC528.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI528.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC528.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI528.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC528.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI528.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC528.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI528.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC529.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI529.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC529.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI529.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC529.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI529.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC529.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI529.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC530.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI530.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC530.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI530.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC530.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI530.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC530.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI530.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC531.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI531.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC531.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI531.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC531.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI531.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC531.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI531.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC532.html b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI532.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC532.html
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI532.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/java/EC532.json b/android-plugin/src/main/resources/io/ecocode/rules/java/GCI532.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/java/EC532.json
rename to android-plugin/src/main/resources/io/ecocode/rules/java/GCI532.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC540.html b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI540.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC540.html
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI540.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC540.json b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI540.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC540.json
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI540.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC541.html b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI541.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC541.html
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI541.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC541.json b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI541.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC541.json
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI541.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC542.html b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI542.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC542.html
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI542.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC542.json b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI542.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC542.json
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI542.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC543.html b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI543.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC543.html
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI543.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC543.json b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI543.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC543.json
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI543.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC544.html b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI544.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC544.html
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI544.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC544.json b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI544.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC544.json
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI544.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC545.html b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI545.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC545.html
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI545.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC545.json b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI545.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC545.json
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI545.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC546.html b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI546.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC546.html
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI546.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC546.json b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI546.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC546.json
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI546.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC547.html b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI547.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC547.html
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI547.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC547.json b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI547.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC547.json
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI547.json
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC548.html b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI548.html
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC548.html
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI548.html
diff --git a/android-plugin/src/main/resources/io/ecocode/rules/xml/EC548.json b/android-plugin/src/main/resources/io/ecocode/rules/xml/GCI548.json
similarity index 100%
rename from android-plugin/src/main/resources/io/ecocode/rules/xml/EC548.json
rename to android-plugin/src/main/resources/io/ecocode/rules/xml/GCI548.json
diff --git a/android-plugin/src/main/resources/org/sonar/plugins/groovy/cost.csv b/android-plugin/src/main/resources/org/sonar/plugins/groovy/cost.csv
index 9c4156bf..a79a3160 100644
--- a/android-plugin/src/main/resources/org/sonar/plugins/groovy/cost.csv
+++ b/android-plugin/src/main/resources/org/sonar/plugins/groovy/cost.csv
@@ -1,2 +1,2 @@
ruleKey;remediationFunction;remediationFactor
-EC5001;linear;1h
+GCI5001;linear;1h
diff --git a/android-plugin/src/main/resources/org/sonar/plugins/groovy/profile-default.txt b/android-plugin/src/main/resources/org/sonar/plugins/groovy/profile-default.txt
index b8b72dea..89bf7500 100644
--- a/android-plugin/src/main/resources/org/sonar/plugins/groovy/profile-default.txt
+++ b/android-plugin/src/main/resources/org/sonar/plugins/groovy/profile-default.txt
@@ -1 +1 @@
-EC5001
+GCI5001
diff --git a/android-plugin/src/main/resources/org/sonar/plugins/groovy/rules.xml b/android-plugin/src/main/resources/org/sonar/plugins/groovy/rules.xml
index d54205f7..0023fe86 100644
--- a/android-plugin/src/main/resources/org/sonar/plugins/groovy/rules.xml
+++ b/android-plugin/src/main/resources/org/sonar/plugins/groovy/rules.xml
@@ -4,10 +4,10 @@
- EC5001
+ GCI5001
MINOR
-
+
Using "multiDexEnabled true" goes against the overall reduction of the weight of the apps and hence must be avoided.
Example of violations:
android {
diff --git a/android-plugin/src/test/java/io/ecocode/java/JavaRulesDefinitionTest.java b/android-plugin/src/test/java/io/ecocode/java/JavaRulesDefinitionTest.java
index 91485991..bb099ddc 100644
--- a/android-plugin/src/test/java/io/ecocode/java/JavaRulesDefinitionTest.java
+++ b/android-plugin/src/test/java/io/ecocode/java/JavaRulesDefinitionTest.java
@@ -47,7 +47,7 @@ public void test() {
private void assertSocialRuleProperties(Repository repository) {
- Rule googleTrackerRule = repository.rule("EC532");
+ Rule googleTrackerRule = repository.rule("GCI532");
assertThat(googleTrackerRule).isNotNull();
assertThat(googleTrackerRule.name()).isEqualTo("Privacy: Google Tracker");
assertThat(googleTrackerRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
@@ -56,193 +56,193 @@ private void assertSocialRuleProperties(Repository repository) {
private void assertEnergyRuleProperties(Repository repository) {
- Rule sensorCoalesceRule = repository.rule("EC500");
+ Rule sensorCoalesceRule = repository.rule("GCI500");
assertThat(sensorCoalesceRule).isNotNull();
assertThat(sensorCoalesceRule.name()).isEqualTo("Batch: Sensor Coalesce");
assertThat(sensorCoalesceRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(sensorCoalesceRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule jobCoalesceRule = repository.rule("EC501");
+ Rule jobCoalesceRule = repository.rule("GCI501");
assertThat(jobCoalesceRule).isNotNull();
assertThat(jobCoalesceRule.name()).isEqualTo("Batch: Job Coalesce");
assertThat(jobCoalesceRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(jobCoalesceRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule internetInTheLoopRule = repository.rule("EC502");
+ Rule internetInTheLoopRule = repository.rule("GCI502");
assertThat(internetInTheLoopRule).isNotNull();
assertThat(internetInTheLoopRule.name()).isEqualTo("Bottleneck: Internet In The Loop");
assertThat(internetInTheLoopRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(internetInTheLoopRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule wifiMulticastLockRule = repository.rule("EC503");
+ Rule wifiMulticastLockRule = repository.rule("GCI503");
assertThat(wifiMulticastLockRule).isNotNull();
assertThat(wifiMulticastLockRule.name()).isEqualTo("Bottleneck: Wifi Multicast Lock");
assertThat(wifiMulticastLockRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(wifiMulticastLockRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule uncompressedDataTransmissionRule = repository.rule("EC504");
+ Rule uncompressedDataTransmissionRule = repository.rule("GCI504");
assertThat(uncompressedDataTransmissionRule).isNotNull();
assertThat(uncompressedDataTransmissionRule.name()).isEqualTo("Bottleneck: Uncompressed Data Transmission");
assertThat(uncompressedDataTransmissionRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(uncompressedDataTransmissionRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule keepScreenOnAddFlagsRule = repository.rule("EC505");
+ Rule keepScreenOnAddFlagsRule = repository.rule("GCI505");
assertThat(keepScreenOnAddFlagsRule).isNotNull();
assertThat(keepScreenOnAddFlagsRule.name()).isEqualTo("Idleness: Keep Screen On (addFlags)");
assertThat(keepScreenOnAddFlagsRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(keepScreenOnAddFlagsRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule keepScreenOnSetFlagsRule = repository.rule("EC506");
+ Rule keepScreenOnSetFlagsRule = repository.rule("GCI506");
assertThat(keepScreenOnSetFlagsRule).isNotNull();
assertThat(keepScreenOnSetFlagsRule.name()).isEqualTo("Idleness: Keep Screen On (setFlags)");
assertThat(keepScreenOnSetFlagsRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(keepScreenOnSetFlagsRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule keepCpuOnRule = repository.rule("EC507");
+ Rule keepCpuOnRule = repository.rule("GCI507");
assertThat(keepCpuOnRule).isNotNull();
assertThat(keepCpuOnRule.name()).isEqualTo("Idleness: Keep Cpu On");
assertThat(keepCpuOnRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(keepCpuOnRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule durableWakeLockRule = repository.rule("EC508");
+ Rule durableWakeLockRule = repository.rule("GCI508");
assertThat(durableWakeLockRule).isNotNull();
assertThat(durableWakeLockRule.name()).isEqualTo("Idleness: Durable Wake Lock");
assertThat(durableWakeLockRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(durableWakeLockRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule rigidAlarmRule = repository.rule("EC509");
+ Rule rigidAlarmRule = repository.rule("GCI509");
assertThat(rigidAlarmRule).isNotNull();
assertThat(rigidAlarmRule.name()).isEqualTo("Idleness: Rigid Alarm");
assertThat(rigidAlarmRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(rigidAlarmRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule continuousRenderingRule = repository.rule("EC510");
+ Rule continuousRenderingRule = repository.rule("GCI510");
assertThat(continuousRenderingRule).isNotNull();
assertThat(continuousRenderingRule.name()).isEqualTo("Idleness: Continuous Rendering");
assertThat(continuousRenderingRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(continuousRenderingRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule keepVoiceAwakeRule = repository.rule("EC511");
+ Rule keepVoiceAwakeRule = repository.rule("GCI511");
assertThat(keepVoiceAwakeRule).isNotNull();
assertThat(keepVoiceAwakeRule.name()).isEqualTo("Idleness: Keep Voice Awake");
assertThat(keepVoiceAwakeRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(keepVoiceAwakeRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule cameraLeakRule = repository.rule("EC512");
+ Rule cameraLeakRule = repository.rule("GCI512");
assertThat(cameraLeakRule).isNotNull();
assertThat(cameraLeakRule.name()).isEqualTo("Leakage: Camera Leak");
assertThat(cameraLeakRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(cameraLeakRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule locationLeakRule = repository.rule("EC513");
+ Rule locationLeakRule = repository.rule("GCI513");
assertThat(locationLeakRule).isNotNull();
assertThat(locationLeakRule.name()).isEqualTo("Leakage: Location Leak");
assertThat(locationLeakRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(locationLeakRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule sensorManagerLeakRule = repository.rule("EC514");
+ Rule sensorManagerLeakRule = repository.rule("GCI514");
assertThat(sensorManagerLeakRule).isNotNull();
assertThat(sensorManagerLeakRule.name()).isEqualTo("Leakage: SensorManager Leak");
assertThat(sensorManagerLeakRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(sensorManagerLeakRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule mediaLeakMediaRecorderLeakRule = repository.rule("EC515");
+ Rule mediaLeakMediaRecorderLeakRule = repository.rule("GCI515");
assertThat(mediaLeakMediaRecorderLeakRule).isNotNull();
assertThat(mediaLeakMediaRecorderLeakRule.name()).isEqualTo("Leakage: Media Leak (MediaRecorder)");
assertThat(mediaLeakMediaRecorderLeakRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(mediaLeakMediaRecorderLeakRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule mediaLeakMediaPlayerLeakRule = repository.rule("EC516");
+ Rule mediaLeakMediaPlayerLeakRule = repository.rule("GCI516");
assertThat(mediaLeakMediaPlayerLeakRule).isNotNull();
assertThat(mediaLeakMediaPlayerLeakRule.name()).isEqualTo("Leakage: Media Leak (MediaPlayer)");
assertThat(mediaLeakMediaPlayerLeakRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(mediaLeakMediaPlayerLeakRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule fusedLocationRule = repository.rule("EC517");
+ Rule fusedLocationRule = repository.rule("GCI517");
assertThat(fusedLocationRule).isNotNull();
assertThat(fusedLocationRule.name()).isEqualTo("Optimized API: Fused Location");
assertThat(fusedLocationRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(fusedLocationRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule bluetoothLowEnergyRule = repository.rule("EC518");
+ Rule bluetoothLowEnergyRule = repository.rule("GCI518");
assertThat(bluetoothLowEnergyRule).isNotNull();
assertThat(bluetoothLowEnergyRule.name()).isEqualTo("Optimized API: Bluetooth Low-Energy");
assertThat(bluetoothLowEnergyRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(bluetoothLowEnergyRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule chargeAwarenessRule = repository.rule("EC519");
+ Rule chargeAwarenessRule = repository.rule("GCI519");
assertThat(chargeAwarenessRule).isNotNull();
assertThat(chargeAwarenessRule.name()).isEqualTo("Power: Charge Awareness");
assertThat(chargeAwarenessRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(chargeAwarenessRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule saveModeAwareness = repository.rule("EC520");
+ Rule saveModeAwareness = repository.rule("GCI520");
assertThat(saveModeAwareness).isNotNull();
assertThat(saveModeAwareness.name()).isEqualTo("Power: Save Mode Awareness");
assertThat(saveModeAwareness.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(saveModeAwareness.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule thriftyMotionSensorRule = repository.rule("EC521");
+ Rule thriftyMotionSensorRule = repository.rule("GCI521");
assertThat(thriftyMotionSensorRule).isNotNull();
assertThat(thriftyMotionSensorRule.name()).isEqualTo("Sobriety: Thrifty Motion Sensor");
assertThat(thriftyMotionSensorRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(thriftyMotionSensorRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule brightnessOverrideRule = repository.rule("EC522");
+ Rule brightnessOverrideRule = repository.rule("GCI522");
assertThat(brightnessOverrideRule).isNotNull();
assertThat(brightnessOverrideRule.name()).isEqualTo("Sobriety: Brightness Override");
assertThat(brightnessOverrideRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(brightnessOverrideRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule thriftyGeolocationMinTimeRule = repository.rule("EC523");
+ Rule thriftyGeolocationMinTimeRule = repository.rule("GCI523");
assertThat(thriftyGeolocationMinTimeRule).isNotNull();
assertThat(thriftyGeolocationMinTimeRule.name()).isEqualTo("Sobriety: Thrifty Geolocation (minTime)");
assertThat(thriftyGeolocationMinTimeRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(thriftyGeolocationMinTimeRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule thriftyGeolocationCriteriaRule = repository.rule("EC524");
+ Rule thriftyGeolocationCriteriaRule = repository.rule("GCI524");
assertThat(thriftyGeolocationCriteriaRule).isNotNull();
assertThat(thriftyGeolocationCriteriaRule.name()).isEqualTo("Sobriety: Thrifty Geolocation Criteria");
assertThat(thriftyGeolocationCriteriaRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(thriftyGeolocationCriteriaRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule thriftyBluetoothLowEnergySetAdvertiseMode = repository.rule("EC525");
+ Rule thriftyBluetoothLowEnergySetAdvertiseMode = repository.rule("GCI525");
assertThat(thriftyBluetoothLowEnergySetAdvertiseMode).isNotNull();
assertThat(thriftyBluetoothLowEnergySetAdvertiseMode.name()).isEqualTo("Sobriety: Thrifty Bluetooth Low Energy (setAdvertiseMode)");
assertThat(thriftyBluetoothLowEnergySetAdvertiseMode.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(thriftyBluetoothLowEnergySetAdvertiseMode.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule thriftyBluetoothLowEnergyRequestConnectionPriority = repository.rule("EC526");
+ Rule thriftyBluetoothLowEnergyRequestConnectionPriority = repository.rule("GCI526");
assertThat(thriftyBluetoothLowEnergyRequestConnectionPriority).isNotNull();
assertThat(thriftyBluetoothLowEnergyRequestConnectionPriority.name()).isEqualTo("Sobriety: Thrifty Bluetooth Low Energy (requestConnectionPriority)");
assertThat(thriftyBluetoothLowEnergyRequestConnectionPriority.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(thriftyBluetoothLowEnergyRequestConnectionPriority.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule thriftyGeolocationMinDistanceRule = repository.rule("EC527");
+ Rule thriftyGeolocationMinDistanceRule = repository.rule("GCI527");
assertThat(thriftyGeolocationMinDistanceRule).isNotNull();
assertThat(thriftyGeolocationMinDistanceRule.name()).isEqualTo("Sobriety: Thrifty Geolocation (minDistance)");
assertThat(thriftyGeolocationMinDistanceRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(thriftyGeolocationMinDistanceRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule vibrationFreeRule = repository.rule("EC528");
+ Rule vibrationFreeRule = repository.rule("GCI528");
assertThat(vibrationFreeRule).isNotNull();
assertThat(vibrationFreeRule.name()).isEqualTo("Sobriety: Vibration Free");
assertThat(vibrationFreeRule.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(vibrationFreeRule.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule thriftyNotification = repository.rule("EC529");
+ Rule thriftyNotification = repository.rule("GCI529");
assertThat(thriftyNotification).isNotNull();
assertThat(thriftyNotification.name()).isEqualTo("Sobriety: Thrifty Notification");
assertThat(thriftyNotification.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(thriftyNotification.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule torchFree = repository.rule("EC530");
+ Rule torchFree = repository.rule("GCI530");
assertThat(torchFree).isNotNull();
assertThat(torchFree.name()).isEqualTo("Sobriety: Torch Free");
assertThat(torchFree.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
assertThat(torchFree.type()).isEqualTo(RuleType.CODE_SMELL);
- Rule highFrameRate = repository.rule("EC531");
+ Rule highFrameRate = repository.rule("GCI531");
assertThat(highFrameRate).isNotNull();
assertThat(highFrameRate.name()).isEqualTo("Sobriety: High Frame Rate");
assertThat(highFrameRate.debtRemediationFunction().type()).isEqualTo(Type.CONSTANT_ISSUE);
diff --git a/android-plugin/src/test/java/io/ecocode/xml/XmlRulesDefinitionTest.java b/android-plugin/src/test/java/io/ecocode/xml/XmlRulesDefinitionTest.java
index f3738826..0d11ae7f 100644
--- a/android-plugin/src/test/java/io/ecocode/xml/XmlRulesDefinitionTest.java
+++ b/android-plugin/src/test/java/io/ecocode/xml/XmlRulesDefinitionTest.java
@@ -35,39 +35,39 @@ public void test() {
assertThat(repository.language()).isEqualTo(Xml.KEY);
assertThat(repository.rules()).hasSize(XmlCheckList.getXmlChecks().size());
- RulesDefinition.Rule serviceBootTimeXmlRule = repository.rule("EC540");
+ RulesDefinition.Rule serviceBootTimeXmlRule = repository.rule("GCI540");
assertThat(serviceBootTimeXmlRule).isNotNull();
assertThat(serviceBootTimeXmlRule.name()).isEqualTo("Batch: Service Boot Time");
- RulesDefinition.Rule keepScreenOnXmlRule = repository.rule("EC541");
+ RulesDefinition.Rule keepScreenOnXmlRule = repository.rule("GCI541");
assertThat(keepScreenOnXmlRule).isNotNull();
assertThat(keepScreenOnXmlRule.name()).isEqualTo("Idleness: Keep Screen On");
- RulesDefinition.Rule keepCpuOnXmlRule = repository.rule("EC542");
+ RulesDefinition.Rule keepCpuOnXmlRule = repository.rule("GCI542");
assertThat(keepCpuOnXmlRule).isNotNull();
assertThat(keepCpuOnXmlRule.name()).isEqualTo("Idleness: Keep CPU On");
- RulesDefinition.Rule compagnionInBackgroundXmlRule = repository.rule("EC543");
+ RulesDefinition.Rule compagnionInBackgroundXmlRule = repository.rule("GCI543");
assertThat(compagnionInBackgroundXmlRule).isNotNull();
assertThat(compagnionInBackgroundXmlRule.name()).isEqualTo("Power: Compagnion In Background");
- RulesDefinition.Rule ignoreBatteryOptimizationsXmlRule = repository.rule("EC544");
+ RulesDefinition.Rule ignoreBatteryOptimizationsXmlRule = repository.rule("GCI544");
assertThat(ignoreBatteryOptimizationsXmlRule).isNotNull();
assertThat(ignoreBatteryOptimizationsXmlRule.name()).isEqualTo("Power: Ignore Battery Optimizations");
- RulesDefinition.Rule chargeAwarenessXmlRule = repository.rule("EC545");
+ RulesDefinition.Rule chargeAwarenessXmlRule = repository.rule("GCI545");
assertThat(chargeAwarenessXmlRule).isNotNull();
assertThat(chargeAwarenessXmlRule.name()).isEqualTo("Power: Charge Awareness");
- RulesDefinition.Rule DarkUIBrightColorsXmlRule = repository.rule("EC547");
+ RulesDefinition.Rule DarkUIBrightColorsXmlRule = repository.rule("GCI547");
assertThat(DarkUIBrightColorsXmlRule).isNotNull();
assertThat(DarkUIBrightColorsXmlRule.name()).isEqualTo("Sobriety: Dark UI (Bright Colors)");
- RulesDefinition.Rule DarkUIThemeXmlRule = repository.rule("EC548");
+ RulesDefinition.Rule DarkUIThemeXmlRule = repository.rule("GCI548");
assertThat(DarkUIThemeXmlRule).isNotNull();
assertThat(DarkUIThemeXmlRule.name()).isEqualTo("Sobriety: Dark UI (Theme)");
- RulesDefinition.Rule saveModeAwarenessXml = repository.rule("EC546");
+ RulesDefinition.Rule saveModeAwarenessXml = repository.rule("GCI546");
assertThat(saveModeAwarenessXml).isNotNull();
assertThat(saveModeAwarenessXml.name()).isEqualTo("Power: Save Mode Awareness");
diff --git a/codenarc-converter/CodeNarc/build.gradle b/codenarc-converter/CodeNarc/build.gradle
index 50e3b8df..eab46dec 100644
--- a/codenarc-converter/CodeNarc/build.gradle
+++ b/codenarc-converter/CodeNarc/build.gradle
@@ -14,7 +14,7 @@ shadowJar {
group = 'org.codenarc'
archivesBaseName = 'CodeNarc'
-version = '2.2.5'
+version = '3.5.0'
sourceCompatibility = '1.7'
targetCompatibility = '1.7'
diff --git a/codenarc-converter/CodeNarc/docs/StarterRuleSet-AllRules.groovy.txt b/codenarc-converter/CodeNarc/docs/StarterRuleSet-AllRules.groovy.txt
index 85979380..6a7c9117 100644
--- a/codenarc-converter/CodeNarc/docs/StarterRuleSet-AllRules.groovy.txt
+++ b/codenarc-converter/CodeNarc/docs/StarterRuleSet-AllRules.groovy.txt
@@ -87,7 +87,7 @@ ruleset {
DuplicateNumberLiteral
DuplicateSetValue
DuplicateStringLiteral
- EC5001
+ GCI5001
ElseBlockBraces
EmptyCatchBlock
EmptyClass
@@ -402,4 +402,4 @@ ruleset {
WaitOutsideOfWhileLoop
WhileStatementBraces
-}
\ No newline at end of file
+}
diff --git a/codenarc-converter/CodeNarc/docs/StarterRuleSet-AllRulesByCategory.groovy.txt b/codenarc-converter/CodeNarc/docs/StarterRuleSet-AllRulesByCategory.groovy.txt
index 35488472..003b04ae 100644
--- a/codenarc-converter/CodeNarc/docs/StarterRuleSet-AllRulesByCategory.groovy.txt
+++ b/codenarc-converter/CodeNarc/docs/StarterRuleSet-AllRulesByCategory.groovy.txt
@@ -166,8 +166,8 @@ ruleset {
DuplicateStringLiteral
// rulesets/ecocode.xml
- EC5001
- EC5003
+ GCI5001
+ GCI5003
// rulesets/enhanced.xml
CloneWithoutCloneable
@@ -451,4 +451,4 @@ ruleset {
UnusedVariable
-}
\ No newline at end of file
+}
diff --git a/codenarc-converter/CodeNarc/docs/codenarc-rule-index-by-name.md b/codenarc-converter/CodeNarc/docs/codenarc-rule-index-by-name.md
index 2c117951..c05b0333 100644
--- a/codenarc-converter/CodeNarc/docs/codenarc-rule-index-by-name.md
+++ b/codenarc-converter/CodeNarc/docs/codenarc-rule-index-by-name.md
@@ -89,7 +89,7 @@ title: CodeNarc - Rule Index by Name
* [DuplicateNumberLiteral](./codenarc-rules-dry.html#duplicatenumberliteral-rule)
* [DuplicateSetValue](./codenarc-rules-basic.html#duplicatesetvalue-rule)
* [DuplicateStringLiteral](./codenarc-rules-dry.html#duplicatestringliteral-rule)
-* [EC5001](./codenarc-rules-ecocode.html#EC5001-rule)
+* [GCI5001](./codenarc-rules-ecocode.html#GCI5001-rule)
* [ElseBlockBraces](./codenarc-rules-braces.html#elseblockbraces-rule)
* [EmptyCatchBlock](./codenarc-rules-basic.html#emptycatchblock-rule)
* [EmptyClass](./codenarc-rules-basic.html#emptyclass-rule)
diff --git a/codenarc-converter/CodeNarc/docs/codenarc-rule-index.md b/codenarc-converter/CodeNarc/docs/codenarc-rule-index.md
index 616375b1..f9e532a5 100644
--- a/codenarc-converter/CodeNarc/docs/codenarc-rule-index.md
+++ b/codenarc-converter/CodeNarc/docs/codenarc-rule-index.md
@@ -167,7 +167,7 @@ title: CodeNarc - Rule Index
* [DuplicateStringLiteral](./codenarc-rules-dry.html#duplicatestringliteral-rule)
## [Ecocode](./codenarc-rules-ecocode.html)
-* [EC5001](./codenarc-rules-ecocode.html#EC5001-rule)
+* [GCI5001](./codenarc-rules-ecocode.html#GCI5001-rule)
## [Enhanced](./codenarc-rules-enhanced.html)
* [CloneWithoutCloneable](./codenarc-rules-enhanced.html#clonewithoutcloneable-rule)
diff --git a/codenarc-converter/CodeNarc/docs/codenarc-rules-ecocode.md b/codenarc-converter/CodeNarc/docs/codenarc-rules-ecocode.md
index 6280f050..e31dd1cc 100644
--- a/codenarc-converter/CodeNarc/docs/codenarc-rules-ecocode.md
+++ b/codenarc-converter/CodeNarc/docs/codenarc-rules-ecocode.md
@@ -5,7 +5,7 @@ title: CodeNarc - Ecocode Rules
# Ecocode Rules ("*rulesets/ecocode.xml*")
-## EC5001 Rule
+## GCI5001 Rule
*Since CodeNarc 2.2.1*
@@ -45,7 +45,7 @@ Example of violations:
}
```
-## EC5003 Rule
+## GCI5003 Rule
*Since CodeNarc 2.2.3*
diff --git a/codenarc-converter/CodeNarc/src/main/groovy/org/codenarc/rule/ecocode/EC5001.groovy b/codenarc-converter/CodeNarc/src/main/groovy/org/codenarc/rule/ecocode/GCI5001.groovy
similarity index 92%
rename from codenarc-converter/CodeNarc/src/main/groovy/org/codenarc/rule/ecocode/EC5001.groovy
rename to codenarc-converter/CodeNarc/src/main/groovy/org/codenarc/rule/ecocode/GCI5001.groovy
index e91f40df..c1738655 100644
--- a/codenarc-converter/CodeNarc/src/main/groovy/org/codenarc/rule/ecocode/EC5001.groovy
+++ b/codenarc-converter/CodeNarc/src/main/groovy/org/codenarc/rule/ecocode/GCI5001.groovy
@@ -29,14 +29,14 @@ import org.codenarc.util.AstUtil
*
* @author Leboulanger Mickael
*/
-class EC5001 extends AbstractAstVisitorRule {
+class GCI5001 extends AbstractAstVisitorRule {
- String name = 'EC5001'
+ String name = 'GCI5001'
int priority = 2
- Class astVisitorClass = EC5001AstVisitor
+ Class astVisitorClass = GCI5001AstVisitor
}
-class EC5001AstVisitor extends AbstractAstVisitor {
+class GCI5001AstVisitor extends AbstractAstVisitor {
@Override
void visitMethodCallExpression(MethodCallExpression methodCallExpression) {
diff --git a/codenarc-converter/CodeNarc/src/main/resources/codenarc-base-messages.properties b/codenarc-converter/CodeNarc/src/main/resources/codenarc-base-messages.properties
index 4d8ad6b2..2663cd2d 100644
--- a/codenarc-converter/CodeNarc/src/main/resources/codenarc-base-messages.properties
+++ b/codenarc-converter/CodeNarc/src/main/resources/codenarc-base-messages.properties
@@ -1,6 +1,6 @@
-EC5001.description=Using "multiDexEnabled true" goes against the overall reduction of the weight of the apps and hence must be avoided.
-EC5001.description.html=Using "multiDexEnabled true" goes against the overall reduction of the weight of the apps and hence must be avoided.
+GCI5001.description=Using "multiDexEnabled true" goes against the overall reduction of the weight of the apps and hence must be avoided.
+GCI5001.description.html=Using "multiDexEnabled true" goes against the overall reduction of the weight of the apps and hence must be avoided.
ParameterAssignmentInFilterClosure.description=An assignment operator was used on a parameter in a filtering closure. This is usually a typo, and the comparison operator (==) was intended.
ParameterAssignmentInFilterClosure.description.html=An assignment operator was used on a parameter in a filtering closure. This is usually a typo, and the comparison operator (==) was intended.
diff --git a/codenarc-converter/CodeNarc/src/main/resources/codenarc-base-rules.properties b/codenarc-converter/CodeNarc/src/main/resources/codenarc-base-rules.properties
index ec4b6d7d..b8c60f85 100644
--- a/codenarc-converter/CodeNarc/src/main/resources/codenarc-base-rules.properties
+++ b/codenarc-converter/CodeNarc/src/main/resources/codenarc-base-rules.properties
@@ -80,7 +80,7 @@ DuplicateMapLiteral = org.codenarc.rule.dry.DuplicateMapLiteralRule
DuplicateNumberLiteral = org.codenarc.rule.dry.DuplicateNumberLiteralRule
DuplicateSetValue = org.codenarc.rule.basic.DuplicateSetValueRule
DuplicateStringLiteral = org.codenarc.rule.dry.DuplicateStringLiteralRule
-EC5001 = org.codenarc.rule.ecocode.EC5001
+GCI5001 = org.codenarc.rule.ecocode.GCI5001
ElseBlockBraces = org.codenarc.rule.braces.ElseBlockBracesRule
EmptyCatchBlock = org.codenarc.rule.basic.EmptyCatchBlockRule
EmptyClass = org.codenarc.rule.basic.EmptyClassRule
diff --git a/codenarc-converter/CodeNarc/src/main/resources/codenarc-version.txt b/codenarc-converter/CodeNarc/src/main/resources/codenarc-version.txt
index 21bb5e15..1545d966 100644
--- a/codenarc-converter/CodeNarc/src/main/resources/codenarc-version.txt
+++ b/codenarc-converter/CodeNarc/src/main/resources/codenarc-version.txt
@@ -1 +1 @@
-2.2.5
+3.5.0
diff --git a/codenarc-converter/CodeNarc/src/main/resources/rulesets/ecocode.xml b/codenarc-converter/CodeNarc/src/main/resources/rulesets/ecocode.xml
index ef702037..f2b6f6b2 100644
--- a/codenarc-converter/CodeNarc/src/main/resources/rulesets/ecocode.xml
+++ b/codenarc-converter/CodeNarc/src/main/resources/rulesets/ecocode.xml
@@ -7,5 +7,5 @@
EcoCode rule set.
-
+
diff --git a/codenarc-converter/CodeNarc/src/test/groovy/org/codenarc/rule/ecocode/EC5001Test.groovy b/codenarc-converter/CodeNarc/src/test/groovy/org/codenarc/rule/ecocode/GCI5001Test.groovy
similarity index 97%
rename from codenarc-converter/CodeNarc/src/test/groovy/org/codenarc/rule/ecocode/EC5001Test.groovy
rename to codenarc-converter/CodeNarc/src/test/groovy/org/codenarc/rule/ecocode/GCI5001Test.groovy
index 2563fc6e..6ad34a59 100644
--- a/codenarc-converter/CodeNarc/src/test/groovy/org/codenarc/rule/ecocode/EC5001Test.groovy
+++ b/codenarc-converter/CodeNarc/src/test/groovy/org/codenarc/rule/ecocode/GCI5001Test.groovy
@@ -19,16 +19,16 @@ import org.junit.Test
import org.codenarc.rule.AbstractRuleTestCase
/**
- * Tests for EC5001 (Fat App Rule)
+ * Tests for GCI5001 (Fat App Rule)
*
* @author Leboulanger Mickael
*/
-class EC5001Test extends AbstractRuleTestCase {
+class GCI5001Test extends AbstractRuleTestCase {
@Test
void test_RuleProperties() {
assert rule.priority == 2
- assert rule.name == 'EC5001'
+ assert rule.name == 'GCI5001'
}
@Test
@@ -212,8 +212,8 @@ class EC5001Test extends AbstractRuleTestCase {
}
@Override
- protected EC5001 createRule() {
- new EC5001()
+ protected GCI5001 createRule() {
+ new GCI5001()
}
private String getViolationMessage() {
return 'Using "multiDexEnabled true" goes against the overall reduction of the weight of the apps and hence must be avoided.'
diff --git a/codenarc-converter/pom.xml b/codenarc-converter/pom.xml
index 8e4f65c8..ea02976a 100644
--- a/codenarc-converter/pom.xml
+++ b/codenarc-converter/pom.xml
@@ -16,7 +16,7 @@
https://github.com/green-code-initiative/ecocode-android/tree/main/codenarc-converter
- 2.2.5
+ 3.5.0
1.8.2
true
diff --git a/tool_prepare-codenarc.bat b/tool_prepare-codenarc.bat
index c5223c9d..48fff796 100644
--- a/tool_prepare-codenarc.bat
+++ b/tool_prepare-codenarc.bat
@@ -1,5 +1,5 @@
REM == Define CodeNarc version
-set codenarc_version=2.2.5
+set codenarc_version=3.5.0
REM == Build CodeNarc
cd codenarc-converter/CodeNarc
diff --git a/tool_prepare-codenarc.sh b/tool_prepare-codenarc.sh
index 993baf85..058f7494 100755
--- a/tool_prepare-codenarc.sh
+++ b/tool_prepare-codenarc.sh
@@ -1,7 +1,7 @@
#!/usr/bin/env sh
# Define CodeNarc version
-codenarcVersion="2.2.5"
+codenarcVersion="3.5.0"
# Build CodeNarc
cd codenarc-converter/CodeNarc