.class public Landroidx/webkit/internal/ProxyControllerImpl; .super Landroidx/webkit/ProxyController; .source "SourceFile" # instance fields .field private mBoundaryInterface:Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface; # direct methods .method public constructor ()V .locals 0 .line 33 invoke-direct {p0}, Landroidx/webkit/ProxyController;->()V return-void .end method .method private getBoundaryInterface()Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface; .locals 1 iget-object v0, p0, Landroidx/webkit/internal/ProxyControllerImpl;->mBoundaryInterface:Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface; if-nez v0, :cond_0 .line 87 invoke-static {}, Landroidx/webkit/internal/WebViewGlueCommunicator;->getFactory()Landroidx/webkit/internal/WebViewProviderFactory; move-result-object v0 invoke-interface {v0}, Landroidx/webkit/internal/WebViewProviderFactory;->getProxyController()Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface; move-result-object v0 iput-object v0, p0, Landroidx/webkit/internal/ProxyControllerImpl;->mBoundaryInterface:Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface; :cond_0 iget-object v0, p0, Landroidx/webkit/internal/ProxyControllerImpl;->mBoundaryInterface:Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface; return-object v0 .end method .method public static proxyRulesToStringArray(Ljava/util/List;)[[Ljava/lang/String; .locals 6 .param p0 # Ljava/util/List; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroidx/annotation/NonNull; .end annotation .annotation build Landroidx/annotation/VisibleForTesting; .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/List<", "Landroidx/webkit/ProxyConfig$ProxyRule;", ">;)[[", "Ljava/lang/String;" } .end annotation .line 77 invoke-interface {p0}, Ljava/util/List;->size()I move-result v0 const/4 v1, 0x2 filled-new-array {v0, v1}, [I move-result-object v0 const-class v1, Ljava/lang/String; invoke-static {v1, v0}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;[I)Ljava/lang/Object; move-result-object v0 check-cast v0, [[Ljava/lang/String; const/4 v1, 0x0 move v2, v1 .line 78 :goto_0 invoke-interface {p0}, Ljava/util/List;->size()I move-result v3 if-ge v2, v3, :cond_0 .line 79 aget-object v3, v0, v2 invoke-interface {p0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v4 check-cast v4, Landroidx/webkit/ProxyConfig$ProxyRule; invoke-virtual {v4}, Landroidx/webkit/ProxyConfig$ProxyRule;->getSchemeFilter()Ljava/lang/String; move-result-object v4 aput-object v4, v3, v1 .line 80 aget-object v3, v0, v2 invoke-interface {p0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v4 check-cast v4, Landroidx/webkit/ProxyConfig$ProxyRule; invoke-virtual {v4}, Landroidx/webkit/ProxyConfig$ProxyRule;->getUrl()Ljava/lang/String; move-result-object v4 const/4 v5, 0x1 aput-object v4, v3, v5 add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_0 return-object v0 .end method # virtual methods .method public clearProxyOverride(Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V .locals 1 .param p1 # Ljava/util/concurrent/Executor; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Ljava/lang/Runnable; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 63 sget-object v0, Landroidx/webkit/internal/WebViewFeatureInternal;->PROXY_OVERRIDE:Landroidx/webkit/internal/ApiFeature$NoFramework; .line 64 invoke-virtual {v0}, Landroidx/webkit/internal/ApiFeature;->isSupportedByWebView()Z move-result v0 if-eqz v0, :cond_0 .line 65 invoke-direct {p0}, Landroidx/webkit/internal/ProxyControllerImpl;->getBoundaryInterface()Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface; move-result-object v0 invoke-interface {v0, p2, p1}, Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface;->clearProxyOverride(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V return-void .line 67 :cond_0 invoke-static {}, Landroidx/webkit/internal/WebViewFeatureInternal;->getUnsupportedOperationException()Ljava/lang/UnsupportedOperationException; move-result-object p1 throw p1 .end method .method public setProxyOverride(Landroidx/webkit/ProxyConfig;Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V .locals 9 .param p1 # Landroidx/webkit/ProxyConfig; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Ljava/util/concurrent/Executor; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p3 # Ljava/lang/Runnable; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 39 sget-object v0, Landroidx/webkit/internal/WebViewFeatureInternal;->PROXY_OVERRIDE:Landroidx/webkit/internal/ApiFeature$NoFramework; .line 40 sget-object v1, Landroidx/webkit/internal/WebViewFeatureInternal;->PROXY_OVERRIDE_REVERSE_BYPASS:Landroidx/webkit/internal/ApiFeature$NoFramework; .line 43 invoke-virtual {p1}, Landroidx/webkit/ProxyConfig;->getProxyRules()Ljava/util/List; move-result-object v2 invoke-static {v2}, Landroidx/webkit/internal/ProxyControllerImpl;->proxyRulesToStringArray(Ljava/util/List;)[[Ljava/lang/String; move-result-object v4 .line 44 invoke-virtual {p1}, Landroidx/webkit/ProxyConfig;->getBypassRules()Ljava/util/List; move-result-object v2 const/4 v3, 0x0 new-array v3, v3, [Ljava/lang/String; invoke-interface {v2, v3}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; move-result-object v2 move-object v5, v2 check-cast v5, [Ljava/lang/String; .line 46 invoke-virtual {v0}, Landroidx/webkit/internal/ApiFeature;->isSupportedByWebView()Z move-result v2 if-eqz v2, :cond_0 invoke-virtual {p1}, Landroidx/webkit/ProxyConfig;->isReverseBypassEnabled()Z move-result v2 if-nez v2, :cond_0 .line 47 invoke-direct {p0}, Landroidx/webkit/internal/ProxyControllerImpl;->getBoundaryInterface()Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface; move-result-object p1 invoke-interface {p1, v4, v5, p3, p2}, Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface;->setProxyOverride([[Ljava/lang/String;[Ljava/lang/String;Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V goto :goto_0 .line 49 :cond_0 invoke-virtual {v0}, Landroidx/webkit/internal/ApiFeature;->isSupportedByWebView()Z move-result v0 if-eqz v0, :cond_1 invoke-virtual {v1}, Landroidx/webkit/internal/ApiFeature;->isSupportedByWebView()Z move-result v0 if-eqz v0, :cond_1 .line 50 invoke-direct {p0}, Landroidx/webkit/internal/ProxyControllerImpl;->getBoundaryInterface()Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface; move-result-object v3 .line 55 invoke-virtual {p1}, Landroidx/webkit/ProxyConfig;->isReverseBypassEnabled()Z move-result v8 move-object v6, p3 move-object v7, p2 .line 50 invoke-interface/range {v3 .. v8}, Lorg/chromium/support_lib_boundary/ProxyControllerBoundaryInterface;->setProxyOverride([[Ljava/lang/String;[Ljava/lang/String;Ljava/lang/Runnable;Ljava/util/concurrent/Executor;Z)V :goto_0 return-void .line 57 :cond_1 invoke-static {}, Landroidx/webkit/internal/WebViewFeatureInternal;->getUnsupportedOperationException()Ljava/lang/UnsupportedOperationException; move-result-object p1 throw p1 .end method