.class public Landroidx/webkit/internal/JavaScriptReplyProxyImpl; .super Landroidx/webkit/JavaScriptReplyProxy; .source "SourceFile" # instance fields .field private mBoundaryInterface:Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface; # direct methods .method public constructor (Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface;)V .locals 0 .param p1 # Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 35 invoke-direct {p0}, Landroidx/webkit/JavaScriptReplyProxy;->()V iput-object p1, p0, Landroidx/webkit/internal/JavaScriptReplyProxyImpl;->mBoundaryInterface:Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface; return-void .end method .method public static forInvocationHandler(Ljava/lang/reflect/InvocationHandler;)Landroidx/webkit/internal/JavaScriptReplyProxyImpl; .locals 1 .param p0 # Ljava/lang/reflect/InvocationHandler; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroidx/annotation/NonNull; .end annotation const-class v0, Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface; .line 46 invoke-static {v0, p0}, Lorg/chromium/support_lib_boundary/util/BoundaryInterfaceReflectionUtil;->castToSuppLibClass(Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object; move-result-object p0 check-cast p0, Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface; .line 48 new-instance v0, Landroidx/webkit/internal/JavaScriptReplyProxyImpl$1; invoke-direct {v0, p0}, Landroidx/webkit/internal/JavaScriptReplyProxyImpl$1;->(Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface;)V invoke-interface {p0, v0}, Lorg/chromium/support_lib_boundary/IsomorphicObjectBoundaryInterface;->getOrCreatePeer(Ljava/util/concurrent/Callable;)Ljava/lang/Object; move-result-object p0 check-cast p0, Landroidx/webkit/internal/JavaScriptReplyProxyImpl; return-object p0 .end method # virtual methods .method public postMessage(Ljava/lang/String;)V .locals 1 .param p1 # Ljava/lang/String; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 59 sget-object v0, Landroidx/webkit/internal/WebViewFeatureInternal;->WEB_MESSAGE_LISTENER:Landroidx/webkit/internal/ApiFeature$NoFramework; .line 60 invoke-virtual {v0}, Landroidx/webkit/internal/ApiFeature;->isSupportedByWebView()Z move-result v0 if-eqz v0, :cond_0 iget-object v0, p0, Landroidx/webkit/internal/JavaScriptReplyProxyImpl;->mBoundaryInterface:Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface; .line 61 invoke-interface {v0, p1}, Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface;->postMessage(Ljava/lang/String;)V return-void .line 63 :cond_0 invoke-static {}, Landroidx/webkit/internal/WebViewFeatureInternal;->getUnsupportedOperationException()Ljava/lang/UnsupportedOperationException; move-result-object p1 throw p1 .end method .method public postMessage([B)V .locals 2 .param p1 # [B .annotation build Landroidx/annotation/NonNull; .end annotation .end param const-string v0, "ArrayBuffer must be non-null" .line 70 invoke-static {p1, v0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 71 sget-object v0, Landroidx/webkit/internal/WebViewFeatureInternal;->WEB_MESSAGE_ARRAY_BUFFER:Landroidx/webkit/internal/ApiFeature$NoFramework; .line 72 invoke-virtual {v0}, Landroidx/webkit/internal/ApiFeature;->isSupportedByWebView()Z move-result v0 if-eqz v0, :cond_0 iget-object v0, p0, Landroidx/webkit/internal/JavaScriptReplyProxyImpl;->mBoundaryInterface:Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface; .line 73 new-instance v1, Landroidx/webkit/internal/WebMessagePayloadAdapter; invoke-direct {v1, p1}, Landroidx/webkit/internal/WebMessagePayloadAdapter;->([B)V .line 74 invoke-static {v1}, Lorg/chromium/support_lib_boundary/util/BoundaryInterfaceReflectionUtil;->createInvocationHandlerFor(Ljava/lang/Object;)Ljava/lang/reflect/InvocationHandler; move-result-object p1 .line 73 invoke-interface {v0, p1}, Lorg/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface;->postMessageWithPayload(Ljava/lang/reflect/InvocationHandler;)V return-void .line 76 :cond_0 invoke-static {}, Landroidx/webkit/internal/WebViewFeatureInternal;->getUnsupportedOperationException()Ljava/lang/UnsupportedOperationException; move-result-object p1 throw p1 .end method