Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: adblock-android/src/org/adblockplus/libadblockplus/android/AdblockEngine.java

Issue 29908555: Issue 7035 - Update libadblockplus dependency (Closed) Base URL: git@github.com:adblockplus/libadblockplus-android.git@d150f08d5d72de8938c7ebbdccd9b0c4e06b4070
Patch Set: Issue 7035 - Update libadblockplus dependency Created Oct. 15, 2018, 12:48 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « adblock-android/src/org/adblockplus/libadblockplus/Platform.java ('k') | dependencies » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: adblock-android/src/org/adblockplus/libadblockplus/android/AdblockEngine.java
diff --git a/adblock-android/src/org/adblockplus/libadblockplus/android/AdblockEngine.java b/adblock-android/src/org/adblockplus/libadblockplus/android/AdblockEngine.java
index 8cf6ab829fd3c032965aab4fe0e9792be8ece934..94198f33816dbc600051604113a41f9a69f50b41 100644
--- a/adblock-android/src/org/adblockplus/libadblockplus/android/AdblockEngine.java
+++ b/adblock-android/src/org/adblockplus/libadblockplus/android/AdblockEngine.java
@@ -39,6 +39,7 @@ import org.adblockplus.libadblockplus.ShowNotificationCallback;
import org.adblockplus.libadblockplus.Subscription;
import org.adblockplus.libadblockplus.UpdateAvailableCallback;
import org.adblockplus.libadblockplus.UpdateCheckDoneCallback;
+import org.adblockplus.libadblockplus.Updater;
import org.adblockplus.libadblockplus.WebRequest;
import android.content.Context;
@@ -67,6 +68,7 @@ public final class AdblockEngine
*/
private volatile Platform platform;
private volatile FilterEngine filterEngine;
+ private volatile Updater updater;
private volatile LogSystem logSystem;
private volatile WebRequest webRequest;
private volatile UpdateAvailableCallback updateAvailableCallback;
@@ -230,9 +232,9 @@ public final class AdblockEngine
private void initCallbacks()
{
- if (engine.updateAvailableCallback != null)
+ if (engine.updater != null && engine.updateAvailableCallback != null)
{
- engine.filterEngine.setUpdateAvailableCallback(engine.updateAvailableCallback);
+ engine.updater.setUpdateAvailableCallback(engine.updateAvailableCallback);
}
if (engine.showNotificationCallback != null)
@@ -247,11 +249,21 @@ public final class AdblockEngine
}
public AdblockEngine build()
+ {
+ return build(false);
+ }
+
+ public AdblockEngine buildWithUpdateCheck()
+ {
+ return build(true);
+ }
+
+ private AdblockEngine build(boolean updateCheckEnabled)
{
initRequests();
// webRequest should be ready to be used passed right after JsEngine is created
- createEngines();
+ createEngines(updateCheckEnabled);
initCallbacks();
@@ -263,7 +275,7 @@ public final class AdblockEngine
return engine;
}
- private void createEngines()
+ private void createEngines(boolean updateCheckEnabled)
{
engine.logSystem = new AndroidLogSystem();
engine.platform = new Platform(engine.logSystem, engine.webRequest, basePath);
@@ -277,6 +289,10 @@ public final class AdblockEngine
}
engine.platform.setUpFilterEngine(isAllowedConnectionCallback);
engine.filterEngine = engine.platform.getFilterEngine();
+ if (updateCheckEnabled)
+ {
+ engine.updater = engine.platform.getUpdater();
+ }
}
}
@@ -289,14 +305,17 @@ public final class AdblockEngine
{
Log.w(TAG, "Dispose");
- // engines first
- if (this.filterEngine != null)
+ if (this.updater != null)
{
if (this.updateAvailableCallback != null)
{
- this.filterEngine.removeUpdateAvailableCallback();
+ this.updater.removeUpdateAvailableCallback();
}
+ }
+ // engines first
+ if (this.filterEngine != null)
+ {
if (this.filterChangeCallback != null)
{
this.filterEngine.removeFilterChangeCallback();
@@ -318,6 +337,12 @@ public final class AdblockEngine
this.updateAvailableCallback = null;
}
+ if (this.updateCheckDoneCallback != null)
+ {
+ this.updateCheckDoneCallback.dispose();
+ this.updateCheckDoneCallback = null;
+ }
+
if (this.filterChangeCallback != null)
{
this.filterChangeCallback.dispose();
@@ -628,7 +653,8 @@ public final class AdblockEngine
public void checkForUpdates()
{
- this.filterEngine.forceUpdateCheck(this.updateCheckDoneCallback);
+ if (updater == null) throw new IllegalStateException();
+ this.updater.forceUpdateCheck(this.updateCheckDoneCallback);
}
public FilterEngine getFilterEngine()
« no previous file with comments | « adblock-android/src/org/adblockplus/libadblockplus/Platform.java ('k') | dependencies » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld