use of com.onesignal.outcomes.data.OSOutcomeEventsFactory in project OneSignal-Android-SDK by OneSignal.
the class OneSignal method setupContextListeners.
private static void setupContextListeners(boolean wasAppContextNull) {
// Register the lifecycle listener of the app for state changes in activities with proper context
ActivityLifecycleListener.registerActivityLifecycleCallbacks((Application) appContext);
// Do work here that should only happen once or at the start of a new lifecycle
if (wasAppContextNull) {
// Set Language Context to null
languageContext = new LanguageContext(preferences);
// Prefs require a context to save
// If the previous state of appContext was null, kick off write in-case it was waiting
OneSignalPrefs.startDelayedWrite();
OneSignalDbHelper dbHelper = getDBHelperInstance();
notificationDataController = new OSNotificationDataController(dbHelper, logger);
// Cleans out old cached data to prevent over using the storage on devices
notificationDataController.cleanOldCachedData();
getInAppMessageController().cleanCachedInAppMessages();
if (outcomeEventsFactory == null)
outcomeEventsFactory = new OSOutcomeEventsFactory(logger, apiClient, dbHelper, preferences);
sessionManager.initSessionFromCache();
outcomeEventsController = new OSOutcomeEventsController(sessionManager, outcomeEventsFactory);
outcomeEventsController.cleanCachedUniqueOutcomes();
}
}
use of com.onesignal.outcomes.data.OSOutcomeEventsFactory in project OneSignal-Android-SDK by OneSignal.
the class OutcomeEventV2UnitTests method beforeEachTest.
// Before each test
@Before
public void beforeEachTest() throws Exception {
outcomeEvents = null;
dbHelper = new MockOneSignalDBHelper(ApplicationProvider.getApplicationContext());
// Mock on a custom HashMap in order to not use custom context
preferences = new MockOSSharedPreferences();
// Save v2 flag
String v2Name = preferences.getOutcomesV2KeyName();
preferences.saveBool(preferences.getPreferencesName(), v2Name, true);
MockOSTimeImpl time = new MockOSTimeImpl();
trackerFactory = new OSTrackerFactory(preferences, logWrapper, time);
sessionManager = new MockSessionManager(sessionListener, trackerFactory, logWrapper);
service = new MockOneSignalAPIClient();
OSOutcomeEventsFactory factory = new OSOutcomeEventsFactory(logWrapper, service, dbHelper, preferences);
controller = new MockOutcomeEventsController(sessionManager, factory);
TestHelpers.beforeTestInitAndCleanup();
repository = factory.getRepository();
trackerFactory.saveInfluenceParams(new OneSignalPackagePrivateHelper.RemoteOutcomeParams());
OneSignal.setAppId(APP_ID);
}
use of com.onesignal.outcomes.data.OSOutcomeEventsFactory in project OneSignal-Android-SDK by OneSignal.
the class OutcomeEventUnitTests method beforeEachTest.
// Before each test
@Before
public void beforeEachTest() throws Exception {
outcomeEvents = null;
MockOSTimeImpl time = new MockOSTimeImpl();
dbHelper = new MockOneSignalDBHelper(ApplicationProvider.getApplicationContext());
// Mock on a custom HashMap in order to not use custom context
preferences = new MockOSSharedPreferences();
trackerFactory = new OSTrackerFactory(preferences, logWrapper, time);
sessionManager = new MockSessionManager(sessionListener, trackerFactory, logWrapper);
service = new MockOneSignalAPIClient();
OSOutcomeEventsFactory factory = new OSOutcomeEventsFactory(logWrapper, service, dbHelper, preferences);
controller = new MockOutcomeEventsController(sessionManager, factory);
TestHelpers.beforeTestInitAndCleanup();
repository = factory.getRepository();
trackerFactory.saveInfluenceParams(new OneSignalPackagePrivateHelper.RemoteOutcomeParams());
OneSignal.setAppId(APP_ID);
}
Aggregations