Extend MetricsFactory so it can log to different LogWriters

- Renamed MetricsFractory to MetricsFeatureProvider, and access it using
  FeatureFactory.
- Instead of containing exactly 1 logWriter, MetricsFeatureProvider now
  contain a list.
- Added OnAttach event in Lifecycle. This is needed when a mixin
  requires Context to initialize itself.
- Updated tests.

Bug: 29575437
Test: make RunSettingsRoboTests
Change-Id: I7cc1528b9a744cd40088701e2bd115f41a8bf744
This commit is contained in:
Fan Zhang
2016-09-14 15:04:07 -07:00
parent 9f15fe4fc1
commit 66a9852a7b
15 changed files with 261 additions and 58 deletions

View File

@@ -21,6 +21,7 @@ import android.text.TextUtils;
import android.util.Log;
import com.android.settings.R;
import com.android.settings.core.instrumentation.MetricsFeatureProvider;
import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
/**
@@ -62,6 +63,8 @@ public abstract class FeatureFactory {
public abstract SupportFeatureProvider getSupportFeatureProvider(Context context);
public abstract MetricsFeatureProvider getMetricsFeatureProvider();
public abstract PowerUsageFeatureProvider getPowerUsageFeatureProvider();
public static final class FactoryNotFoundException extends RuntimeException {