Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7971e5ec authored by George Lin's avatar George Lin
Browse files

Refactor SysUiStatsLogger

1. Params should always in camal case
2. Have action required when creating a SysUiStatsLogger
3. No need to have a var atom

Test: The logging works as usual
Bug: 291325750
Change-Id: Ic7998fd44c93e0baac3f156062cfd9fef7585959
parent 8566c3bd
Loading
Loading
Loading
Loading
+15 −29
Original line number Diff line number Diff line
@@ -70,46 +70,40 @@ public class StatsLogUserEventLogger extends NoOpUserEventLogger implements Them

    @Override
    public void logAppLaunched(Intent launchSource) {
        new SysUiStatsLogger()
                .setAction(STYLE_UICHANGED__ACTION__APP_LAUNCHED)
        new SysUiStatsLogger(STYLE_UICHANGED__ACTION__APP_LAUNCHED)
                .setLaunchedPreference(getAppLaunchSource(launchSource))
                .log();
    }

    @Override
    public void logResumed(boolean provisioned, boolean wallpaper) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.ONRESUME)
        new SysUiStatsLogger(StyleEnums.ONRESUME)
                .log();
    }

    @Override
    public void logStopped() {
        new SysUiStatsLogger()
                .setAction(StyleEnums.ONSTOP)
        new SysUiStatsLogger(StyleEnums.ONSTOP)
                .log();
    }

    @Override
    public void logActionClicked(String collectionId, int actionLabelResId) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.WALLPAPER_EXPLORE)
        new SysUiStatsLogger(StyleEnums.WALLPAPER_EXPLORE)
                .setWallpaperCategoryHash(getIdHashCode(collectionId))
                .log();
    }

    @Override
    public void logIndividualWallpaperSelected(String collectionId) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.WALLPAPER_SELECT)
        new SysUiStatsLogger(StyleEnums.WALLPAPER_SELECT)
                .setWallpaperCategoryHash(getIdHashCode(collectionId))
                .log();
    }

    @Override
    public void logCategorySelected(String collectionId) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.WALLPAPER_OPEN_CATEGORY)
        new SysUiStatsLogger(StyleEnums.WALLPAPER_OPEN_CATEGORY)
                .setWallpaperCategoryHash(getIdHashCode(collectionId))
                .log();
    }
@@ -127,7 +121,7 @@ public class StatsLogUserEventLogger extends NoOpUserEventLogger implements Them
        String lockWallpaperId = isLockWallpaperSet ? mPreferences.getLockWallpaperRemoteId()
                : homeWallpaperId;

        new SysUiStatsLogger().setAction(StyleEnums.SNAPSHOT)
        new SysUiStatsLogger(StyleEnums.SNAPSHOT)
                .setWallpaperCategoryHash(getIdHashCode(homeCollectionId))
                .setWallpaperIdHash(getIdHashCode(homeWallpaperId))
                .setLockWallpaperCategoryHash(getIdHashCode(lockCollectionId))
@@ -143,8 +137,7 @@ public class StatsLogUserEventLogger extends NoOpUserEventLogger implements Them
    @Override
    public void logWallpaperSet(String collectionId, @Nullable String wallpaperId,
            @Nullable String effects) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.WALLPAPER_APPLIED)
        new SysUiStatsLogger(StyleEnums.WALLPAPER_APPLIED)
                .setWallpaperCategoryHash(getIdHashCode(collectionId))
                .setWallpaperIdHash(getIdHashCode(wallpaperId))
                .setEffectIdHash(getIdHashCode(effects))
@@ -154,8 +147,7 @@ public class StatsLogUserEventLogger extends NoOpUserEventLogger implements Them
    @Override
    public void logEffectApply(String effect, @EffectStatus int status, long timeElapsedMillis,
            int resultCode) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.WALLPAPER_EFFECT_APPLIED)
        new SysUiStatsLogger(StyleEnums.WALLPAPER_EFFECT_APPLIED)
                .setEffectPreference(status)
                .setEffectIdHash(getIdHashCode(effect))
                .setTimeElapsed(timeElapsedMillis)
@@ -165,8 +157,7 @@ public class StatsLogUserEventLogger extends NoOpUserEventLogger implements Them

    @Override
    public void logEffectProbe(String effect, @EffectStatus int status) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.WALLPAPER_EFFECT_PROBE)
        new SysUiStatsLogger(StyleEnums.WALLPAPER_EFFECT_PROBE)
                .setEffectPreference(status)
                .setEffectIdHash(getIdHashCode(effect))
                .log();
@@ -180,8 +171,7 @@ public class StatsLogUserEventLogger extends NoOpUserEventLogger implements Them

    @Override
    public void logThemeSelected(ThemeBundle theme, boolean isCustomTheme) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.PICKER_SELECT)
        new SysUiStatsLogger(StyleEnums.PICKER_SELECT)
                .setColorPackageHash(
                        Objects.hashCode(getThemePackage(theme, OVERLAY_CATEGORY_COLOR)))
                .setFontPackageHash(Objects.hashCode(getThemePackage(theme, OVERLAY_CATEGORY_FONT)))
@@ -192,8 +182,7 @@ public class StatsLogUserEventLogger extends NoOpUserEventLogger implements Them

    @Override
    public void logThemeApplied(ThemeBundle theme, boolean isCustomTheme) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.PICKER_APPLIED)
        new SysUiStatsLogger(StyleEnums.PICKER_APPLIED)
                .setColorPackageHash(
                        Objects.hashCode(getThemePackage(theme, OVERLAY_CATEGORY_COLOR)))
                .setFontPackageHash(Objects.hashCode(getThemePackage(theme, OVERLAY_CATEGORY_FONT)))
@@ -204,8 +193,7 @@ public class StatsLogUserEventLogger extends NoOpUserEventLogger implements Them

    @Override
    public void logColorApplied(int action, ColorOption colorOption) {
        new SysUiStatsLogger()
                .setAction(action)
        new SysUiStatsLogger(action)
                .setColorPreference(colorOption.getIndex())
                .setColorVariant(colorOption.getStyle().ordinal() + 1)
                .log();
@@ -213,16 +201,14 @@ public class StatsLogUserEventLogger extends NoOpUserEventLogger implements Them

    @Override
    public void logGridSelected(GridOption grid) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.PICKER_SELECT)
        new SysUiStatsLogger(StyleEnums.PICKER_SELECT)
                .setLauncherGrid(grid.cols)
                .log();
    }

    @Override
    public void logGridApplied(GridOption grid) {
        new SysUiStatsLogger()
                .setAction(StyleEnums.PICKER_APPLIED)
        new SysUiStatsLogger(StyleEnums.PICKER_APPLIED)
                .setLauncherGrid(grid.cols)
                .log();
    }
+39 −43
Original line number Diff line number Diff line
@@ -20,10 +20,8 @@ import com.android.systemui.shared.system.SysUiStatsLog
import com.android.systemui.shared.system.SysUiStatsLog.STYLE_UI_CHANGED

/** The builder for [SysUiStatsLog]. */
class SysUiStatsLogger {
class SysUiStatsLogger(val action: Int) {

    private var atom = STYLE_UI_CHANGED
    private var action = StyleEnums.DEFAULT_ACTION
    private var colorPackageHash = 0
    private var fontPackageHash = 0
    private var shapePackageHash = 0
@@ -46,85 +44,83 @@ class SysUiStatsLogger {
    private var timeElapsedMillis = 0L
    private var effectResultCode = -1

    fun setAction(action: Int) = apply { this.action = action }

    fun setColorPackageHash(color_package_hash: Int) = apply {
        this.colorPackageHash = color_package_hash
    fun setColorPackageHash(colorPackageHash: Int) = apply {
        this.colorPackageHash = colorPackageHash
    }

    fun setFontPackageHash(font_package_hash: Int) = apply {
        this.fontPackageHash = font_package_hash
    fun setFontPackageHash(fontPackageHash: Int) = apply {
        this.fontPackageHash = fontPackageHash
    }

    fun setShapePackageHash(shape_package_hash: Int) = apply {
        this.shapePackageHash = shape_package_hash
    fun setShapePackageHash(shapePackageHash: Int) = apply {
        this.shapePackageHash = shapePackageHash
    }

    fun setClockPackageHash(clock_package_hash: Int) = apply {
        this.clockPackageHash = clock_package_hash
    fun setClockPackageHash(clockPackageHash: Int) = apply {
        this.clockPackageHash = clockPackageHash
    }

    fun setLauncherGrid(launcher_grid: Int) = apply { this.launcherGrid = launcher_grid }
    fun setLauncherGrid(launcherGrid: Int) = apply { this.launcherGrid = launcherGrid }

    fun setWallpaperCategoryHash(wallpaper_category_hash: Int) = apply {
        this.wallpaperCategoryHash = wallpaper_category_hash
    fun setWallpaperCategoryHash(wallpaperCategoryHash: Int) = apply {
        this.wallpaperCategoryHash = wallpaperCategoryHash
    }

    fun setWallpaperIdHash(wallpaper_id_hash: Int) = apply {
        this.wallpaperIdHash = wallpaper_id_hash
    fun setWallpaperIdHash(wallpaperIdHash: Int) = apply {
        this.wallpaperIdHash = wallpaperIdHash
    }

    fun setColorPreference(color_preference: Int) = apply {
        this.colorPreference = color_preference
    fun setColorPreference(colorPreference: Int) = apply {
        this.colorPreference = colorPreference
    }

    fun setLocationPreference(location_preference: Int) = apply {
        this.locationPreference = location_preference
    fun setLocationPreference(locationPreference: Int) = apply {
        this.locationPreference = locationPreference
    }

    fun setDatePreference(date_preference: Int) = apply { this.datePreference = date_preference }
    fun setDatePreference(datePreference: Int) = apply { this.datePreference = datePreference }

    fun setLaunchedPreference(launched_preference: Int) = apply {
        this.launchedPreference = launched_preference
    fun setLaunchedPreference(launchedPreference: Int) = apply {
        this.launchedPreference = launchedPreference
    }

    fun setEffectPreference(effect_preference: Int) = apply {
        this.effectPreference = effect_preference
    fun setEffectPreference(effectPreference: Int) = apply {
        this.effectPreference = effectPreference
    }

    fun setEffectIdHash(effect_id_hash: Int) = apply { this.effectIdHash = effect_id_hash }
    fun setEffectIdHash(effectIdHash: Int) = apply { this.effectIdHash = effectIdHash }

    fun setLockWallpaperCategoryHash(lock_wallpaper_category_hash: Int) = apply {
        this.lockWallpaperCategoryHash = lock_wallpaper_category_hash
    fun setLockWallpaperCategoryHash(lockWallpaperCategoryHash: Int) = apply {
        this.lockWallpaperCategoryHash = lockWallpaperCategoryHash
    }

    fun setLockWallpaperIdHash(lock_wallpaper_id_hash: Int) = apply {
        this.lockWallpaperIdHash = lock_wallpaper_id_hash
    fun setLockWallpaperIdHash(lockWallpaperIdHash: Int) = apply {
        this.lockWallpaperIdHash = lockWallpaperIdHash
    }

    fun setFirstLaunchDateSinceSetup(first_launch_date_since_setup: Int) = apply {
        this.firstLaunchDateSinceSetup = first_launch_date_since_setup
    fun setFirstLaunchDateSinceSetup(firstLaunchDateSinceSetup: Int) = apply {
        this.firstLaunchDateSinceSetup = firstLaunchDateSinceSetup
    }

    fun setFirstWallpaperApplyDateSinceSetup(first_wallpaper_apply_date_since_setup: Int) = apply {
        this.firstWallpaperApplyDateSinceSetup = first_wallpaper_apply_date_since_setup
    fun setFirstWallpaperApplyDateSinceSetup(firstWallpaperApplyDateSinceSetup: Int) = apply {
        this.firstWallpaperApplyDateSinceSetup = firstWallpaperApplyDateSinceSetup
    }

    fun setAppLaunchCount(app_launch_count: Int) = apply { this.appLaunchCount = app_launch_count }
    fun setAppLaunchCount(appLaunchCount: Int) = apply { this.appLaunchCount = appLaunchCount }

    fun setColorVariant(color_variant: Int) = apply { this.colorVariant = color_variant }
    fun setColorVariant(colorVariant: Int) = apply { this.colorVariant = colorVariant }

    fun setTimeElapsed(time_elapsed_millis: Long) = apply {
      this.timeElapsedMillis = time_elapsed_millis
    fun setTimeElapsed(timeElapsedMillis: Long) = apply {
      this.timeElapsedMillis = timeElapsedMillis
    }

    fun setEffectResultCode(effect_result_code: Int) = apply {
        this.effectResultCode = effect_result_code
    fun setEffectResultCode(effectResultCode: Int) = apply {
        this.effectResultCode = effectResultCode
    }

    fun log() {
        SysUiStatsLog.write(
            atom,
            STYLE_UI_CHANGED,
            action,
            colorPackageHash,
            fontPackageHash,