package com.jdroid.android.application;
import android.content.Context;
import android.content.res.Configuration;
import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import com.jdroid.android.activity.AbstractFragmentActivity;
import com.jdroid.android.activity.ActivityDelegate;
import com.jdroid.android.analytics.AnalyticsTracker;
import com.jdroid.android.debug.PreferencesAppender;
import com.jdroid.android.firebase.remoteconfig.RemoteConfigParameter;
import com.jdroid.android.fragment.FragmentDelegate;
import com.jdroid.java.analytics.BaseAnalyticsSender;
import com.jdroid.java.analytics.BaseAnalyticsTracker;
import com.jdroid.java.collections.Lists;
import java.util.List;
import io.fabric.sdk.android.Kit;
public abstract class AbstractAppModule implements AppModule {
private BaseAnalyticsSender<? extends BaseAnalyticsTracker> analyticsSender;
@Override
public void onCreate() {
analyticsSender = createModuleAnalyticsSender(createModuleAnalyticsTrackers());
}
@NonNull
@Override
public BaseAnalyticsSender<? extends BaseAnalyticsTracker> createModuleAnalyticsSender(List<? extends BaseAnalyticsTracker> analyticsTrackers) {
return new BaseAnalyticsSender<>(analyticsTrackers);
}
@Override
public List<? extends BaseAnalyticsTracker> createModuleAnalyticsTrackers() {
return Lists.newArrayList();
}
@Override
public BaseAnalyticsSender<? extends BaseAnalyticsTracker> getAnalyticsSender() {
return analyticsSender;
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
// Do Nothing
}
@Override
public void onLowMemory() {
// Do Nothing
}
@Override
public void onTrimMemory(int level) {
// Do Nothing
}
@Override
public void attachBaseContext(Context base) {
// Do Nothing
}
@Override
public void onInstanceIdTokenRefresh() {
// Do Nothing
}
@Override
public void onGooglePlayServicesUpdated() {
// Do Nothing
}
@Override
public List<? extends AnalyticsTracker> getAnalyticsTrackers() {
return Lists.newArrayList();
}
@Override
public List<Kit> getFabricKits() {
return Lists.newArrayList();
}
public List<PreferencesAppender> getPreferencesAppenders() {
return Lists.newArrayList();
}
@Override
public void onInitializeGcmTasks() {
// Do Nothing
}
@Override
public ActivityDelegate createActivityDelegate(AbstractFragmentActivity abstractFragmentActivity) {
return null;
}
@Override
public FragmentDelegate createFragmentDelegate(Fragment fragment) {
return null;
}
@Override
public List<RemoteConfigParameter> getRemoteConfigParameters() {
return null;
}
}